Переобучение

Материал из Викиконспекты
Перейти к: навигация, поиск

Переобучение (англ. overfitting, high variance) — негативное явление, возникающее, когда величина средней ошибки обученного алгоритма на объектах тестовой выборки оказывается существенно выше, чем величина средней ошибки на обучающей выборке. Переобучение возникает при использовании избыточно сложных моделей.
Недообучение (англ. underfitting, high bias) — негативное явление, возникающее, когда алгоритм обучения не обеспечивает достаточно малой величины средней ошибки на обучающей выборке. Недообучение возникает при использовании недостаточно сложных моделей.

Примеры

На примере линейной регрессии

Представьте задачу предсказания [math]y[/math] по [math]x \in R[/math]. Рис 1 показывает результат использования модели [math]y=θ_0+θ_1*x[/math] для представленного датасета. Как видно из Рис 1 данные не поддаются линейной зависимости и по этой причине модель не очень хороша.

Рис 1. Недообучение
Рис 2. Модель подходит
Рис 3. Переобучение

Если же добавить дополнительный параметр [math]x^2[/math], и использовать модель [math]y=θ_0+θ_1*x+θ_2*x^2[/math], как представлено на Рис 2, то модель значительно лучше подходит для представленного датасета. Рис 3 показывает результат использования модели [math]y=θ_0+θ_1*x+θ_2*x^2+θ_3*x^3+θ_4*x^4[/math] для представленного датасета. Как видно из Рис 3 данная модель слишком заточена для обучающего датасета и, веротяно, покажет плохой результат на тестовой.

На примере логистической регрессии

Представьте задачу классификации размеченых точек. Рис 4 показывает результат использования модели [math]g(θ_0+θ_1*x_1+θ_2*x_2)[/math] для представленного датасета. Как и в предыдущем примере, данные не поддаются классификации по линейной зависимости.

Рис 4. Недообучение
Рис 5. Модель подходит
Рис 6. Переобучение

В случае же выбора модели [math]g(θ_0+θ_1*x_1+θ_2*x_2+θ_3*x_1^2+θ_4*x_2^2+θ_5*x_1*x_2)[/math], представленой на Рис 5, данные значительно лучше соответствуют модели. Рис 6 показывает результат использования модели [math]g(θ_0+θ_1*x_1+θ_2*x_1^2+θ_3*x_2*x_1^2+θ_4*x_1^2*x_2^2 + ...)[/math] для представленного датасета — это яркий пример явления переобучения.

Кривые обучения

Кривые обучения при переобучении

Кривые обучения при переобучении

Кривые обучения при недообучении

Кривые обучения при недообучении

Возможные решения

Возможные решения при переобучении

  • Увеличение данных датасета
  • Уменьшение количества параметров
  • Добавление регуляризации / увеличение коэффициента регуляризации

Возможные решения при недообучении

  • Добавление новых параметров
  • Использование для описания модели функций с более высокой степенью
  • Уменьшение коэффициента регуляризации

См. также

Примечания

Источники информации