Алгоритм Левенберга-Марквардта

Алгоритм Левенберга-Марквардта предназначен для оптимизации параметров нелинейных регрессионных моделей. Предполагается, что в качестве критерия оптимизации используется среднеквадратичная ошибка модели на обучающей выборке. Алгоритм заключается в последовательном приближении заданных начальных значений параметров к искомому локальному оптимуму.

Задана обучающая выборка – множество пар свободной переменной (входы сети) и зависимой переменной Алгоритм Левенберга-Марквардта. Задана функциональная зависимость, представляющую собой регрессионную модель Алгоритм Левенберга-Марквардта, непрерывно дифференцируемую в области W·X. Параметр wявляется вектором весовых коэффициентов. Требуется найти такое значение вектора w, которое бы доставляло локальный минимум функции ошибки 

Перед началом работы алгоритма задается начальный вектор весовых коэффициентов w. 

  1. На каждом шаге итерации этот вектор заменяется на вектор
    Алгоритм Левенберга-Марквардта
    Для оценки приращения Алгоритм Левенберга-Марквардта используется линейное приближение функции  Алгоритм Левенберга-Марквардтагде J – якобиан функции f(w,xn) в точке w
    Матрицу наглядно можно представить в виде
    Алгоритм Левенберга-Марквардта
    Здесь вектор весовых коэффициентов Алгоритм Левенберга-Марквардта.
    Приращение Алгоритм Левенберга-Марквардта в точке w, доставляющее минимум EDравно нулю. Поэтому для нахождения последующего приращения Алгоритм Левенберга-Марквардта приравняем нулю вектор частных производных ED по w.
     Алгоритм Левенберга-Марквардтагде и 
    Преобразовывая и дифференцируя это выражение 

    Алгоритм Левенберга-Марквардта 
    получим Алгоритм Левенберга-Марквардта.
    Таким образом, чтобы найти значение Алгоритм Левенберга-Марквардта нужно решить систему линейных уравнений 
    Так как число обусловленности матрицы JTесть квадрат числа обусловленности матрицы J, то матрица JTможет оказаться существенно вырожденной. Поэтому Марквардтом введен параметр регуляризации
  2.  где I – единичная матрица. Этот параметр назначается на каждой итерации алгоритма. Если значение ошибки Eубывает быстро, малое значение  сводит этот алгоритм к алгоритму Гаусса-Ньютона.
  3. Алгоритм останавливается в том случае, если приращение  в последующей итерации меньше заданного значения, либо если вектор весовых коэффициентов доставляет ошибку ED, меньшую заданной величины, или если исчерпано число циклов обучения НС. Значение вектора w на последней итерации считается искомым.

Недостаток алгоритма – значительное уменьшение скорости аппроксимации при увеличении параметра .

Добавить комментарий


Защитный код
Обновить