ММООЗЗГГ.ru

Словарь ИИ

Что такое переобучение

Коротко

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

Машинное обучение · overfitting

Михаил МозгПроверено: 1 минута чтения

Ребенку

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

Простыми словами

Модель учат на примерах, чтобы потом она справлялась с похожими, но новыми случаями. Иногда она учится слишком старательно: запоминает не общее правило, а каждую мелочь конкретных примеров, даже случайный шум. На знакомых данных такая модель показывает отличный результат, а на новых ошибается. Заметить это просто: часть примеров заранее прячут и проверяют модель на них. Если там результат намного хуже, модель переобучилась. Так студент сдает пробный тест на отлично, потому что видел его раньше, а на настоящем экзамене проваливается.

Для бизнеса

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

Для специалиста

Переобучение (overfitting) это состояние, когда модель достигает малой ошибки на обучающей выборке, но ошибка на новых данных (ошибка обобщения, generalization error) заметно выше. Причина в избыточной емкости модели относительно объема и разнообразия данных: она аппроксимирует шум. В терминах смещения и дисперсии (bias-variance tradeoff) это высокая дисперсия; противоположный случай называют недообучением (underfitting). Диагностика: кривые обучения и разрыв метрик между train и validation. Методы борьбы: регуляризация L1 и L2 (weight decay), dropout, ранняя остановка по валидационной метрике, аугментация данных, увеличение выборки, упрощение архитектуры, кросс-валидация при выборе модели. Dropout описали Srivastava, Hinton и соавторы (JMLR, 2014): при обучении нейроны случайно отключают, и они перестают подстраиваться друг под друга. Zhang и соавторы (ICLR 2017) показали, что сверточные сети легко подгоняются даже под случайные метки, поэтому низкая ошибка на обучении сама по себе не доказывает способность к обобщению.

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

Пример

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

Связанные термины

Вопросы и ответы

Как понять, что модель переобучилась?

Сравните качество на обучающих данных и на отложенных, которые модель не видела. Если на обучении результат высокий, а на проверке заметно ниже, это переобучение.

Как избежать переобучения?

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

Источники

Где это применяют в компании

Не уверены, нужно ли это вашей компании?

Карта ИИ-решений
Написать в Telegram