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ę.
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ę.
Odpowiedzi:
R
nie 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()
:
Zarówno wykresy, jak Residuals vs Fitted
i Scale-Location
wykresy 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
Teraz wszystkie działki wyglądają dziwnie.
Co więc pokazują te fabuły?
Residuals vs Fitted
Fabuł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-Q
Dział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-Location
Fabuła może pomóc zidentyfikować Heteroskedastyczność. Ale modele regresji logistycznej są z natury dość heteroscedastyczne. Residuals vs Leverage
Moż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.
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 ).