Что в названии: гиперпараметры

19

Таким образом, в нормальном распределении у нас есть два параметра: среднее значение и дисперсия . В книге « Распознавание образов и машинное обучение» внезапно появляется гиперпараметр в терминах регуляризации функции ошибок.μσ2λ

Какие гиперпараметры? Почему они названы таковыми? И как они интуитивно отличаются от параметров в целом?

ОЦП
источник
3
Лично я просто думаю, что это эпидемия людей, которые становятся гипер. Гипер это, гипер это. Гиперсфера - это сфера, d @ manit, перестать становиться такой гипер-просто, потому что размерность превышает 3. Гиперпараметр - это параметр, d @ mnit, перестать становиться гипер-просто потому, что у вас есть несколько из них, и вы как-то думаете, что вам нужно указать уровень иерархии или что-то. В любом случае, если у вас есть проблемы с оптимизацией, четко укажите, какие параметры оптимизируются, и какие-либо ограничения (если это многоуровневая оптимизация, укажите это). Я надеюсь, что я не стал слишком гипер в этом комментарии.
Марк Л. Стоун
2
Я всегда использовал «гиперсферу» для обозначения «соразмерности одной сферы», поэтому, по крайней мере, в математике, это, кажется, что-то значит. Или, по крайней мере, когда я говорю о математике. Я успокоюсь сейчас.
Мэтью Друри,

Ответы:

18

Термин гиперпараметр довольно расплывчатый. Я буду использовать его для ссылки на параметр, который находится на более высоком уровне иерархии, чем другие параметры. Для примера рассмотрим регрессионную модель с известной дисперсией (в данном случае 1)

yN(Иксβ,я)

а затем априор по параметрам, например

β~N(0,λя)

Здесь определяет распределение а определяет распределение для . Когда я хочу просто обратиться к я могу назвать его параметром, а когда я хочу просто обратиться к , я могу назвать его гиперпараметром.λββYβλ

Присвоение имен усложняется, когда параметры отображаются на нескольких уровнях или когда есть более иерархические уровни (и вы не хотите использовать термин гипергиперпараметры). Лучше всего, если автор точно укажет, что имеется в виду, когда он использует термин гиперпараметр или параметр в этом отношении.

jaradniemi
источник
Это хорошее объяснение. Сейчас я представляю его как «композицию функций». Чтобы перевести то, что вы вводите в символы, обычно распределяется со средним значением , но , в свою очередь, обычно распределяется так и так. СпасибоyИксβбеTa
cgo
10

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

Например, ваш параметр может свободно влиять на и для корректировки стоимости регуляризации (но и не влияют на ). Таким образом, является гиперпараметром для и . Если бы у вас был дополнительный параметр влияющий на , это был бы гиперпараметр для и гипергиперпараметр для и (но я никогда не видел эту номенклатуру, но не чувствовал бы, что это будет неправильно если бы я это видел).λμσμσλλμστλλμσ

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

gaborous
источник
7

Другие объяснения немного расплывчаты; Вот более конкретное объяснение, которое должно прояснить это.

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

С другой стороны, обычные параметры - это те, которые описывают физическую систему, а не просто моделируют артефакты.

Mehrdad
источник
6

Это не совсем определенный термин, поэтому я продолжу и дам вам еще одно определение, которое кажется совместимым с обычным употреблением.

Гиперпараметр - это величина, оцениваемая в алгоритме машинного обучения, которая не участвует в функциональной форме конечной прогностической функции.

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

β*(λ)знак равноargminβ((Y-Иксβ)T(Y-Иксβ)+λβTβ)
β*знак равноargminλ(Y'-Икс'β(λ))T(Y'-Икс'β(λ))

Икс,YИкс',Y'

е(Икс)знак равноИксβ*

λβλ

Мэтью Друри
источник
3

Как точно указывает @jaradniemi, одно использование термина гиперпараметр происходит от иерархического или многоуровневого моделирования, где у вас есть каскад статистических моделей, одна из которых построена поверх / под другими, используя обычно условные вероятностные выражения.

Но та же терминология возникает и в других контекстах с разными значениями. Например, я видел, что термин гиперпараметр использовался для обозначения параметров моделирования (длина пробега, количество независимых повторений, количество взаимодействующих частиц в каждой репликации и т. Д.) Стохастической модели, которая не является результатом многоуровневой моделирование.

Марсело Вентура
источник
1
В качестве параметров настройки я бы обычно упоминал длину пробега, количество взаимодействующих частиц и т. Д.
Джарадниеми
Я согласен. Для меня это звучит более адекватно, чем гиперпараметры. Тем не менее, для других в других областях знаний это звучало достаточно разумно.
Марсело Вентура