回答:
R
明確なplot.glm()
メソッドはありません。モデルを近似しglm()
て実行するとplot()
、線形モデルに適した?plot.lmを呼び出します(つまり、正規分布誤差項を使用)。
:一般的には、(少なくとも、線形モデルの場合)、これらのプロットの意味は、様々な既存例えばCV上のスレッド(で学ぶことができるの残差対フィット:;いくつかの場所でのQQプロット1、2、3、スケール、場所、残差vsレバレッジ)。ただし、問題のモデルがロジスティック回帰の場合、これらの解釈は一般に有効ではありません。
より具体的には、プロットはしばしば「おかしく見える」ため、モデルが完全に正常な場合にモデルに何らかの問題があると人々に信じ込ませます。モデルが正しいことがわかっているいくつかの簡単なシミュレーションでこれらのプロットを見ると、これを確認できます。
# 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
あなたが可能な外れ値を識別するのに役立ちます。ただし、ロジスティック回帰の外れ値は、必ずしも線形回帰の場合と同じようには現れないため、このプロットはそれらを識別するのに役立つ場合とそうでない場合があります。 ここでの簡単な教訓は、これらのプロットを使用して、ロジスティック回帰モデルで何が起こっているのかを理解するのが非常に難しいことです。かなりの専門知識がない限り、ロジスティック回帰を実行するときにこれらのプロットをまったく見ないのがおそらく最善です。
多くの面で類似しているので、回帰の仮定についてもっと読んでください(例えばhere、またはRの回帰のチュートリアルhere)。