Скорость обучения - Learning rate

В машинном обучении и статистике , то скорость обучения является параметром настройки в алгоритме оптимизации , который определяет размер шага на каждую итерации, двигаясь в направлении минимума функции потерь . Поскольку он влияет на то, в какой степени вновь полученная информация отменяет старую информацию, он метафорически представляет скорость, с которой модель машинного обучения «учится». В литературе по адаптивному управлению скорость обучения обычно называется усилением .

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

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

При поиске строк минипакетная подвыборка (MBSS) влияет на характеристики функции потерь, по которой необходимо определить скорость обучения. Статический MBSS сохраняет мини-пакет фиксированным в направлении поиска, что приводит к плавной функции потерь в направлении поиска. Динамический MBSS обновляет мини-пакет при каждой оценке функции, что приводит к точечной прерывистой функции потерь в направлении поиска. Поиск по строкам, который адаптивно определяет скорость обучения для статических функций потерь MBSS, включает поиск по линии параболической аппроксимации (PAL). Линейный поиск, который адаптивно определяет скорость обучения для динамических функций потерь MBSS, включает вероятностный линейный поиск, линейный поиск только с градиентом (GOLS) и квадратичные аппроксимации.

График обучения

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

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

Импульс аналогичен мячу, катящемуся с холма; мы хотим, чтобы мяч остановился в самой низкой точке холма (соответствующей наименьшей ошибке). Momentum ускоряет обучение (увеличивает скорость обучения), когда градиент стоимости ошибки движется в одном направлении в течение длительного времени, а также позволяет избежать локальных минимумов за счет «перекатывания» небольших выступов. Импульс управляется гиперпараметром, аналогичным массе шара, который необходимо выбирать вручную - слишком высокий, и мяч перекатывается через минимумы, которые мы хотим найти, слишком низкий, и он не будет выполнять свою задачу. Формула для учета импульса сложнее, чем для распада, но чаще всего встроена в библиотеки глубокого обучения, такие как Keras .

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

где - скорость обучения, - параметр затухания, - шаг итерации.

Пошаговые расписания обучения изменяют скорость обучения в соответствии с некоторыми заранее определенными шагами. Формула применения распада здесь определяется как:

где - скорость обучения на итерации , - начальная скорость обучения, - насколько скорость обучения должна изменяться при каждом падении (0,5 соответствует уменьшению вдвое) и соответствует скорости падения, или как часто скорость должна снижаться (10 соответствует капля каждые 10 итераций). Функция минимума здесь понижает значение своего входа до 0 для всех значений меньше 1.

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

где - параметр распада.

Адаптивная скорость обучения

Проблема с расписаниями скорости обучения заключается в том, что все они зависят от гиперпараметров, которые необходимо вручную выбирать для каждого конкретного сеанса обучения, и они могут сильно различаться в зависимости от решаемой задачи или используемой модели. Для борьбы с этим существует множество различных типов алгоритмов адаптивного градиентного спуска, таких как Adagrad , Adadelta, RMSprop и Adam, которые обычно встроены в библиотеки глубокого обучения, такие как Keras .

Смотрите также

Рекомендации

дальнейшее чтение

Внешние ссылки

  • де Фрейтас, Нандо (12 февраля 2015 г.). «Оптимизация» . Лекция по глубокому обучению 6 . Оксфордский университет - через YouTube .