Неотрицательный метод наименьших квадратов - Non-negative least squares
Часть серии по |
Регрессивный анализ |
---|
Модели |
Оценка |
Фон |
|
В математическая оптимизация, проблема неотрицательные наименьшие квадраты (NNLS) является разновидностью метод наименьших квадратов с ограничениями проблема, при которой коэффициенты не могут становиться отрицательными. То есть, учитывая матрицу А и (столбец) вектор переменные ответа у, цель - найти[1]
- при условии Икс ≥ 0.
Здесь Икс ≥ 0 означает, что каждая компонента вектора Икс должен быть неотрицательным, и ‖·‖₂ обозначает Евклидова норма.
Неотрицательные задачи наименьших квадратов появляются как подзадачи в матричное разложение, например в алгоритмах для ПАРАФАК[2] и неотрицательная матрица / тензорная факторизация.[3][4] Последний можно рассматривать как обобщение NNLS.[1]
Еще одно обобщение NNLS: метод наименьших квадратов с ограниченными переменными (BVLS), с одновременной оценкой сверху и снизу αᵢ ≤ Иксᵢ ≤ βᵢ.[5]:291[6]
Версия квадратичного программирования
Проблема NNLS эквивалентна квадратичное программирование проблема
куда Q = АᵀА и c = −Аᵀ у. Эта проблема выпуклый, так как Q является положительно полуопределенный а ограничения неотрицательности образуют выпуклое допустимое множество.[7]
Алгоритмы
Первым широко используемым алгоритмом решения этой проблемы является метод активного набора опубликовано Лоусоном и Хэнсоном в их книге 1974 г. Решение задач наименьших квадратов.[5]:291 В псевдокод, этот алгоритм выглядит следующим образом:[1][2]
- Входы:
- вещественная матрица А измерения м × п,
- вектор с действительным знаком у измерения м,
- реальная ценность ε, допуск по критерию остановки.
- Инициализировать:
- Набор п = ∅.
- Набор р = {1, ..., п}.
- Набор Икс к полностью нулевому вектору размерности п.
- Набор ш = Аᵀ (у − АИкс).
- Позволять шр обозначим субвектор с индексами из р
- Основной цикл: пока р ≠ ∅ и Максимум(шр)> ε:
- Позволять j в р быть индексом Максимум(шр) в ш.
- Добавлять j к п.
- Удалять j из р.
- Позволять Ап быть А ограничено переменными, включенными в п.
- Позволять s быть вектором той же длины, что и Икс. Позволять sп обозначим субвектор с индексами из п, и разреши sр обозначим субвектор с индексами из р.
- Набор sп = ((Ап) ᵀ Ап)−1 (Ап) ᵀу
- Набор sр к нулю
- Пока мин (sп) ≤ 0:
- Позволять α = минИкся/Икся − sя за я в п куда sя ≤ 0.
- Набор Икс к Икс + α(s − Икс).
- Перейти к р все индексы j в п такой, что Иксj ≤ 0.
- Набор sп = ((Ап) ᵀ Ап)−1 (Ап) ᵀу
- Набор sр до нуля.
- Набор Икс к s.
- Набор ш к Аᵀ (у − АИкс).
- Выход: Икс
Этот алгоритм требует конечного числа шагов для достижения решения и плавно улучшает его возможное решение по мере продвижения (так что он может находить хорошие приближенные решения при отсечении разумного числа итераций), но на практике он очень медленный, в основном из-за вычисление псевдообратный ((Аᴾ) ᵀ Аᴾ) ⁻¹.[1] Варианты этого алгоритма доступны в MATLAB как рутина lsqnonneg[1] И в SciPy в качестве optimize.nnls.[8]
С 1974 года было предложено много улучшенных алгоритмов.[1] Fast NNLS (FNNLS) - это оптимизированная версия алгоритма Лоусона-Хэнсона.[2] Другие алгоритмы включают варианты Ландвебер с градиентный спуск метод[9] и покоординатная оптимизация на основе приведенной выше задачи квадратичного программирования.[7]
Смотрите также
Рекомендации
- ^ а б c d е ж Чен, Дунхуэй; Племмонс, Роберт Дж. (2009). Ограничения неотрицательности в численном анализе. Симпозиум по рождению численного анализа. CiteSeerX 10.1.1.157.9203.
- ^ а б c Бро, Расмус; Де Йонг, Сиджмен (1997). «Быстрый алгоритм наименьших квадратов с ограничением неотрицательности». Журнал хемометрики. 11 (5): 393. Дои:10.1002 / (SICI) 1099-128X (199709/10) 11: 5 <393 :: AID-CEM483> 3.0.CO; 2-L.
- ^ Лин, Чи-Джен (2007). «Спроектированные градиентные методы для неотрицательной матричной факторизации» (PDF). Нейронные вычисления. 19 (10): 2756–2779. CiteSeerX 10.1.1.308.9135. Дои:10.1162 / neco.2007.19.10.2756. PMID 17716011.
- ^ Буцидис, Христос; Дриней, Петрос (2009). «Случайные проекции для неотрицательной задачи наименьших квадратов». Линейная алгебра и ее приложения. 431 (5–7): 760–771. arXiv:0812.4547. Дои:10.1016 / j.laa.2009.03.026.
- ^ а б Лоусон, Чарльз Л .; Хэнсон, Ричард Дж. (1995). Решение задач наименьших квадратов. СИАМ.
- ^ Старк, Филип Б.; Паркер, Роберт Л. (1995). «Метод наименьших квадратов с ограниченными переменными: алгоритм и приложения» (PDF). Вычислительная статистика. 10: 129.
- ^ а б Франк, Войтех; Главач, Вацлав; Навара, Мирко (2005). Последовательный координатно-мудрый алгоритм для задачи неотрицательных наименьших квадратов. Компьютерный анализ изображений и паттернов. Конспект лекций по информатике. 3691. С. 407–414. Дои:10.1007/11556121_50. ISBN 978-3-540-28969-2.
- ^ "scipy.optimize.nnls". Справочное руководство SciPy v0.13.0. Получено 25 января 2014.
- ^ Johansson, B.R .; Эльфвинг, Т .; Козлов, В .; Цензор Ю.А. Форссен, П. Э .; Гранлунд, Г. С. (2006). «Применение метода Ландвебера с наклонной проекцией к модели обучения с учителем». Математическое и компьютерное моделирование. 43 (7–8): 892. Дои:10.1016 / j.mcm.2005.12.010.