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