Оптимизация ADAM (адаптивная оценка момента) | ML

Опубликовано: 23 Июля, 2021

Предварительное условие: методы оптимизации в градиентном спуске

Градиентный спуск применим в сценариях, где функция легко дифференцируется по параметрам, используемым в сети. Минимизировать непрерывную функцию проще, чем минимизировать дискретные функции. Обновление веса выполняется после одной эпохи, где одна эпоха представляет собой просмотр всего набора данных. Этот метод дает удовлетворительные результаты, но он ухудшается, если размер обучающего набора данных становится большим и плохо сходится. Это также может не привести к глобальному минимуму в случае существования нескольких локальных минимумов.

Стохастический градиентный спуск преодолевает этот недостаток путем случайного выбора выборок данных и обновления параметров на основе функции стоимости. Кроме того, он сходится быстрее, чем обычный градиентный спуск, и экономит память, не накапливая промежуточные веса.
Адаптивная оценка момента (ADAM) облегчает вычисление скорости обучения для каждого параметра с использованием первого и второго момента градиента.

Поскольку ADAM эффективен с точки зрения вычислений, он требует меньше памяти и превосходит большие наборы данных. Требуется, чтобы p 2 , q 2 , t были инициализированы равными 0 , где p 0 соответствует 1- му вектору момента, то есть среднему значению, q 0 соответствует 2- му вектору момента, то есть нецентрированной дисперсии, а t представляет временной шаг.
Если рассматривать ƒ (w) как стохастическую целевую функцию с параметрами w , предлагаемые значения параметров в ADAM следующие:

 α = 0,001 , m 1 = 0,9 , m 2 = 0,999 , ϵ = 10-8 .

Еще одно важное преимущество, обсуждаемое при исследовании ADAM, заключается в том, что обновление параметра полностью инвариантно к изменению масштаба градиента, алгоритм будет сходиться, даже если целевая функция изменяется со временем. Недостатком этого конкретного метода является то, что он требует вычисления производной второго порядка, что приводит к увеличению затрат.

Алгоритм ADAM был кратко упомянут ниже -