«Минимизация с учетом резкости для эффективного улучшения обобщения» (2020):



Что такое острая точка и почему она важна?

Как видно из рисунка, острый минимум соответствует высокой кривизне, а малая кривизна соответствует плоскому минимуму. Чтобы предотвратить переоснащение, в традиционном машинном обучении мы стараемся работать с плоским минимумом. Чтобы получить сглаженные минимумы:

  • мы изменяем гиперпараметры: размер партии, скорость обучения и регуляризацию отсева (Xie et al., 2021).

Но можем ли мы искать лучшие гиперпараметры в контексте непрерывного обучения? Очевидно, ответ отрицательный, потому что мы не знаем априори.

Чтобы устранить это ограничение, в этой статье авторы оптимизируют резкость потерь (альтернативно более плоские минимумы) во время обучения на протяжении всей жизни следующим образом:

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

Процедура Sharpness-Aware Minimization (SAM) для одновременной минимизации значения потери задачи и резкости потери.

СЭМ ШАГИ

SAM ищет параметры, лежащие в окрестностях областей с равномерно низкими потерями, верно? Итак, мы пытаемся минимизировать следующую резкость потерь (для модели f с параметрами w)

где ε (эпсилон) представляет небольшое возмущение параметров модели. Термин «f(w + ε)» относится к значению потерь, когда параметры возмущены на небольшую величину ε, а «f(w)» представляет собой значение потерь при текущих параметрах «w».

Область максимизации определяется как 2-шар (шар в двумерном пространстве) с центром в точке «w» и радиусом, обозначенным «ρ». 2-шар — это просто круг в двух измерениях, а радиус «ρ» определяет размер области, которую SAM рассматривает вокруг текущих параметров.

Задача оптимизации состоит в том, чтобы найти значение «ε», которое максимизирует разницу между потерями при «w + ε» и потерями при «w», при этом ограничивая величину «ε», чтобы она находилась в пределах шара с радиус ρ.

Формально процедура SAM заключается в решении следующей задачи минимаксной оптимизации:

Чтобы решить эту оптимизационную задачу,

  1. мы вычисляем разложение Тейлора первого порядка f (w + ε) относительно. ε около 0: f(w + ε) ≈ f(w) + ∇f(w)^T * ε
  2. Подставив в уравнение минимума и максимума:

min max [f(w) + ∇f(w)^T ε + λ||w||2²] при условии, что ||ε||2 ≤ ρ

3. Продолжаем расчет и решаем Двойственную

отбрасывая член градиента второго порядка:

Алгоритм

Ресурсы

https://arxiv.org/pdf/2010.01412v1.pdf

https://arxiv.org/abs/2207.04354