Регуляризация для простоты: регуляризация L₂

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

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

Рисунок 1. Потери на обучающем наборе и наборе проверки.

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

Другими словами, вместо того, чтобы просто стремиться минимизировать потери (минимизация эмпирического риска):

$$\text{minimize(Loss(Data|Model))}$$

теперь мы минимизируем потери+сложность, что называется минимизацией структурного риска :

$$\text{minimize(Loss(Data|Model) + complexity(Model))}$$

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

Ускоренный курс машинного обучения фокусируется на двух распространенных (и отчасти связанных) способах понимания сложности модели:

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

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

Мы можем количественно оценить сложность, используя формулу регуляризации L2 , которая определяет термин регуляризации как сумму квадратов всех весов признаков:

$$L_2\text{ regularization term} = ||\boldsymbol w||_2^2 = {w_1^2 + w_2^2 + ... + w_n^2}$$

В этой формуле веса, близкие к нулю, мало влияют на сложность модели, тогда как веса выбросов могут иметь огромное влияние.

Например, линейная модель со следующими весами:

$$\{w_1 = 0.2, w_2 = 0.5, w_3 = 5, w_4 = 1, w_5 = 0.25, w_6 = 0.75\}$$

Имеет член регуляризации L 2 26,915:

$$w_1^2 + w_2^2 + \boldsymbol{w_3^2} + w_4^2 + w_5^2 + w_6^2$$$$= 0.2^2 + 0.5^2 + \boldsymbol{5^2} + 1^2 + 0.25^2 + 0.75^2$$$$= 0.04 + 0.25 + \boldsymbol{25} + 1 + 0.0625 + 0.5625$$$$= 26.915$$

Но \(w_3\) (выделен жирным шрифтом выше) с квадратом значения 25 вносит почти всю сложность. Сумма квадратов всех пяти других весов добавляет всего 1,915 к члену регуляризации L2 .