Adakah yang bisa memberi tahu saya cara menafsirkan plot 'residual vs pas', 'q-q normal', 'skala-lokasi', dan 'residual vs leverage'? Saya memasang GLM binomial, menyimpannya dan merencanakannya.
Adakah yang bisa memberi tahu saya cara menafsirkan plot 'residual vs pas', 'q-q normal', 'skala-lokasi', dan 'residual vs leverage'? Saya memasang GLM binomial, menyimpannya dan merencanakannya.
Jawaban:
R
tidak memiliki plot.glm()
metode yang berbeda . Ketika Anda cocok dengan model glm()
dan menjalankannya plot()
, ia memanggil ? Plot.lm , yang sesuai untuk model linier (yaitu, dengan istilah kesalahan yang terdistribusi normal).
Secara umum, arti plot ini (setidaknya untuk model linier) dapat dipelajari di berbagai utas yang ada di CV (mis: Residual vs Dipasang ; plot qq di beberapa tempat: 1 , 2 , 3 ; Skala-Lokasi ; Residuals vs Leverage ). Namun, interpretasi tersebut umumnya tidak valid ketika model yang dimaksud adalah regresi logistik.
Lebih khusus lagi, plot akan sering 'terlihat lucu' dan membuat orang percaya bahwa ada sesuatu yang salah dengan model ketika itu baik-baik saja. Kita dapat melihat ini dengan melihat plot-plot tersebut dengan beberapa simulasi sederhana di mana kita tahu modelnya benar:
# 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
Sekarang mari kita lihat plot yang kita dapatkan plot.lm()
:
Baik Residuals vs Fitted
dan Scale-Location
plot terlihat seperti ada masalah dengan model, tetapi kita tahu tidak ada. Plot-plot ini, yang dimaksudkan untuk model linier, seringkali menyesatkan ketika digunakan dengan model regresi logistik.
Mari kita lihat contoh lain:
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
Sekarang semua plot terlihat aneh.
Jadi, apa yang ditunjukkan plot ini kepada Anda?
Residuals vs Fitted
Plot dapat membantu Anda melihat, misalnya, jika ada tren lengkung yang Anda tidak terjawab. Tetapi kecocokan dari regresi logistik pada dasarnya bersifat lengkung, sehingga Anda dapat memiliki tren yang tampak aneh dalam residu tanpa ada yang salah. Normal Q-Q
Plot membantu Anda mendeteksi jika residual Anda didistribusikan secara normal. Tetapi residual penyimpangan tidak harus didistribusikan secara normal agar model menjadi valid, sehingga normalitas / non-normal residual tidak selalu memberi tahu Anda apa pun. Scale-Location
Plot dapat membantu Anda mengidentifikasi heteroskedastisitas. Tetapi model regresi logistik secara alami cukup heteroskedastik. Residuals vs Leverage
dapat membantu Anda mengidentifikasi kemungkinan outlier. Tetapi pencilan dalam regresi logistik tidak harus bermanifestasi dengan cara yang sama seperti dalam regresi linier, jadi plot ini mungkin atau mungkin tidak membantu dalam mengidentifikasi mereka. Pelajaran sederhana yang bisa diambil di sini adalah bahwa plot ini bisa sangat sulit digunakan untuk membantu Anda memahami apa yang sedang terjadi dengan model regresi logistik Anda. Mungkin yang terbaik bagi orang untuk tidak melihat plot ini sama sekali ketika menjalankan regresi logistik, kecuali mereka memiliki keahlian yang cukup.
Baca lebih lanjut tentang asumsi regresi karena dalam banyak aspek ada yang serupa (misalnya di sini , atau tutorial tentang regresi dalam R di sini ).