Интерпретация сюжета (глм.модель)


30

Может кто-нибудь сказать мне, как интерпретировать графики «остатки против подгонки», «нормальный q-q», «масштаб-местоположение» и «остатки против плеча»? Я подгоняю биномиальный GLM, сохраняю его и затем строю.


4
Знаете ли вы, как интерпретировать эти графики при работе с регулярной линейной регрессией? Потому что это должно быть вашей отправной точкой.
Стив С.

Ответы:


55

Rне имеет определенного plot.glm()метода. Когда вы подгоняете модель glm()и запускаете ее plot(), она вызывает ? Plot.lm , что подходит для линейных моделей (т. Е. С нормально распределенным термином ошибки).

В общем, значение этих графиков (по крайней мере, для линейных моделей) можно узнать в различных существующих потоках CV (например: остатки и подогнанные ; qq-графики в нескольких местах: 1 , 2 , 3 ; масштабное местоположение ; остатки против плеча ). Тем не менее, эти интерпретации обычно не действительны, когда рассматриваемая модель представляет собой логистическую регрессию.

Точнее говоря, сюжеты часто «выглядят смешно» и наводят людей на мысль, что с моделью что-то не так, когда она совершенно в порядке. Мы можем увидеть это, посмотрев на эти графики с помощью пары простых симуляций, где мы знаем, что модель верна:

  # we'll need this function to generate the Y data:
lo2p = function(lo){ exp(lo)/(1+exp(lo)) }

set.seed(10)                    # this makes the simulation exactly reproducible
x  = runif(20, min=0, max=10)   # the X data are uniformly distributed from 0 to 10
lo = -3 + .7*x                  # this is the true data generating process
p  = lo2p(lo)                   # here I convert the log odds to probabilities
y  = rbinom(20, size=1, prob=p) # this generates the Y data

mod = glm(y~x, family=binomial) # here I fit the model
summary(mod)                    # the model captures the DGP very well & has no
# ...                           #  obvious problems:
# Deviance Residuals: 
#      Min        1Q    Median        3Q       Max  
# -1.76225  -0.85236  -0.05011   0.83786   1.59393  
# 
# Coefficients:
#             Estimate Std. Error z value Pr(>|z|)  
# (Intercept)  -2.7370     1.4062  -1.946   0.0516 .
# x             0.6799     0.3261   2.085   0.0371 *
# ...
# 
# Null deviance: 27.726  on 19  degrees of freedom
# Residual deviance: 21.236  on 18  degrees of freedom
# AIC: 25.236
# 
# Number of Fisher Scoring iterations: 4

Теперь давайте посмотрим на графики, которые мы получаем plot.lm():

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

И график, Residuals vs Fittedи Scale-Locationграфик выглядят так, как будто есть проблемы с моделью, но мы знаем, что их нет. Эти графики, предназначенные для линейных моделей, просто часто вводят в заблуждение при использовании с моделью логистической регрессии.

Давайте посмотрим на другой пример:

set.seed(10)
x2 = rep(c(1:4), each=40)                    # X is a factor with 4 levels
lo = -3 + .7*x2
p  = lo2p(lo)
y  = rbinom(160, size=1, prob=p)

mod = glm(y~as.factor(x2), family=binomial)
summary(mod)                                 # again, everything looks good:
# ...
# Deviance Residuals: 
#   Min       1Q   Median       3Q      Max  
# -1.0108  -0.8446  -0.3949  -0.2250   2.7162  
# 
# Coefficients:
#                Estimate Std. Error z value Pr(>|z|)    
# (Intercept)      -3.664      1.013  -3.618 0.000297 ***
# as.factor(x2)2    1.151      1.177   0.978 0.328125    
# as.factor(x2)3    2.816      1.070   2.632 0.008481 ** 
# as.factor(x2)4    3.258      1.063   3.065 0.002175 ** 
# ... 
# 
# Null deviance: 160.13  on 159  degrees of freedom
# Residual deviance: 133.37  on 156  degrees of freedom
# AIC: 141.37
# 
# Number of Fisher Scoring iterations: 6

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

Теперь все сюжеты выглядят странно.

Так что эти графики показывают вам?

  • Residuals vs FittedУчасток может помочь вам увидеть, например, если есть криволинейные тенденции , которые вы пропустили. Но соответствие логистической регрессии по своей природе является криволинейным, поэтому вы можете иметь странные тренды в остатках без каких-либо проблем.
  • Normal Q-QСюжет поможет вам определить , если ваши остатки нормально распределены. Но для того, чтобы модель была действительной, не нужно нормально распределять остатки отклонения, поэтому нормальность / ненормальность остатков не обязательно вам что-то говорит.
  • Scale-LocationУчасток может помочь вам определить гетероскедастичности. Но модели логистической регрессии в значительной степени гетероскедастичны по своей природе.
  • Residuals vs LeverageМожет помочь вам определить возможные выбросы. Но выбросы в логистической регрессии не обязательно проявляются так же, как в линейной регрессии, поэтому этот график может или не может быть полезным для их идентификации.

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


5
Боже мой, это удивительный ответ.
d8aninja

@ Gung Не могли бы вы сказать, что мы можем сделать, если это GLM? Есть ли альтернатива QQ, Residual vs Fitted? Например, я нарисовал пуассоновскую ссылку GLM, но я не знаю, как анализировать, подходит ли она
GRS

2
@ GRS, попробуйте прочитать это .
gung - Восстановить Монику

@ Все ваши ответы подробны и понятны. Помимо чтения из нескольких источников, включая этот сайт, можете ли вы сослаться на одну или две хорошие книги / сайты, чтобы получить «значительный опыт» в понимании диагностических сюжетов? Я понимаю, что некоторые навыки, которые мы можем получить только с практикой и опытом, но если какая-то конкретная книга / веб-сайт подробно освещают детали, если вы можете ссылаться, это было бы очень полезно.
Доктор Ниша Арора

@DrNishaArora, не совсем то, что я знаю. Есть несколько книг, которые имеют отношение к ЛР, но они не собираются тратить много времени на эти сюжеты по указанным причинам.
gung - Восстановить Монику

0
  1. Остатки против подгонки - не должно быть сильных закономерностей (мягкие узоры не проблема, см. Ответ @ gung) и не должно быть выбросов, остатки должны быть случайным образом распределены вокруг нуля.
  2. Обычный QQ - остатки должны идти вокруг диагональной линии, то есть должны быть нормально распределены (см. Вики для графика QQ ). Этот график помогает проверить, являются ли они приблизительно нормальными.
  3. Scale-location - как вы можете видеть, на оси Y также есть остатки (как в Residuals против подогнанного графика), но они масштабируются, так что это похоже на (1), но в некоторых случаях это работает лучше.
  4. Остатки против плеча - это помогает диагностировать отдаленные случаи. Как и на предыдущих графиках, внешние случаи нумеруются, но на этом графике, если есть какие-либо случаи, которые сильно отличаются от остальных данных, они отображаются ниже тонких красных линий (проверьте вики на расстоянии Кука ).

Узнайте больше о допущениях регрессии, поскольку во многих аспектах они похожи (например, здесь , или учебник по регрессии в R здесь ).


2
Этот ответ неверен в контексте glm, также изложенного @gung в ответе выше. Если вы ищете ответ на этот вопрос, игнорируйте этот ответ. Если вы являетесь автором этого ответа, проверьте ответ выше gung. Если вы согласны с этим, вам следует рассмотреть возможность удаления этого ответа, поскольку он вводит в заблуждение.
Колин

@colin, не могли бы вы прокомментировать, что именно на ваш взгляд не так с этим ответом? Единственная разница между моим ответом и вторым ответом состоит в том, что gung вдавается в подробности ...
Тим

3
Вы описываете, как эти графики следует использовать в контексте линейной регрессии. Ганг описывает, почему эти интерпретации терпят неудачу в этом случае, потому что они применяются к биномиальной модели glm. Таким образом, если пользователь интерпретирует эти диагностические графики так, как вы предлагаете (и ваши предложения будут полезны в случае lm), они ошибочно заключат, что их модель нарушает допущения glm, тогда как в действительности это не так.
Колин

Вы пишете: «Остатки против подгонки - не должно быть шаблонов и выбросов, остатки должны быть случайным образом распределены вокруг нуля». gung пишет: «График Residuals vs Fitted может помочь вам увидеть, например, есть ли пропущенные криволинейные тренды. Но аппроксимация логистической регрессии по своей природе является криволинейной, так что вы можете иметь странные тренды в остатках, не имея ничего неладно «. ... один из вас должен быть неправ.
Колин

2
Я согласен, это не черно-белый, но есть много случаев, когда есть сильные тренды, но указанная модель полностью соответствует предположениям конкретного glm. Следовательно, утверждая, что «не должно быть шаблонов и выбросов, остатки должны быть случайным образом распределены вокруг нуля». Легко интерпретировать, что если есть шаблон, вы нарушили предположения модели. Это не вариант.
Колин
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.