11.4.1. Ручная настройка гиперпараметров
Для ручного задания гиперпараметров необходимо понимать связи между гиперпа-
раметрами, ошибкой обучения, ошибкой обобщения и вычислительными ресурсами
(памятью и временем работы), а следовательно, основательное знакомство с фунда-
ментальными идеями, касающимися эффективной емкости алгоритма обучения, ко-
торые были изложены в главе 5.
Целью ручной настройки обычно является достижение наименьшей ошибки
обобщения при ограничениях на время работы и потребление памяти. Мы не будем
обсуж дать, как различные гиперпараметры влияют на время работы и объем памяти,
поскольку это сильно зависит от платформы.
Основная цель ручного подбора гиперпараметров – привести эффективную ем-
кость модели в соответствие со сложностью задачи. Эффективная емкость ограниче-
на тремя факторами: репрезентативной емкостью модели, способностью алгоритма
обучения минимизировать функцию стоимости, используемую для обучения моде-
ли, и степенью регуляризации модели посредством функции стоимости и процедуры
обучения. Чем больше число слоев модели и число скрытых блоков в каждом слое,
Выбор гиперпараметров
361
тем выше репрезентативная емкость, т. е. модель может представить более сложные
функции. Но она не сможет обучиться всем этим функциям, если алгоритм обучения
не способен установить, что некоторые функции хорошо минимизируют стоимость,
или если регуляризирующие члены, например снижение весов, запрещают использо-
вание некоторых функций.
График ошибки обобщения как функции одного из гиперпараметров обычно имеет
вид U-образной кривой (рис. 5.3). На одном конце значение гиперпараметра соот-
ветствует низкой емкости, а ошибка обобщения велика, потому что велика ошибка
обучения. Это режим недообучения. На другом конце значение гиперпараметра со-
ответствует высокой емкости, а ошибка обобщения велика, потому что велик разрыв
между ошибкой обучения и тестирования. Где-то посередине находится оптимальная
емкость модели, при которой ошибка обобщения минимальна, поскольку и разрыв,
и ошибка обучения умеренные.
Для некоторых гиперпараметров слишком большое значение приводит к пере-
обучению. Примером может служить число скрытых блоков в слое, поскольку с уве-
личением числа скрытых блоков возрастает емкость модели. А бывает и наоборот –
когда к переобучению ведет малое значение гиперпараметра. Например, наименьшее
допустимое значение коэффициента снижения весов, равное нулю, соответствует
наибольшей эффективной емкости алгоритма обучения.
Не каждый гиперпараметр принимает все значения, лежащие на U-образной кри-
вой. Многие гиперпараметры дискретны, как, например, число блоков в слое или
число линейных участков maxout-блока, так что им соответствует лишь несколько
точек на кривой. Бывают и бинарные гиперпараметры. Обычно это переключатели,
которые говорят, нужно ли использовать какую-то необязательную компоненту алго-
ритма обучения, например шаг предобработки, на котором производится нормировка
входных признаков (вычитание среднего и деление на стандартное отклонение). Та-
ким гиперпараметрам соответствуют всего две точки на кривой. У некоторых гипер-
параметров есть минимальное или максимальное значения, ограничивающие область
их присутствия на кривой. Например, минимальный коэффициент снижения весов
равен нулю. Это означает, что если модель недообучена, когда снижение весов ну-
левое, то путем модификации коэффициента снижения мы не сможем попасть в об-
ласть переобучения. Иными словами, некоторые гиперпараметры способны только
уменьшить емкость.
Пожалуй, самым важным гиперпараметром является скорость обучения. Если
у вас есть время для настройки только одного гиперпараметра, займитесь скоростью
обучения. Она управляет эффективной емкостью модели не столь прямо, как осталь-
ные гиперпараметры: эффективная емкость максимальна, когда скорость обучения
правильно
подобрана для задачи оптимизации, а не когда она особенно велика или
мала. График зависимости ошибки
обучения
от скорости обучения имеет U-образную
форму, показанную на рис. 11.1. Если скорость обучения слишком велика, то ме-
тод градиентного спуска может по случайности увеличить, а не уменьшить ошибку
обуче ния. В идеализированном квадратичном случае это происходит, когда скорость
обучения не менее чем в два раза превосходит оптимальное значение (LeCun et al.,
1998a). Если скорость обучения слишком мала, то обучение не только протекает мед-
ленно, но может и вообще застрять, так и не добившись снижения ошибки обучения.
Этот феномен пока понят плохо (но такое не может произойти для выпуклой функ-
ции потерь).
Do'stlaringiz bilan baham: |