Алгоритм Левенберга – Марквардта
В математике и вычислительной технике алгоритм Левенберга-Марквардта ( LMA или просто LM ), также известный как метод демпфированных наименьших квадратов ( DLS ), используется для решения нелинейных задач наименьших квадратов. Эти проблемы минимизации особенно возникают при наименьших квадратов аппроксимации кривой . LMA интерполирует между алгоритмом Гаусса-Ньютона (GNA) и методом градиентного спуска . LMA более надежен , чем GNA, а это означает, что во многих случаях он находит решение, даже если оно начинается очень далеко от окончательного минимума. Для функций с хорошим поведением и разумными начальными параметрами LMA имеет тенденцию работать медленнее, чем GNA. LMA также можно рассматривать как Гаусса – Ньютона, используя подход доверительной области .
Алгоритм был впервые опубликован в 1944 году Кеннетом Левенбергом . [ 1 ] во время работы во Франкфордском армейском арсенале . Он был вновь открыт в 1963 году Дональдом Марквардтом . [ 2 ] который работал статистиком в DuPont и независимо от Жирара, [ 3 ] Винн [ 4 ] и Моррисон. [ 5 ]
LMA используется во многих программных приложениях для решения общих задач аппроксимации кривой. Используя алгоритм Гаусса – Ньютона, он часто сходится быстрее, чем методы первого порядка. [ 6 ] Однако, как и другие алгоритмы итеративной оптимизации, LMA находит только локальный минимум , который не обязательно является глобальным минимумом .
Проблема
[ редактировать ]Основное применение алгоритма Левенберга – Марквардта находится в задаче подбора кривой методом наименьших квадратов: с учетом набора эмпирические пары независимых и зависимых переменных, найдите параметры модельной кривой так что сумма квадратов отклонений сведен к минимуму:
- которое предполагается непустым.
Решение
[ редактировать ]Как и другие алгоритмы числовой минимизации, алгоритм Левенберга – Марквардта представляет собой итерационную процедуру. Чтобы начать минимизацию, пользователь должен предоставить начальное предположение для вектора параметров . В случаях только с одним минимумом неосведомленное стандартное предположение, например будет работать нормально; в случаях с несколькими минимумами алгоритм сходится к глобальному минимуму только в том случае, если начальное предположение уже несколько близко к окончательному решению.
На каждой итерации вектор параметров заменяется новой оценкой . Чтобы определить , функция аппроксимируется его линеаризацией :
где
- градиент (в данном случае вектор-строка) относительно .
Сумма квадратных отклонений имеет минимум при нулевом градиенте относительно . Приведенное выше приближение первого порядка дает
или в векторной записи,
Взяв производную этого приближения относительно и установка результата равным нулю дает
где — матрица Якобиана , которой -я строка равна , и где и являются векторами с -й компонент и соответственно. Вышеприведенное выражение, полученное для подпадает под метод Гаусса – Ньютона. Матрица Якоби, как она определена выше, является (вообще) не квадратной матрицей, а прямоугольной матрицей размера , где — количество параметров (размер вектора ). Матричное умножение дает необходимое квадратная матрица, а произведение матрицы на вектор в правой части дает вектор размера . В результате получается набор линейные уравнения, которые можно решить относительно .
Вклад Левенберга заключается в замене этого уравнения «затухающей версией»:
где — единичная матрица, дающая в качестве приращения к вектору оцениваемых параметров .
(Неотрицательный) коэффициент демпфирования корректируется на каждой итерации. Если сокращение быстрый, можно использовать меньшее значение, приближая алгоритм к алгоритму Гаусса – Ньютона , тогда как, если итерация дает недостаточное уменьшение остатка, можно увеличить, что сделает шаг ближе к направлению градиентного спуска. что градиент Обратите внимание , относительно равно . Следовательно, для больших значений , шаг будет сделан примерно в сторону, противоположную уклону. Если либо длина расчетного шага или уменьшение суммы квадратов из последнего вектора параметров падает ниже заранее определенных пределов, итерация останавливается и последний вектор параметров считается решением.
Когда коэффициент демпфирования велик по сравнению с , инвертирование в этом нет необходимости, так как обновление хорошо аппроксимируется небольшим шагом градиента .
Чтобы сделать масштаб решения инвариантным, алгоритм Марквардта решил модифицированную задачу, в которой каждый компонент градиента масштабировался в соответствии с кривизной. Это обеспечивает большее перемещение в направлениях, где градиент меньше, что позволяет избежать медленного сближения в направлении малого градиента. Флетчер в своей статье 1971 года «Модифицированная подпрограмма Марквардта для нелинейного метода наименьших квадратов» упростила форму, заменив единичную матрицу с диагональной матрицей, состоящей из диагональных элементов :
Подобный коэффициент демпфирования появляется в регуляризации Тихонова , которая используется для решения линейных некорректных задач , а также в гребневой регрессии — методе оценки в статистике .
Выбор параметра демпфирования
[ редактировать ]В пользу лучшего выбора параметра демпфирования были выдвинуты различные более или менее эвристические аргументы . . Существуют теоретические аргументы, показывающие, почему некоторые из этих вариантов гарантируют локальную сходимость алгоритма; однако этот выбор может привести к тому, что глобальная сходимость алгоритма пострадает из-за нежелательных свойств наискорейшего спуска , в частности, очень медленной сходимости, близкой к оптимальной.
Абсолютные значения любого выбора зависят от того, насколько хорошо масштабирована исходная проблема. Марквардт рекомендовал начинать со значения . и фактор . Начальная настройка и вычисляем остаточную сумму квадратов после одного шага от начальной точки с коэффициентом затухания и во-вторых с . Если оба из них хуже начальной точки, то демпфирование увеличивается путем последовательного умножения на . до тех пор, пока не будет найдена лучшая точка с новым коэффициентом демпфирования для некоторых .
Если использовать коэффициент демпфирования приводит к уменьшению квадрата остатка, тогда это принимается как новое значение (а новым оптимальным положением считается полученное с этим коэффициентом затухания) и процесс продолжается; если использовать привел к худшему остатку, но использование привел к лучшему остатку, тогда остается неизменным, а новый оптимум принимается как значение, полученное с помощью как коэффициент демпфирования.
Эффективная стратегия контроля параметра демпфирования, называемая отложенным удовлетворением , состоит в небольшом увеличении параметра на каждом этапе подъема и значительном уменьшении на каждом этапе спуска. Идея этой стратегии состоит в том, чтобы избежать слишком быстрого движения вниз в начале оптимизации, что ограничивает количество шагов, доступных в будущих итерациях, и, следовательно, замедляет сходимость. [ 7 ] Увеличение в 2 раза и уменьшение в 3 раза оказалось эффективным в большинстве случаев, тогда как для больших задач лучше могут работать более крайние значения, с увеличением в 1,5 раза и уменьшением в 1,5 раза. из 5. [ 8 ]
Геодезическое ускорение
[ редактировать ]При интерпретации шага Левенберга–Марквардта как скорости вдоль геодезического пути в пространстве параметров можно улучшить метод, добавив член второго порядка, учитывающий ускорение по геодезической
где это решение
Поскольку этот член геодезического ускорения зависит только от производной по направлению по направлению скорости , он не требует вычисления полной матрицы производных второго порядка, требуя лишь небольших накладных расходов с точки зрения вычислительных затрат. [ 9 ] Поскольку производная второго порядка может быть довольно сложным выражением, может быть удобно заменить ее конечно-разностной аппроксимацией
где и уже вычислены алгоритмом, поэтому для вычисления требуется только одна дополнительная оценка функции . Выбор конечно-разностного шага может повлиять на стабильность алгоритма, и значение около 0,1 обычно является разумным. [ 8 ]
Поскольку ускорение может указывать в направлении, противоположном скорости, чтобы предотвратить остановку метода в случае, если демпфирование слишком мало, добавляется дополнительный критерий ускорения, чтобы принять шаг, требующий, чтобы
где обычно фиксируется на значении меньше 1, с меньшими значениями для более сложных задач. [ 8 ]
Добавление члена геодезического ускорения может позволить значительно увеличить скорость сходимости, и это особенно полезно, когда алгоритм движется через узкие каньоны в ландшафте целевой функции, где разрешенные шаги меньше, а точность выше благодаря второму порядку. срок дает значительные улучшения. [ 8 ]
Пример
[ редактировать ]


В этом примере мы пытаемся подогнать функцию с использованием алгоритма Левенберга-Марквардта, реализованного в GNU Octave как функция leasqr . Графики показывают постепенное улучшение соответствия параметрам. , использовал в исходной кривой. Только когда параметры на последнем графике выбраны наиболее близкими к исходным, кривые совпадают точно. Это уравнение является примером очень чувствительных начальных условий для алгоритма Левенберга – Марквардта. Одной из причин такой чувствительности является существование нескольких минимумов — функция имеет минимумы при значении параметра и .
См. также
[ редактировать ]- Доверительный регион
- Метод Нелдера-Мида
- Варианты алгоритма Левенберга – Марквардта также использовались для решения нелинейных систем уравнений. [ 10 ]
Ссылки
[ редактировать ]- ^ Левенберг, Кеннет (1944). «Метод решения некоторых нелинейных задач по наименьшим квадратам» . Ежеквартальный журнал прикладной математики . 2 (2): 164–168. дои : 10.1090/qam/10666 .
- ^ Марквардт, Дональд (1963). «Алгоритм оценки нелинейных параметров методом наименьших квадратов». SIAM Journal по прикладной математике . 11 (2): 431–441. дои : 10.1137/0111030 . hdl : 10338.dmlcz/104299 .
- ^ Жирар, Андре (1958). «Отрывок из Revue d’optique Theoretique et Instrumental ». Преподобный. Опц . 37 : 225–241, 397–424.
- ^ Винн, CG (1959). «Проектирование линз с помощью электронного цифрового компьютера: I». Учеб. Физ. Соц. Лонд . 73 (5): 777–787. Бибкод : 1959PPS....73..777W . дои : 10.1088/0370-1328/73/5/310 .
- ^ Моррисон, Дэвид Д. (1960). «Методы решения нелинейных задач наименьших квадратов и доказательства сходимости». Труды семинара Лаборатории реактивного движения по программам слежения и определению орбиты : 1–9.
- ^ Вильямовский, Богдан; Ю, Хао (июнь 2010 г.). «Улучшенные вычисления для обучения Левенберга – Марквардта» (PDF) . Транзакции IEEE в нейронных сетях и системах обучения . 21 (6).
- ^ Транструм, Марк К; Махта, Бенджамин Б; Сетна, Джеймс П. (2011). «Геометрия нелинейных наименьших квадратов с приложениями к небрежным моделям и оптимизации». Физический обзор E . 83 (3). APS: 036701. arXiv : 1010.1449 . Бибкод : 2011PhRvE..83c6701T . дои : 10.1103/PhysRevE.83.036701 . ПМИД 21517619 . S2CID 15361707 .
- ^ Jump up to: а б с д Транструм, Марк К; Сетна, Джеймс П. (2012). «Усовершенствования алгоритма Левенберга-Марквардта для нелинейной минимизации методом наименьших квадратов». arXiv : 1201.5885 [ physical.data-an ].
- ^ «Нелинейная аппроксимация методом наименьших квадратов» . Научная библиотека ГНУ. Архивировано из оригинала 14 апреля 2020 г.
- ^ Канзов, Кристиан; Ямасита, Нобуо; Фукусима, Масао (2004). «Методы Левенберга – Марквардта с сильными свойствами локальной сходимости для решения нелинейных уравнений с выпуклыми ограничениями» . Журнал вычислительной и прикладной математики . 172 (2): 375–397. Бибкод : 2004JCoAM.172..375K . дои : 10.1016/j.cam.2004.02.013 .
Дальнейшее чтение
[ редактировать ]- Море, Хорхе Дж.; Соренсен, Дэниел К. (1983). «Вычисление шага доверительной области» (PDF) . СИАМ J. Sci. Стат. Вычислить . 4 (3): 553–572. дои : 10.1137/0904038 .
- Гилл, Филип Э.; Мюррей, Уолтер (1978). «Алгоритмы решения нелинейной задачи наименьших квадратов». SIAM Journal по численному анализу . 15 (5): 977–992. Бибкод : 1978SJNA...15..977G . дои : 10.1137/0715063 .
- Пухоль, Хосе (2007). «Решение нелинейных обратных задач и метод Левенберга-Марквардта». Геофизика . 72 (4). СЭГ: W1–W16. Бибкод : 2007Geop...72W...1P . дои : 10.1190/1.2732552 .
- Носедаль, Хорхе; Райт, Стивен Дж. (2006). Численная оптимизация (2-е изд.). Спрингер. ISBN 978-0-387-30303-1 .
Внешние ссылки
[ редактировать ]- Подробное описание алгоритма можно найти в разделе «Численные рецепты на языке C», глава 15.5: Нелинейные модели.
- Ч. Т. Келли, Итеративные методы оптимизации , SIAM Frontiers in Applied Mathematics, № 18, 1999 г., ISBN 0-89871-433-8 . Онлайн-копия
- История алгоритма в новостях SIAM
- Урок Ананта Ранганатана
- К. Мэдсен, Х.Б. Нильсен, О. Тинглефф, Методы решения нелинейных задач наименьших квадратов (учебник по нелинейному методу наименьших квадратов; код LM: Якобиана аналитический секанс )
- Т. Струц: Подгонка данных и неопределенность (Практическое введение в метод взвешенных наименьших квадратов и не только). 2-е издание, Springer Vieweg, 2016 г., ISBN 978-3-658-11455-8 .
- HP Gavin, Метод Левенберга-Марквардта для нелинейных задач аппроксимации кривой методом наименьших квадратов ( включая реализацию MATLAB )