Почему переобучение — практическая проблема для рекомендаций

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

В e-commerce это выглядит как:
— Рекомендации «залипли» на хитах продаж полугодовой давности
— Пользователю снова и снова рекомендуют уже купленный товар
— Новые товары в каталоге не попадают в рекомендации (модель их не «видела» при обучении)

Компромисс смещение–дисперсия

Простая модель:       высокое смещение (bias) → недообучение
Сложная модель:       высокая дисперсия (variance) → переобучение
Оптимальная модель:   баланс между bias и variance

Задача обучения — найти «сладкую точку», где модель уловила настоящие паттерны, но не выучила шум.

Методы борьбы с переобучением

Регуляризация — добавление штрафа на сложность модели (L1, L2, Dropout в нейронных сетях). Не даёт отдельным весам становиться слишком большими.

Правильный сплит данных — разделение на train/validation/test без утечки данных будущего в обучение. В рекомендациях важен temporal split: обучать на прошлом, тестировать на следующем периоде.

Early stopping — остановка обучения нейронной сети, когда метрика на валидационной выборке перестаёт улучшаться.

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

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