Основы

Optimization

Оптимизация

актуальноТекущий рабочий стандарт

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

Что означает каждый компонент
  • эмпирический риск: средняя ошибка на обучающей выборке
  • штраф за сложность модели. λ = 0 — чистая подгонка под данные, большое λ — недообучение

Ключевые тезисы

  • Выпуклые задачи имеют единственный минимум; глубокое обучение работает в невыпуклом ландшафте.
  • Скорость обучения — главный гиперпараметр: слишком большая расходится, слишком малая застревает.
  • Регуляризация меняет саму задачу оптимизации, а не только процедуру поиска.

Подробный разбор

2 подтем — раскройте любую, чтобы увидеть объяснение, формулы, примеры и интерактивные графики.

1

Постановка задачи оптимизации

Что именно минимизируется при обучении и какие бывают ограничения.

Обозначения
  • сила регуляризации: штраф за сложность модели
  • истинное значение целевой переменной
  • объект или аргумент функции
  • веса модели — то, что подбирается при обучении
  • число объектов в выборке
  • функция потерь либо рассматриваемая функция
  • функция, о которой идёт речь

Первое слагаемое заставляет модель соответствовать данным, второе — не усложняться сверх необходимого. Коэффициент управляет компромиссом; при мы получаем чистую подгонку под обучающую выборку.

-202-303xy
λ1.0e-4
‖w‖₂4.054
нулевых коэффициентов0 из 9
Тип
Увеличивайте λ: кривая из «пляшущей» становится гладкой, а коэффициенты сжимаются к нулю
2

Выпуклость: почему одни задачи простые

Единственный минимум против ландшафта с миллионом ям.

Функция выпукла, если отрезок между любыми двумя точками её графика лежит не ниже самого графика. У выпуклой функции локальный минимум всегда глобальный, а значит, спуск из любой точки приводит к правильному ответу.

  • Выпуклые: линейная регрессия с MSE, логистическая регрессия, линейный SVM.
  • Невыпуклые: любая нейросеть глубже одного слоя, кластеризация k-means.
  • На практике невыпуклость менее страшна, чем звучит: в высокой размерности плохих локальных минимумов мало, чаще встречаются сёдла.

Связанные темы

Оптимизаторы

Optimizers85%

Оптимизаторы · Глубокое обучение

Правила обновления весов по градиенту: от чистого SGD до адаптивных методов.

Gradient Descent85%

Градиентный спуск · Оптимизация обучения

Итеративный шаг против градиента функции потерь — базовый алгоритм обучения.

SGD85%

Стохастический градиентный спуск · Оптимизация обучения

Градиент оценивается по мини-батчу: быстрее, шумнее и, как оказалось, полезнее для обобщения.

Momentum85%

Момент · Оптимизация обучения

Накопление экспоненциального среднего градиентов — движение по инерции сквозь колебания.

Adam85%

Adam · Оптимизация обучения

Адаптивный метод: хранит средние градиента и его квадрата, подбирая шаг для каждого параметра.

AdamW85%

AdamW · Оптимизация обучения

Adam с корректно отделённым weight decay — регуляризация применяется к весам, а не к градиенту.

RMSProp85%

RMSProp · Оптимизация обучения

Нормирует шаг на скользящее среднее квадратов градиента, выравнивая масштаб обновлений.

Learning Rate Scheduling85%

Расписание скорости обучения · Оптимизация обучения

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

Batch size85%

Размер батча · Оптимизация обучения

Число объектов на одно обновление весов: влияет на скорость, память и качество обобщения.