Как обнаружить переобучение в машинном обучении для регрессии

Вопрос или проблема

Я применил Xgboost к своему набору данных, который включает около 50 000 наблюдений. Я разделил набор данных на 80/20 и использовал 5-кратную кросс-валидацию. Ниже приведены результаты:

Обучающая выборка
R$^2$: 0.985
MAE: 0.083
MSE: 0.015
MAPE: 2.944%
RMSE: 0.124

Тестовая выборка
R$^2$: 0.956
MAE: 0.120
MSE: 0.044
MAPE: 4.090%
RMSE: 0.209

5-кратная кросс-валидация
Точность на обучающей выборке: 0.942
Точность на тестовой выборке: 0.937

Несоответствия среди четырех оценочных метрик больше, чем у точности. Должен ли я отдавать предпочтение оценочным метрикам или результатам кросс-валидации? Существуют ли общие рекомендации, указывающие на то, что если разница превышает определенный порог, это может сигнализировать о переобучении?

Ответ или решение

Для определения переобучения (overfitting) в модели машинного обучения, особенно для задач регрессии, необходимо внимательно проанализировать результаты, которые вы представили. Рассмотрим различные аспекты, которые могут помочь в диагностике переобучения.

1. Связь между обучающей и тестовой выборками

Сравните результаты на обучающем и тестовом наборах данных. В вашем случае:

  • R² на обучающем наборе равен 0.985, а на тестовом — 0.956.
  • MAE на обучающем — 0.083, а на тестовом — 0.120.
  • MSE на обучающем — 0.015, а на тестовом — 0.044.
  • RMSE на обучающем — 0.124, а на тестовом — 0.209.

Сравнение этих метрик указывает на то, что модель хорошо работает на обучающей выборке, но производительность на тестовом наборе хуже. Самая высокая разница наблюдается в MAE и RMSE, что может быть признаком переобучения.

2. Результаты кросс-валидации

Вы упомянули, что используете 5-кратную кросс-валидацию, которая показала:

  • Точность на обучающей выборке: 0.942.
  • Точность на тестовой выборке: 0.937.

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

3. Разница в метриках — критерий переобучения

Существуют общие рекомендации по оценке разницы между метриками на обучающем и тестовом наборах:

  • Если разница в R² превышает 0.1, это может быть красным флагом для переобучения.
  • Для MAE и RMSE, разница более 10-20%, также может предпочтительно сигнализировать о переобучении.

В вашем случае разница в R² составляет около 0.029, что не является критичным, однако MAE и RMSE имеют более значительные расхождения, что может указывать на проблему.

4. Дополнительные методы и диагностика

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

  • Изучение гиперпараметров модели: Проверьте выбранные гиперпараметры XGBoost. Они могут быть настроены слишком агрессивно. Попробуйте использовать регуляризацию (например, L1 или L2) для уменьшения сложности модели.

  • Использование простых моделей: Попробуйте обучить более простую модель, например, линейную регрессию, и сравнить результаты. Если простая модель демонстрирует схожие или даже лучшие результаты на тестовых данных, это может подтвердить переобучение более сложной модели.

5. Заключение

Суммируя, ваши результаты могут указывать на легкое переобучение модели, особенно если учитывать большие расхождения в метриках, таких как MAE и RMSE. Рекомендуется провести дополнительные эксперименты с гиперпараметрами и, возможно, использовать более простые модели для сравнения. Важно не полагаться исключительно на одну метрику, а рассматривать комплексный подход для оценки производительности вашей модели.

Оцените материал
Добавить комментарий

Капча загружается...