принцип регуляризации глубокого обучения

глубокое обучение

Это 22-й день моего участия в августовском испытании обновлений.Подробности о событии:Испытание августовского обновления

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

Что такое переоснащение?

Для проблемы цен на жилье в линейной регрессии мы даем набор данных:

image.png

Если вам это подходит:

image.png

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

image.png

Хорошо подходит для второго порядка.

image.png

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

То же самое касается логистической регрессии:

image.png

Overfitting: If we have too many features, the learned hypothesis may fit the training set very well (J(θ)=12mi=1m(hθ(x(i))y(i))20)\left(J(\theta)=\frac{1}{2 m} \sum_{i=1}^{m}\left(h_{\theta}\left(x^{(i)}\right)-y^{(i)}\right)^{2} \approx 0\right), but fail to generalize to new examples (predict prices on new examples).

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

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

Есть два решения переоснащения:

  1. Reduce number of features
    • Manually select which features to keep
    • Алгоритм выбора модели (позже в курсе)
  2. Уменьшить количество выбранных переменных
    • Ручной выбор переменных для сохранения
    • Алгоритм выбора модели, который автоматически выбирает, какие функции оставить, а какие отбросить.

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

  1. Regularization

    • Keep all the features but reduce magnitude /values of parameters θj\theta_j
    • Works well when we have a lot of features, each of which contributes a bit to predicting y
  2. Регуляризация

    • Сохраните все переменные функции, но уменьшите величину или параметрыθj\theta_jразмер
    • Это работает очень хорошо, когда у нас много функций, каждая из которых будет иметь небольшое влияние на прогнозируемое значение y.

Регуляризация

Вернемся к этому вопросу снова:

image.png

Его можно приспособить ко второму порядку, и эффект хороший.

image.png

Однако переобучение происходит на более высоких порядках.

image.png

Для этого примера мы знаемθ3θ_3иθ4θ_4не нужно, тогда мыθ0+θ1x+θ2x2+θ3x3+θ4x4\theta_{0}+\theta_{1} x+\theta_{2} x^{2}+\theta_{3} x^{3}+\theta_{4} x^{4}Штрафной член добавляется к функции стоимости , так чтоθ3θ_3иθ4θ_4стать очень маленьким.

Как сделать эти два слагаемых очень маленькими, как добавить «штрафной срок»: добавить к этим двум слагаемым огромный коэффициент после функции стоимости, например прибавить 1000. Тогда функция стоимости этих двух терминов принимает вид:minθ12mi=1m(hθ(x(i))y(i))2+1000θ32+1000θ42\min _{\theta} \frac{1}{2 m} \sum_{i=1}^{m}\left(h_{\theta}\left(x^{(i)}\right)-y^{(i)}\right)^{2}+1000 \theta_{3}^{2}+1000 \theta_{4}^{2}, дополнительная часть сзади - это "предмет наказания".

Для чего используется функция стоимости? Найдите минимальное значение и используйте значение θ, когда минимальное значение получено в качестве функции прогнозирования.h(x)h(x)θ из .

После добавления штрафного члена с двумя коэффициентами 1000, как функция стоимости может получить меньшее значение? тогда нужноθ3θ_3иθ4θ_4становится чрезвычайно малым, даже близким к 0. с этого моментаθ3θ_3иθ4θ_4все очень маленькие числа, близкие к 0, которые возвращаются в функцию предсказания,h(x)=θ0+θ1x+θ2x2+θ3x3+θ4x4θ0+θ1x+θ2x2h(x)=\theta_{0}+\theta_{1} x+\theta_{2} x^{2}+\theta_{3} x^{3}+\theta_{4} x^{4}≈ \тета_{0}+\тета_{1} х+\тета_{2} х^{2}, которая становится функцией второго порядка плюс некоторые элементы, которые не слишком малы, то последние два элемента можно игнорировать, если они особенно малы, и она возвращается к внешнему виду аппроксимации функции второго порядка.

image.png

Меньшее значение параметра θ означает более простую гипотетическую модель. Например, в приведенном выше примере после добавления штрафного элементаθ3θ_3иθ4θ_4Ближе к 0 мы получаем более простую гипотетическую модель (квадратичную к квадратичной).

Регуляризация:

Regularization.

Small values for parameters θ0,θ1,,θn\theta_{0}, \theta_{1}, \ldots, \theta_{n}.

  • "Simpler" hypothesis
  • Less prone to overfitting

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

J(θ)=12m[i=1m(hθ(x(i))y(i))2+λj=1nθj2]J(\theta)=\frac{1}{2 m}\left[\sum_{i=1}^{m}\left(h_{\theta}\left(x^{(i)}\right)-y^{(i)}\right)^{2}+\lambda \sum_{j=1}^{n} \theta_{j}^{2}\right]
  • λj=1nθj2\lambda \sum_{j=1}^{n} \theta_{j}^{2}- член регуляризации, роль которого заключается в уменьшении значения каждого параметра. отθ1\theta_1Начните, потому что тест доказывает, добавляете вы это или нетθ0\theta_0, окончательные результаты не сильно отличаются, так что в целом отθ1\theta_1Начать регуляризацию.
  • λ\lambda— это параметр регуляризации, который контролирует компромисс между двумя разными целями.
    • Первая цель: относится к первому элементу целевой функции, а именно к тому, как лучше соответствовать обучающему набору.
    • Вторая цель: сохранить как можно меньшие значения параметров и сохранить простую модель прогнозирования, связанную с регуляризацией.
  • λ\lambda: обратите внимание на выбор, вы можете подумать о предыдущей скорости обучения α
    • Если он слишком велик: мы слишком сильно наказываем эти параметры, в результате чего все параметры имеют значения, близкие к 0, тогда окончательная функция прогнозирования будет близка к постоянной функции.h(x)θ0ч(х)≈\тета_0, приведет к недообучению.
    image.png
    • Если слишком мало: наказание равнозначно отсутствию наказания.

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

Housing:

  • Features: x1,x2,,x100x_{1}, x_{2}, \ldots, x_{100}
  • Parameters: θ0,θ1,θ2,,θ100\theta_{0}, \theta_{1}, \theta_{2}, \ldots, \theta_{100}

Продолжаем прогнозировать цены на жилье, предполагая, что теперь имеется 100 собственных значений, 101 параметр θ и предполагая, что имеется 70 наборов тестовых данных.

Функция стоимости после регуляризации записывается как:J(θ)=12×70[i=170(hθ(x(i))y(i))2+λj=1100θj2]J(\theta)=\frac{1}{2 ×70}\left[\sum_{i=1}^{70}\left(h_{\theta}\left(x^{(i)}\right)-y^{(i)}\right)^{2}+\lambda \sum_{j=1}^{100} \theta_{j}^{2}\right]