Встречается на собеседованиях • сегодня

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

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

  1. Высокая точность на трейне, но низкая на тесте (например, 99% vs 60%)
  2. Слишком сложная модель (много параметров) для объема данных

Способы обнаружения:

  • Разделение данных на train/val/test
  • Кросс-валидация
  • Мониторинг метрик на валидации

Пример с кодом:

python
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3)

model = RandomForestClassifier(n_estimators=1000)  # потенциально переобученная
model.fit(X_train, y_train)

print(f"Train score: {model.score(X_train, y_train):.2f}")  # 1.0
print(f"Test score: {model.score(X_test, y_test):.2f}")    # 0.65

Методы борьбы:

  • Регуляризация
  • Упрощение модели
  • Увеличение данных
  • Ранняя остановка
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы