Это 22-й день моего участия в августовском испытании обновлений.Подробности о событии:Испытание августовского обновления
В некоторых задачах регрессии возникает проблема переобучения, что приводит к их плохой производительности.
Что такое переоснащение?
Для проблемы цен на жилье в линейной регрессии мы даем набор данных:
Если вам это подходит:
Можно ясно видеть, что эффект подгонки от этого нехороший, мы называем это недообучением или высоким смещением.
Хорошо подходит для второго порядка.
Но если используется полином 4-го порядка, который, кажется, идеально соответствует данным, потому что кривая проходит через все точки данных, но мы субъективно знаем, что он плохо соответствует данным, эта ситуация называется переобучением или высокой дисперсией. .
То же самое касается логистической регрессии:
Overfitting: If we have too many features, the learned hypothesis may fit the training set very well , but fail to generalize to new examples (predict prices on new examples).
Проблема переобучения, как правило, возникает, когда имеется много переменных x, что является предположением о том, что обучение хорошо соответствует обучающему набору, поэтому ваша функция стоимости очень близка к 0. Но вы можете получить кривую, которая так старается соответствовать данным выборки, что не может обобщить ее на новые выборки.
Обобщение — это способность гипотетической модели применяться к новым образцам.
Есть два решения переоснащения:
- Reduce number of features
- Manually select which features to keep
- Алгоритм выбора модели (позже в курсе)
- Уменьшить количество выбранных переменных
- Ручной выбор переменных для сохранения
- Алгоритм выбора модели, который автоматически выбирает, какие функции оставить, а какие отбросить.
Недостаток этого метода в том, что вам нужно отказаться от некоторых количеств признаков, что означает, что вы отказываетесь от некоторой информации о проблеме. Например, возможно, все переменные признаков полезны, и мы не можем отбрасывать их по своему желанию.
-
Regularization
- Keep all the features but reduce magnitude /values of parameters
- Works well when we have a lot of features, each of which contributes a bit to predicting y
-
Регуляризация
- Сохраните все переменные функции, но уменьшите величину или параметрыразмер
- Это работает очень хорошо, когда у нас много функций, каждая из которых будет иметь небольшое влияние на прогнозируемое значение y.
Регуляризация
Вернемся к этому вопросу снова:
Его можно приспособить ко второму порядку, и эффект хороший.
Однако переобучение происходит на более высоких порядках.
Для этого примера мы знаемине нужно, тогда мыШтрафной член добавляется к функции стоимости , так чтоистать очень маленьким.
Как сделать эти два слагаемых очень маленькими, как добавить «штрафной срок»: добавить к этим двум слагаемым огромный коэффициент после функции стоимости, например прибавить 1000. Тогда функция стоимости этих двух терминов принимает вид:, дополнительная часть сзади - это "предмет наказания".
Для чего используется функция стоимости? Найдите минимальное значение и используйте значение θ, когда минимальное значение получено в качестве функции прогнозирования.θ из .
После добавления штрафного члена с двумя коэффициентами 1000, как функция стоимости может получить меньшее значение? тогда нужноистановится чрезвычайно малым, даже близким к 0. с этого моментаивсе очень маленькие числа, близкие к 0, которые возвращаются в функцию предсказания,, которая становится функцией второго порядка плюс некоторые элементы, которые не слишком малы, то последние два элемента можно игнорировать, если они особенно малы, и она возвращается к внешнему виду аппроксимации функции второго порядка.
Меньшее значение параметра θ означает более простую гипотетическую модель. Например, в приведенном выше примере после добавления штрафного элементаиБлиже к 0 мы получаем более простую гипотетическую модель (квадратичную к квадратичной).
Регуляризация:
Regularization.
Small values for parameters .
- "Simpler" hypothesis
- Less prone to overfitting
Идея регуляризации заключается в том, что когда мы добавляем штрафные условия ко всем параметрам, это эквивалентно максимальному упрощению гипотетической модели. Потому что чем больше значений параметров близких к 0, тем более гладкой и простой будет модель предсказания, которую мы получим.
- - член регуляризации, роль которого заключается в уменьшении значения каждого параметра. отНачните, потому что тест доказывает, добавляете вы это или нет, окончательные результаты не сильно отличаются, так что в целом отНачать регуляризацию.
-
— это параметр регуляризации, который контролирует компромисс между двумя разными целями.
- Первая цель: относится к первому элементу целевой функции, а именно к тому, как лучше соответствовать обучающему набору.
- Вторая цель: сохранить как можно меньшие значения параметров и сохранить простую модель прогнозирования, связанную с регуляризацией.
-
: обратите внимание на выбор, вы можете подумать о предыдущей скорости обучения α
- Если он слишком велик: мы слишком сильно наказываем эти параметры, в результате чего все параметры имеют значения, близкие к 0, тогда окончательная функция прогнозирования будет близка к постоянной функции., приведет к недообучению.
- Если слишком мало: наказание равнозначно отсутствию наказания.
Предыдущий пример просто заимствовал идею регуляризации, чтобы рассказать вам, как уменьшить параметр θ, Теперь давайте возьмем пример регуляризации:
Housing:
- Features:
- Parameters:
Продолжаем прогнозировать цены на жилье, предполагая, что теперь имеется 100 собственных значений, 101 параметр θ и предполагая, что имеется 70 наборов тестовых данных.
Функция стоимости после регуляризации записывается как: