Что такое регуляризация в простом английском?


74

В отличие от других статей, я нашел запись в Википедии по этой теме нечитаемой для не математического человека (такого как я).

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

Можете ли вы описать простой метод регуляризации?

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

Модель 1 - цена растет, когда:

  • exp_moving_avg (цена, период = 50)> exp_moving_avg (цена, период = 200)

Модель 2 - цена растет, когда:

  • цена [n] <цена [n-1] 10 раз подряд
  • exp_moving_avg (цена, период = 200) идет вверх

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


7
Примером является регрессия гребня, которая представляет собой OLS с ограничением на сумму квадратов коэффициентов. Это внесет смещение в модель, но уменьшит дисперсию коэффициентов, иногда существенно. LASSO - еще один связанный метод, но накладывает ограничение L1 на размер коэффициентов. Это имеет преимущество снижения коэффициентов. Это полезно для p >> n ситуаций. Регуляризация, в некотором смысле, означает «сжатие» модели, чтобы избежать чрезмерного подбора (и уменьшения дисперсии коэффициентов), что обычно улучшает прогнозную эффективность модели.
HairyBeast

2
@HairyBeast Вы должны поставить свой хороший комментарий в качестве ответа. Если возможно, попробуйте добавить иллюстративный пример, чтобы ОП мог выяснить, как это отразится на рассматриваемой проблеме.
ЧЛ

1
@HairyBeast, так что я могу сказать, что регуляризация - это просто метод реализации идеи компромисса смещения ?
авокадо

Я нашел это видео очень полезным, особенно для визуализации различных форм регуляризации Lp: youtube.com/watch?v=sO4ZirJh9ds
Anm

Регуляризация предназначена для решения проблемы в изучаемой модели. Пытался объяснить на простом английском и визуально. Ниже приводится ссылка на статью medium.com/@vamsi149/...
solver149

Ответы:


57

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

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

Для упорядочения нужно 2 вещи:

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

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

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


2
+1 от меня. Мне нравится, что этот ответ начинается с самого начала и так легко понять ...
Андрей

2
Действительно ли регуляризация когда-либо использовалась, чтобы уменьшить недостаточное оснащение? По моему опыту, регуляризация применяется к сложной / чувствительной модели для уменьшения сложности / чувствительности, но никогда не применяется к простой / нечувствительной модели для увеличения сложности / чувствительности.
Ричард Харди

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

26

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

Точнее:

  • у вас есть неотрицательная функция потерь которая характеризует, насколько плохи ваши прогнозыL(actual value, predicted value)
  • вы хотите подогнать свою модель таким образом, чтобы ее прогнозы минимизировали функцию среднего значения потерь, рассчитанную только на данных обучения (единственные данные, которые у вас есть)

Тогда цель учебного процесса состоит в том, чтобы найти (этот метод называется эмпирическим риском сведение к минимуму).Model=argminL(actual,predicted(Model))

Но если у вас недостаточно данных и в вашей модели огромное количество переменных, очень вероятно найти такую ​​модель, которая не только объясняет закономерности, но и объясняет случайный шум в ваших данных. Этот эффект называется переоснащением и приводит к ухудшению обобщающей способности вашей модели.

Во избежание переопределения термин регуляризации вводится в целевую функцию: Model=argminL(actual,predicted(Model))+λR(Model)

Обычно этот термин накладывает особое наказание на сложные модели. Например, в моделях с большими коэффициентами (регуляризация L2, = сумма квадратов коэффициентов) или с множеством ненулевых коэффициентов (регуляризация L1, = сумма абсолютных значений коэффициентов). Если мы обучаем дерево решений, может быть его глубиной.R(Model)RRR

Другая точка зрения состоит в том, что вводит наши предварительные знания о форме наилучшей модели («она не имеет слишком больших коэффициентов», «она почти ортогональна к »)Ra¯


12

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

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

Как вы делаете регуляризацию? В общем, это связано с методом, который вы используете, если вы используете SVM, вы делаете регуляризацию L2, если вы используете LASSO, вы делаете регуляризацию L1 (посмотрите, что говорит hairybeast). Однако, если вы разрабатываете свой собственный метод, вам нужно знать, как отличить желательные решения от нежелательных, и иметь функцию, которая количественно оценивает это. В конце концов у вас будет стоимостной термин и термин регуляризации, и вы захотите оптимизировать сумму обоих.


1

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

Примеры: L1, L2, Dropout, снижение веса в нейронных сетях. Параметр в SVM.C


0

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

Избыточного соответствия можно избежать, ограничивая абсолютное значение параметров в модели. Это можно сделать, добавив термин в функцию стоимости, который налагает штраф на основе величины параметров модели. Если величина измеряется в норме L1, это называется «регуляризацией L1» (и обычно это приводит к разреженным моделям), если она измеряется в норме L2, это называется «регуляризацией L2» и так далее.

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