Interpretacja fabuły (glm.model)

30

Czy ktoś może mi powiedzieć, jak interpretować wykresy „reszty vs dopasowanie”, „normalne q-q”, „lokalizacja skali” i „reszty vs dźwignia”? Dopasowuję dwumianowy GLM, zapisuję go, a następnie kreślę.

Lato
źródło
4
Czy wiesz, jak interpretować te wykresy, mając do czynienia z regularną regresją liniową? Ponieważ to powinien być twój punkt wyjścia.
Steve S

Odpowiedzi:

55

Rnie ma odrębnej plot.glm()metody. Po dopasowaniu glm()i uruchomieniu modelu plot()wywołuje on ? Plot.lm , co jest odpowiednie dla modeli liniowych (tzn. Z normalnie rozkładanym terminem błędu).

Ogólnie, znaczenia tych wykresów (przynajmniej dla modeli liniowych) można nauczyć się w różnych istniejących wątkach na CV (np .: Resztki vs. Dopasowane ; Wykresy qq w kilku miejscach: 1 , 2 , 3 ; Skala-lokalizacja ; Resztki vs dźwignia ). Jednak interpretacje te nie są zasadniczo ważne, gdy dany model jest regresją logistyczną.

Mówiąc dokładniej, fabuły często „wyglądają śmiesznie” i prowadzą ludzi do przekonania, że ​​coś jest nie tak z modelem, gdy jest on w porządku. Możemy to zobaczyć, patrząc na te wykresy za pomocą kilku prostych symulacji, w których wiemy, że model jest poprawny:

  # 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

Teraz spójrzmy na wykresy, które otrzymujemy plot.lm():

wprowadź opis zdjęcia tutaj

Zarówno wykresy, jak Residuals vs Fittedi Scale-Locationwykresy wyglądają, jakby były problemy z modelem, ale wiemy, że nie ma żadnych. Te wykresy, przeznaczone dla modeli liniowych, są po prostu często mylące, gdy są używane z modelem regresji logistycznej.

Spójrzmy na inny przykład:

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

wprowadź opis zdjęcia tutaj

Teraz wszystkie działki wyglądają dziwnie.

Co więc pokazują te fabuły?

  • Residuals vs FittedFabuła może pomóc zobaczyć, na przykład, czy są krzywoliniowe trendy, które pominięte. Ale dopasowanie regresji logistycznej jest z natury krzywoliniowe, więc możesz mieć dziwnie wyglądające trendy w resztkach bez żadnych problemów.
  • Normal Q-QDziałka pomaga wykryć jeśli reszty mają rozkład normalny. Ale reszty odchylenia nie muszą być normalnie rozłożone, aby model był ważny, więc normalność / nienormalność reszty niekoniecznie mówi ci nic.
  • Scale-LocationFabuła może pomóc zidentyfikować Heteroskedastyczność. Ale modele regresji logistycznej są z natury dość heteroscedastyczne.
  • Residuals vs LeverageMoże pomóc zidentyfikować błędne. Jednak wartości odstające w regresji logistycznej niekoniecznie objawiają się w taki sam sposób, jak w regresji liniowej, więc wykres ten może, ale nie musi być pomocny w ich identyfikacji.

Prosta lekcja „zabierz do domu” polega na tym, że wykresy te mogą być bardzo trudne w użyciu, aby pomóc ci zrozumieć, co się dzieje z twoim modelem regresji logistycznej. Prawdopodobnie najlepiej jest, aby ludzie nie patrzyli na te wykresy podczas regresji logistycznej, chyba że mają znaczne doświadczenie.

gung - Przywróć Monikę
źródło
5
Dobry Boże, to niesamowita odpowiedź.
d8aninja,
@gung Czy mógłbyś powiedzieć, co możemy zrobić, jeśli jest to glm? Czy istnieje alternatywa dla QQ, Residual vs Fitted? Na przykład nakreśliłem łącze GLM poissona, ale nie wiem, jak to sprawdzić, czy jest dobrze dopasowane
GRS
2
@GRS, spróbuj to przeczytać .
gung - Przywróć Monikę
@ Wszystkie twoje odpowiedzi są szczegółowe i jasne. Czy oprócz czytania z wielu źródeł, w tym tej strony, możesz skierować jedną lub dwie dobre książki / strony, aby uzyskać „znaczną wiedzę” w zakresie rozumienia wykresów diagnostycznych? Rozumiem, że niewiele umiejętności możemy zdobyć tylko dzięki praktyce i doświadczeniu, ale jeśli jakakolwiek konkretna książka / strona internetowa zawierająca szczegółowe informacje, jeśli możesz ją polecić, byłaby bardzo pomocna.
Dr Nisha Arora
@DrNishaArora, naprawdę nie jestem tego świadomy. Istnieje kilka książek, które są istotne dla LR, ale nie zamierzają spędzać dużo czasu na tych działkach, z podanych powodów.
gung - Przywróć Monikę
0
  1. Resztki vs dopasowanie - nie powinno być silnych wzorów (łagodne wzory nie stanowią problemu, patrz odpowiedź @ Gunga) i żadnych wartości odstających, resztki powinny być losowo rozmieszczone wokół zera.
  2. Normalne QQ - reszty powinny ominąć linię ukośną, tj. Powinny być normalnie rozmieszczone (patrz wiki dla wykresu QQ ). Ta fabuła pomaga sprawdzić, czy są w przybliżeniu normalne.
  3. Lokalizacja skali - jak widać, na osi Y znajdują się również resztki (jak w Resztkach vs dopasowana działka), ale są one skalowane, więc jest podobne do (1), ale w niektórych przypadkach działa lepiej.
  4. Pozostałości kontra dźwignia - pomaga zdiagnozować odległe przypadki. Podobnie jak w poprzednich wykresach, odległe przypadki są numerowane, ale na tym wykresie, jeśli istnieją przypadki, które bardzo różnią się od reszty danych, są wykreślane poniżej cienkich czerwonych linii (sprawdź wiki na odległość Cooka ).

Przeczytaj więcej na temat założeń regresji, ponieważ w wielu aspektach są one podobne (np. Tutaj lub samouczek dotyczący regresji w R tutaj ).

Tim
źródło
2
Ta odpowiedź jest niepoprawna w kontekście glm, a także przedstawiona przez @gung w powyższej odpowiedzi. Jeśli szukasz odpowiedzi na to pytanie, zignoruj ​​tę odpowiedź. Jeśli jesteś autorem tej odpowiedzi, sprawdź odpowiedź powyżej przez gung. Jeśli się zgadzasz, powinieneś rozważyć usunięcie tej odpowiedzi, ponieważ jest ona myląca.
Colin,
@colin chciałbyś skomentować, co dokładnie jest w twoim odczuciu tą odpowiedzią? Jedyna różnica między moją a drugą odpowiedzią polega na tym, że gung zawiera więcej szczegółów ...
Tim
3
opisujesz, jak te wykresy powinny być używane w kontekście regresji liniowej. gung opisuje, dlaczego interpretacje te zawodzą w tym przypadku, ponieważ są one stosowane do dwumianowego modelu glm. Tak więc, jeśli użytkownik zinterpretował te wykresy diagnostyczne, jak sugerujesz (a twoje sugestie byłyby pomocne w przypadku lm), błędnie dojdą do wniosku, że ich model narusza założenia glm, podczas gdy w rzeczywistości tak nie jest.
Colin,
piszesz: „Resztki vs dopasowanie - nie powinno być żadnych wzorów i żadnych wartości odstających, resztki powinny być losowo rozmieszczone wokół 0.” gung pisze: „Wykres Resztki vs Dopasowane może pomóc ci na przykład zobaczyć, czy brakuje ci krzywoliniowych trendów. Ale dopasowanie regresji logistycznej jest z natury krzywoliniowe, więc możesz mieć dziwnie wyglądające trendy w resztkach bez niczego źle." ... jeden z was musi się mylić.
Colin,
2
Zgadzam się, to nie jest czarno-biały, ale w wielu przypadkach istnieją silne trendy, ale określony model jest całkowicie odpowiedni przy założeniach konkretnego glm. Dlatego twierdząc, „nie powinno być żadnych wzorów i żadnych wartości odstających, reszty powinny być losowo rozmieszczone wokół zera”. łatwo zinterpretować, że jeśli istnieje wzorzec, naruszyłeś założenia modelu. Nie o to chodzi.
Colin,