Гиперпараметр (машинное обучение)
Гиперпараметр — параметр в машинном обучении, значение которого используется для управления процессом обучения. В отличие от значений других параметров (обычно весов узлов), которые определяются во время тренировки.
Гиперпараметры могут быть классифицированы как гиперпараметры модели, которые не могут быть определены во время обучения машины c помощью обучающего набора, потому что они относятся к задаче выбора модели, или гиперпараметры алгоритма, которые в принципе не имеют влияния на производительность модели но оказывают воздействие на скорость и качество процесса обучения. Примером гиперпараметра модели является топология и размер нейронной сети. Примером гиперпараметра алгоритма являются темп обучения и размер набора данных (batch size), также как и размер мини-набора данных (mini-batch size). Набором данных может называться полная выборка данных, а мини-набором данных размер выборки меньшим размером.
Для различных алгоритмов обучения модели, требуются различные гиперпараметры, некоторым простым алгоритмам (таким как Обычные наименьшие квадраты линейной регрессии) они не требуются. Учитывая гиперпараметры, алгоритм обучения настраивает свои параметры с помощью данных. Например, LASSO — это алгоритм, который добавляет параметр регуляризации в алгоритм регрессии обычных наименьших квадратов и этот параметр должен быть установлен перед оценкой параметров с помощью алгоритма обучения.[1]
Соображения
Время необходимое для обучения и тестирования модели может зависеть от выбора её гиперпараметров.[2] Гиперпараметр обычно имеет непрерывный или целочисленный тип данных, что приводит к проблемам оптимизации связанным со смешанными типами.[2] Существование некоторых гиперпараметров зависит от значения других гиперпараметров, например размер каждого скрытого слоя в нейронной сети может зависеть от количества слоев.[2]
Сложнообучаемые параметры
Обычно, но не всегда, гиперпараметры не могут быть обучены с использованием хорошо известных методов, основанных на градиенте (таких как градиентный спуск, LBFGS), которые обычно используются для обучения параметров. Эти гиперпараметры, являются теми параметрами описывающими представление модели, которые не могут быть обучены с использованием основных методов оптимизации, но тем не менее имеют влияние на функцию потерь. Примером может служить толерантность гиперпараметра к ошибкам в методе опорных векторов.
Необучаемые параметры
Иногда, гиперпараметры не могут быть обучены с использованием обучающих данных, потому что они агрессивно увеличивают производительность модели и могут отодвинуть функцию потерь на не желаемый минимум (переобучаясь и подхватывая шум в данных), в отличие от правильного отображения богатства структуры в данных. Например, если мы рассматриваем степень полиномиального уравнения, соответствующего регрессионной модели, как обучаемый параметр, степень будет увеличиваться до тех пор пока модель не будет идеально подходить к данным, выдавая небольшую ошибку при обучении, но плохую производительность обобщения.
Настраиваемость
Большая часть изменений производительности может быть связана всего с несколькими гиперпараметрами..[3][2][4]Настраиваемость алгоритма, гиперпараметра, или взаимодействие гиперпараметров это измерение того, насколько высокую производительность можно получить такой настройкой.[5] Для LSTM, хотя темп обучения с последующим размером сети и являются самыми критическими гиперпараметрами,[6] пакетирование и инерция не имеют значительного влияния на производительность.[7]
Хотя некоторые исследования выступают за использование размеров мини-пакетов с тысячами экземпляров, другие исследования обнаружили, что самая лучшая производительность достигается с размерами мини-пакетов между 2 и 32 экземпляра.[8]
Надёжность
Присущая стохастичность в обучении прямо подразумевает что эмпирическая производительность гиперпараметра не обязательно является его настоящей производительностью.[2] Методы которые не надёжны к простым изменениям в гиперпараметрах, случайные первоначальные значения, или даже различные имплементации того же самого алгоритма не могут быть интегрированы в критически важные системы управления без значительного упрощения и повышения надежности.[9]
Алгоритмы обучения с подкреплением, в частности, требуют измерения их производительности с использованием большого количества случайных первоначальных значений, и также измерения их чувствительности к выборам гиперпараметров.[9] Их оценка с небольшим количеством случайных первоначальных значений не оценивает производительность адекватно, в связи со слишком высокой вариативностью.[9] Некоторые методы обучения с подкреплением, например DDPG (Градиент глубокой детерминированной политики), более чувствительны к выборам гиперпараметров чем другие.[9]
Оптимизация
Оптимизация гиперпараметров осуществляет поиск набора гиперпараметров, дающего оптимальную модель, которая минимизирует предопределенную функцию потерь на предоставленных обучающих данных.[2] Целевая функция берет кортеж гиперпараметров и возвращает связанные потери.[2]
Воспроизводимость
Кроме настраиваемых параметров, машинное обучение включает хранение и организацию параметров и результатов, и убеждение того, что они воспроизводимы.[10] При отсутствии надежной инфраструктуры для этих целей, исследовательский код часто быстро развивается, но ставит под угрозу такие важные аспекты, как учёт и воспроизводимость.[11] Платформы для онлайн-сотрудничества, предназначенные для машинного обучения позволяют ученым автоматически делиться, организовывать и обсуждать эксперименты, данные, и алгоритмы.[12] Воспроизводимость может быть особенно сложной для моделей глубоко обучения.[13]