Как проверить, хороша ли моя регрессионная модель

10

Один из способов найти точность модели логистической регрессии с использованием «glm» - это найти график AUC. Как проверить то же самое для регрессионной модели, найденной с переменной непрерывного ответа (family = 'gaussian')?

Какие методы используются для проверки соответствия моей регрессионной модели данным?

user1140126
источник
Возможно, вы захотите взглянуть на r-squaredтег и goodness-of-fitтег ..
Макро
2
«Гауссово» семейство с линейной связью - это обычная регрессия наименьших квадратов (OLS); Способы проверки таких припадков, вероятно, обсуждаются в тысячах вопросов на этом сайте (я не преувеличиваю).
whuber
Эта тема актуальна: stats.stackexchange.com/q/414349/121522
mkt - Восстановить Монику

Ответы:

15

Для начала я бы предложил краткий поиск по « диагностике модели линейной регрессии ». Но вот некоторые, которые я бы посоветовал вам проверить:

Убедитесь, что предположения удовлетворительно выполнены

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

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

  • Вы также можете изменить ось Y на остаточное . Этот график помогает выявить неравную дисперсию.2

  • Пересмотрите план исследования, чтобы убедиться в его разумности.

  • Получите коэффициент инфляции дисперсии (VIF) или статистику толерантности для изучения возможной коллинеарности.

Изучить потенциальные влиятельные точки

  • Проверьте статистику, такую ​​как Cook's D, DFits или DF Beta, чтобы узнать, сильно ли определенная точка данных меняет ваши результаты регрессии. Вы можете найти больше здесь .

Изучите изменения в статистике и скорректированнойR2R2

  • Будучи отношением суммы квадратов регрессии к общей сумме квадратов, может сказать вам, сколько% изменчивости в вашей зависимой переменной объясняется моделью.R2
  • Скорректированное можно использовать, чтобы проверить, действительно ли дополнительная сумма квадратов, приведенная к моему дополнительному предиктору (ам), действительно стоит тех степеней свободы, которые они получат.R2

Проверьте необходимое взаимодействие

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

Примените вашу модель к другому набору данных и проверьте ее производительность

  • Вы также можете применить формулу регрессии к другим отдельным данным и посмотреть, насколько хорошо они предсказывают. Хорошим началом может послужить график, подобный точечной диаграмме, и статистика, например, разница в% от наблюдаемого значения.
Penguin_Knight
источник
2
(+1): Очень полный ответ! Если вы используете R, plot.lmможете предоставить вам большинство диагностических графиков, которые упоминает Penguin_Knight.
Зак
4

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

Я не считаю R2 хорошей метрикой того, насколько хорошо ваша модель соответствует обучающим данным, так как почти любая метрика ошибок, рассчитанная на обучающих данных, будет склонна к чрезмерной подгонке. Если вам необходимо рассчитать R2 на тренировочном наборе, я предлагаю использовать скорректированный R2 .

Zach
источник
1

Вы можете использовать чтобы проверить, насколько хорошо ваша модель соответствует обучающим данным. Это скажет вам, какой процент дисперсии в данных объясняется моделью.R2

Я предлагаю использовать RMSE (среднеквадратичная ошибка) ваших прогнозов в тестовом наборе по сравнению с фактическим значением. Это стандартный метод сообщения об ошибке предсказания непрерывной переменной.

BGreene
источник
1
@Macro Но вопрос изначально задавался для метрики производительности для регрессии OLS с гауссовыми ошибками. Он исходит из логистической регрессии.
Эрик
@ Эрик, спасибо, я неправильно прочитал. Во всяком случае, что касается первой части, я не думаю, что , в отдельности, можно использовать, чтобы «проверить, хороша ли моя регрессионная модель», чтобы использовать слова ОП. Ваша модель может с треском провалиться для эффективного прогнозирования на подавляющем большинстве данных, сохраняя при этом высокое . Смотрите здесь для примера - в примере (1), почти нет предсказательной силы, но все еще высока. R 2 R 2R2R2R2
Макро
@Macro, я согласен с вашими комментариями, но стремился к простому объяснению, чтобы указать OP в правильном направлении
BGreene
0

Я привык проверять функциональную форму моего оценщика параметров, нанося непараметрическую (например, регрессию ядра) или полупараметрическую оценку и сравнивая ее с параметрически подобранной кривой. Я думаю, что это на первом этапе часто быстрее (и, возможно, более проницательно), чем включение условий взаимодействия или условий более высокого порядка.

Пакет R np предоставляет много хороших непараметрических и полупараметрических функций, и его виньетка хорошо написана: http://cran.r-project.org/web/packages/np/vignettes/np.pdf

Арне Йонас Варнке
источник