Как бороться с переобучением
Вопрос
Модель переобучилась. Перечислите, как вы это диагностируете и какие есть способы борьбы.
Попробуйте сами
Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.
Показать ответ и разбор
Коротко
Что должно прозвучать в ответе
Диагностика: разрыв трейн и валидации, кривые обучения
Больше данных или аугментации
Регуляризация: L1/L2, dropout, ограничение глубины деревьев
Упростить модель или убрать шумные признаки
Early stopping и ансамблирование
Что могут спросить следом
- Как понять, что разрыв вызван утечкой, а не переобучением?
- Почему бэггинг снижает variance?
Разбор
Сначала убеждаюсь, что это переобучение: ошибка на трейне заметно ниже валидационной, а на кривых обучения валидационная ошибка перестаёт падать или растёт. Ещё проверяю, что валидация честная, без утечек и с правильным разбиением. Способы борьбы: больше данных или аугментации, если данные картинки или тексты; регуляризация (L1 и L2 для линейных моделей, ограничение глубины, минимальное число объектов в листе и subsampling для деревьев, dropout и weight decay для сетей); упрощение модели и отбор признаков; early stopping по валидации; ансамбли вроде бэггинга, которые усредняют разброс отдельных моделей.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.