В чем разница между гиперпараметрами модели и параметрами модели?


28

Я заметил, что такие термины, как гиперпараметр модели и параметр модели , использовались в сети взаимозаменяемо без предварительного разъяснения. Я думаю, что это неправильно и нуждается в объяснении. Рассмотрим модель машинного обучения, классификатор или распознаватель изображений на основе SVM / NN / NB - все, что сначала приходит на ум.

Каковы гиперпараметры и параметры модели?
Приведите ваши примеры, пожалуйста.


3
Эндрю Нг уточняет разницу между параметрами и гиперпараметрами. coursera.org/learn/neural-networks-deep-learning/lecture/TBvb5/…
Дивьяншу Шехар

Ответы:


27

Гиперпараметры и параметры часто используются взаимозаменяемо, но между ними есть разница. Вы называете что-то «гиперпараметром», если это не может быть изучено непосредственно в оценщике. Тем не менее, «параметры» является более общим термином. Когда вы говорите «передача параметров в модель», это обычно означает сочетание гиперпараметров вместе с некоторыми другими параметрами, которые не имеют прямого отношения к вашей оценке, но необходимы для вашей модели.

Например, предположим, что вы создаете классификатор SVM в sklearn:

from sklearn import svm
X = [[0, 0], [1, 1]]
y = [0, 1]
clf = svm.SVC(C =0.01, kernel ='rbf', random_state=33)
clf.fit(X, y) 

В приведенном выше коде экземпляр SVM является вашей оценкой для вашей модели, для которой гиперпараметры в данном случае являются Cи kernel. Но у вашей модели есть другой параметр, который не является гиперпараметром random_state.


Этот ответ подразумевает random_stateпараметр. Я думаю, что это вводит в заблуждение, потому что (см. Другие ответы); параметр изучается моделью , а гиперпараметр задается нами ; как random_state=33. Но random_stateэто не совсем гиперпараметр, потому что нет лучшего значения для random_state; см. обсуждение Джейсона Браунли здесь
The Red Pea

21

В дополнение к ответу выше.

Параметры модели - это свойства данных обучения, которые изучаются во время обучения классификатором или другой моделью мл. Например, в случае некоторых задач НЛП: частота слов, длина предложения, распределение существительных или глаголов в предложении, количество n-граммов конкретных символов в слове, лексическое разнообразие и т. Д. Параметры модели различаются для каждого эксперимента и зависят от типа данные и задачи под рукой.

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


7

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


5

В машинном обучении модель с параметрами и гиперпараметрами выглядит так:M

YMH(Φ|D)

где - параметры, а - гиперпараметры. - данные обучения, а - выходные данные (метки классов в случае задачи классификации).H D YΦHDY

Цель во время обучения - найти оценку параметров которая оптимизирует некоторую функцию потерь мы указали. Поскольку модель и функция потерь основаны на , то последующие параметры также зависят от гиперпараметров . лМЛНΦНΦ^LMLHΦH

Гиперпараметры не «изучаются» во время обучения, но не означают, что их значения неизменны. Как правило, гиперпараметры фиксированы, и мы думаем просто о модели , а не . Здесь гиперпараметры также могут рассматриваться как априорные параметры. M M HHMMH

Источником путаницы является использование и модификация гиперпараметров во время тренировочной программы в дополнение к, очевидно, параметрам . Потенциально есть несколько причин, чтобы изменить во время обучения. Примером может быть изменение скорости обучения во время обучения для повышения скорости и / или стабильности процедуры оптимизации. Н Φ НMHHΦ^H

Важным отличием является то, что результат, скажем, предсказание метки, , основан на параметрах модели а не на гиперпараметрах . Φ HYpredΦH

Различие, однако, имеет предостережения и, следовательно, линии размыты. Рассмотрим, например, задачу кластеризации, а именно моделирование гауссовой смеси (GMM). Здесь задаются следующие параметры: , где - это набор из кластерных средств, а - из стандартные отклонения, для гауссовых ядер.ˉ μ N ˉ σ N NΦ={μ¯,σ¯}μ¯Nσ¯NN

Вы, возможно, интуитивно распознали гиперпараметр здесь. Это число кластеров . Итак, . Как правило, проверки кластера используются для определения априорно, используя небольшую подвыборку данных . Тем не менее, я мог бы также изменить свой алгоритм обучения моделей гауссовой смеси, чтобы изменить количество ядер во время обучения, основываясь на некотором критерии. В этом сценарии гиперпараметр становится частью набора параметров .H = { N } N D N N Φ = { ˉ μ , ˉ σ , N }NH={N}NDNNΦ={μ¯,σ¯,N}

Тем не менее, следует отметить, что результат, или прогнозируемое значение, для точек данных в данном основан на , а не . То есть каждое из гауссовых ядер будет вносить некоторое значение вероятности в на основе расстояния от их соответствующего и их собственной . «Параметр» здесь явно не задействован, поэтому он, возможно, не «действительно» является параметром модели.D G M M ( ˉ μ , ˉ σ ) N N d d μ σ NdDGMM(μ¯,σ¯)NNddμσN

Резюме: различие между параметрами и гиперпараметрами нюансировано из-за того, как они используются практиками при разработке модели и функции потерь . Я надеюсь, что это помогает разногласия между этими двумя терминами.LML


3

Проще говоря,

Параметры модели - это то, что модель изучает самостоятельно. Например, 1) Веса или Коэффициенты независимых переменных в модели линейной регрессии. 2) Веса или Коэффициенты независимых переменных SVM. 3) Точки разделения в дереве решений.

Гиперпараметры модели используются для оптимизации производительности модели. Например, 1) Ядро и слабина в SVM. 2) Значение К в КНН. 3) Глубина дерева в деревьях решений.


Они не обязательно имеют отношение к оптимизации модели. Гиперпарамсы - это просто параметры процесса построения модели.
Шон Оуэн,

0

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

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

По сути, это те параметры, которые «модель» использует для прогнозирования и т. Д. Например, весовые коэффициенты в модели линейной регрессии. Гиперпараметры - это те, которые помогают в процессе обучения. Например, количество кластеров в K-средних, коэффициент усадки в регрессии хребта. Они не появятся в финальной части прогноза, но они имеют большое влияние на то, как будут выглядеть параметры после этапа обучения.

См .: https://machinelearningmastery.com/difference-between-a-parameter-and-a-hyperparameter/

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.