Qualcuno può dirmi come interpretare le trame "Residui vs adattati", "Q-q normale", "posizione in scala" e "Residui contro leva"? Sto montando un GLM binomiale, salvandolo e quindi pianificandolo.
Qualcuno può dirmi come interpretare le trame "Residui vs adattati", "Q-q normale", "posizione in scala" e "Residui contro leva"? Sto montando un GLM binomiale, salvandolo e quindi pianificandolo.
Risposte:
R
non ha un plot.glm()
metodo distinto . Quando si adatta un modello con glm()
ed esegui plot()
, viene chiamato ? Plot.lm , che è appropriato per i modelli lineari (ovvero con un termine di errore normalmente distribuito).
In generale, il significato di questi grafici (almeno per i modelli lineari) può essere appreso in vari thread esistenti su CV (ad esempio: Residui contro montaggio ; Grafici qq in diversi punti: 1 , 2 , 3 ; Scala-Posizione ; Residui vs leva finanziaria ). Tuttavia, tali interpretazioni non sono generalmente valide quando il modello in questione è una regressione logistica.
Più specificamente, le trame spesso "sembreranno divertenti" e porteranno le persone a credere che ci sia qualcosa di sbagliato nel modello quando va perfettamente bene. Possiamo vederlo guardando quei grafici con un paio di semplici simulazioni in cui sappiamo che il modello è corretto:
# 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
Ora diamo un'occhiata alle trame che otteniamo da plot.lm()
:
Sia la trama che Residuals vs Fitted
la Scale-Location
trama sembrano avere problemi con il modello, ma sappiamo che non ce ne sono. Questi grafici, destinati a modelli lineari, sono spesso fuorvianti se utilizzati con un modello di regressione logistica.
Diamo un'occhiata a un altro esempio:
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
Ora tutte le trame sembrano strane.
Cosa ti mostrano questi grafici?
Residuals vs Fitted
trama può aiutarti a vedere, ad esempio, se ci sono tendenze curvilinee che ti sei perso. Ma la misura di una regressione logistica è curvilinea per natura, quindi puoi avere strane tendenze nei residui senza nulla di sbagliato. Normal Q-Q
trama ti aiuta a rilevare se i tuoi residui sono normalmente distribuiti. Ma i residui di devianza non devono essere normalmente distribuiti affinché il modello sia valido, quindi la normalità / non normalità dei residui non ti dice necessariamente nulla. Scale-Location
trama può aiutarti a identificare l'eteroscedasticità. Ma i modelli di regressione logistica sono praticamente eteroscedastici per natura. Residuals vs Leverage
può aiutare a identificare eventuali valori anomali. Ma i valori anomali nella regressione logistica non si manifestano necessariamente nello stesso modo della regressione lineare, quindi questa trama può o non può essere utile per identificarli. La semplice lezione da portare a casa qui è che questi grafici possono essere molto difficili da usare per aiutarti a capire cosa sta succedendo con il tuo modello di regressione logistica. Probabilmente è meglio per le persone non guardare affatto questi grafici quando si esegue la regressione logistica, a meno che non abbiano una notevole esperienza.
Leggi di più sulle ipotesi di regressione in quanto in molti aspetti ci sono simili (ad esempio qui o tutorial sulla regressione in R qui ).