Переобучение: сложность модели

В предыдущем модуле была представлена ​​следующая модель, которая неверно классифицировала множество деревьев в тестовом наборе:

Рисунок 16. То же изображение, что и на рисунке 13. Это сложная форма, из-за которой многие деревья неправильно классифицируются.
Рисунок 16. Сложная модель с неправильным поведением из предыдущего раздела.

Предыдущая модель содержит множество сложных форм. Будет ли более простая модель лучше обрабатывать новые данные? Предположим, вы заменяете сложную модель до смешного простой — прямой линией.

Рисунок 17. Модель с прямыми линиями, которая отлично справляется с отделением больных деревьев от здоровых.
Рисунок 17. Гораздо более простая модель.

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

Простота уже давно побеждает сложность. На самом деле предпочтение простоты восходит к Древней Греции. Столетия спустя монах четырнадцатого века по имени Уильям Оккам формализовал предпочтение простоты в философии, известной как бритва Оккама . Эта философия остается важнейшим основополагающим принципом многих наук, включая машинное обучение.

Упражнения: проверьте свое понимание

Вы разрабатываете уравнение физики. Какая из следующих формул больше соответствует бритве Оккама?
Формула с тремя переменными.
Формула с двенадцатью переменными.
Вы участвуете в совершенно новом проекте машинного обучения и собираетесь выбрать свои первые функции. Сколько функций следует выбрать?
Выберите как можно больше функций, чтобы начать наблюдать, какие функции обладают наибольшей прогностической силой.
Выберите 1–3 признака, которые обладают сильной предсказательной силой.
Выберите 4–6 признаков, которые обладают сильной предсказательной силой.

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

Модели машинного обучения должны одновременно преследовать две противоречивые цели:

  • Хорошо согласуйте данные.
  • Сопоставьте данные как можно проще.

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

Потери и сложность

До сих пор в этом курсе предполагалось, что единственной целью тренировки является минимизация потерь; то есть:

minimize(loss)

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

minimize(loss + complexity)

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

Что такое сложность?

Вы уже видели несколько различных способов количественной оценки потерь. Как бы вы оценили сложность? Начните свое исследование со следующего упражнения:

Упражнение: проверьте свою интуицию

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