Регрессия – Модель в целом выглядит хорошо, но R2 неожиданно отрицательно высок.

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

Я строил модель линейной регрессии с около 150 строками данных. Я проверил корреляцию параметров с целевой переменной и попытался оставить только их, так как у меня меньше данных, и я хотел получить простую линейную модель.

MAE и MAPE действительно достаточно приемлемы:

MAE на обучающей выборке: 3.3%, MAE на валидационной выборке: 4.9%

График обучающих и валидационных данных также выглядит вполне достойно, синяя линия представляет собой фактические значения для обучающих данных, а оранжевая линия представляет собой предсказанные значения на обучающих данных. Зеленая линия представляет собой фактические значения для валидационных данных, а красная линия представляет собой предсказанные значения:

вставьте описание изображения здесь

Тем не менее, мои:

R2 на обучающей выборке: 0.63, R2 на валидационной выборке: -0.37

Я искал по многим ресурсам, спрашивал Google Gemini ChatGPT, получал похожие ответы, но я всё ещё не могу понять, почему мой R2 получается таким странным, когда всё остальное выглядит нормально. Можем ли мы использовать эту модель для внедрения или вывода в реальном мире?

Пожалуйста, обратите внимание: я также пробовал Random Forest, LightGBM, XGBoost и многие другие линейные и модели с бэггингом/усилением, результаты практически аналогичны. График выглядит нормально, MAE, MAPE выглядят хорошо, но R2 не в обычном диапазоне.

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

Понимание Показателя R² и Его Необычного Значения

Вы на правильном пути в своем анализе линейной регрессии, но столкнулись с интересной проблемой. Показатель R², который представляет собой процент объясненной вариации зависимой переменной моделью, в идеале должен быть в диапазоне от 0 до 1 для хорошей модели. Однако, когда ваше значение R² отрицательное (например, -0.37), это может вызвать недоумение, особенно когда другие метрики, такие как MAE и MAPE, показывают достойные результаты.

Оценка Показателя R²

Рассмотрим, откуда берется это значение:

  1. Основное Определение R²: R² рассчитывается как 1 минус отношение суммы квадратов остатков к общей сумме квадратов. Если модель не лучше, чем простая модель, основанная на среднем значении зависимой переменной, R² станет отрицательным.
  2. Нехорошая Модель: Отрицательное значение R² может указывать на отсутствие связи между независимыми переменными и целевой переменной. Ваши выборки могли просто не иметь достаточной предсказательной силы.

Возможные Причины Низкого Значения R²

  1. Проблемы с Датасетом:

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

    • Ваши результаты для R² могут указывать на возможность переобучения модели на тренировочных данных, что может привести к плохой общей производительности на валидационных данных.
  3. Природа Целевой Переменной:

    • Посмотрите на распределение вашей целевой переменной. Если оно слишком скошенное или имеет ненормальное распределение, это может повлиять на вашу способность предсказать значения адекватно.

Что Можно Сделать?

  1. Проверка Данных и Предобработка:

    • Убедитесь в отсутствии пропущенных значений и выбросов.
    • Проведите анализ на наличие линейной зависимости между зависимой и независимыми переменными. Используйте визуализацию (например, на графиках рассеяния).
  2. Модели и Методологии:

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

    • Используйте кросс-валидацию для более стабильной оценки производительности модели, что может помочь в выявлении проблем с переобучением.

Заключение

Хотя ваш MAE и MAPE разумные, отрицательный R² предупреждает об определенных проблемах в модели. И хотя, теоретически, возможно, что эта модель может использоваться в реальных условиях, вам следует быть осторожным и стремиться к улучшению модели. Поняв, где могут возникать проблемы, и применив предложенные стратегии, вы сможете добиться лучших результатов, что сделает вашу модель более надежной и эффективной для применения.

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

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