TGViewer
Модель предскажет Модель предскажет @modprod · 390 subscribers
Post #15 256
Переобучение: почему ваша модель врёт и что с этим делать

Привет! На связи Мария Жарова, ML-инженер в команде рекомендаций в Wildberries 👋🏻

Представьте ситуацию: вы обучили модель, на трейне — почти идеальная точность, а на новых данных всё разваливается… Значит, вы столкнулись с переобучением 🙂

Что это вообще такое?

Переобучение — это когда модель слишком хорошо запоминает обучающую выборку и перестаёт обобщать закономерности на новые данные. Как школьник, который «зазубрил» правильные ответы, а похожую задачу решить не может.


Классический сигнал переобучения:
🟠 На тренировочных данных ошибка падает;
🟠 На валидационных данных начинает расти.

В классическом (и не только) ML причины, как правило, делятся на две группы: либо проблема в данных (мультиколлинеарность, много дубликатов или маленький объем), либо в модели (слишком сложная или неподходящая архитектура, не те гиперпараметры).

Как с этим бороться?

Существует целая группа методов борьбы с переобучением — регуляризация. Разберём основные подходы.


1️⃣ Штраф на большие веса

Один из сигналов, что модель переобучается в случае линейной модели или нейросети — большие коэффициенты весов. Так давайте просто добавим штраф к функции потерь, чтобы в интересах модели было не только уменьшать значение ошибки, но и не делать веса слишком большими по модулю!

Существует несколько разных подходов: L1 (Lasso), L2 (Ridge) и их комбинация (Elastic Net), вот псевдокод вариантов этого «добавочного» слагаемого:

alpha * sum(abs(w))       # добавка к loss при L1
alpha * sum(w**2) # добавка к loss при L2


2️⃣ Ранняя остановка обучения

Иногда переобучение возникает из-за слишком долгого обучения. В таком случае важно поймать момент, когда метрики на обучении и валидации начинают «разъезжаться» — и можно сделать это автоматически, просто периодически проверяя разницу между ними.

3️⃣ Больше данных (или их имитация)

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

4️⃣ «Упрощение» модели

Иногда проблема не в данных, а в том, что вы чересчур усложнили модель. Для разных архитектур приемы её «упрощения» отличаются, вот несколько примеров:

➖ Уменьшить глубину дерева;
➖ Уменьшить число обучаемых параметров;
➖ Попробовать в принципе более простую архитектуру.

Так что переобучение — это не баг, а естественное поведение модели. И ваша задача — держать его под контролем.

Ставьте ❤️, если было полезно — и сохраняйте, чтобы не потерять!
  • ❤ 9
  • 👍 5
  • 🔥 4
More from @modprod
  1. Sep 22, 2026Post #79
  2. Sep 22, 2026Post #78
  3. Sep 22, 2026Post #77
  4. Sep 22, 2026Всем привет! Небольшой опрос нашей аудитории — пожалуйста, ответьте на несколько вопросов…
  5. Sep 7, 2026🔥 Новый поток интенсива по ML 9-16 сентября пройдёт следующий поток ML-интенсива с ментор…
  6. Sep 1, 2026Между тем, как выглядит ML в курсах и соревнованиях, и тем, как он устроен в реальной повс…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →