理論的には、ロジスティック回帰モデルの切片項は、観測されていないすべての影響を捕捉しますか?
言い換えれば、完全に適合するロジスティック回帰モデル(つまり、すべての関連変数が含まれる)では、切片項はゼロでなければなりませんか?
理論的には、ロジスティック回帰モデルの切片項は、観測されていないすべての影響を捕捉しますか?
言い換えれば、完全に適合するロジスティック回帰モデル(つまり、すべての関連変数が含まれる)では、切片項はゼロでなければなりませんか?
回答:
理論的には、ロジスティック回帰モデルの切片項は、観測されていないすべての影響を捕捉しますか?
これは興味深い質問です。いくつかの簡単な実験で、これが事実だと思われるかもしれません。実際、これを設定する最初の試みで、実際にデモを作成しましたが、モデルを誤って指定した場合にのみ切片を誤って推定しました。
OLS回帰で私たちがする場所、誤差項がある好きな私たちが行くことを計上していないそのために効果のすべてのために...しかし、我々は計上されていないそのために効果がある場合(つまり、モデルが誤指定です)次に、特に変数間に交絡関係がある場合は、モデルの他の機能に頭を傾ける傾向があります。これは、他のすべての従来の回帰方法にも当てはまります。モデルが誤って指定されている場合、係数推定は信頼できません(ただし、予測が役立つか、モデルが他の有用な目的を果たします)。
たとえば、次の2項モデルでは、2つの特徴のみがあり、それらの間の依存関係がいくつかあります。係数がなるようにリギングしましたしかし、モデル推定からを省略した場合、すべての係数が誤って推定されます。X 2
set.seed(13)
N <- 100
inv_logit <- function(x){
ifelse(x< -20, -20, x)
out <- 1/(1+exp(-x))
return(out)
}
x0 <- rep(1, N)
x1 <- rnorm(N)
x2 <- rnorm(N, mean=10+3*x1-0.5*x1^2)
zTransform <- cbind(x0, x1, x2)%*%c(-10,-5,1)
summary(zTransform)
yObs <- rbinom(N, size=1, prob=inv_logit(zTransform))
badModel <- glm(yObs~x1, family=binomial(link="logit"))
summary(badModel)
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -0.1404 0.2327 -0.604 0.546
x1 -1.3417 0.3041 -4.412 1.02e-05 ***
しかし、モデルを正しく指定すると、係数が返されますが、推定誤差がいくつかあります。
goodModel <- glm(yObs~x1+x2, family=binomial(link="logit"))
summary(goodModel)
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -9.9512 2.9331 -3.393 0.000692 ***
x1 -4.8657 1.1918 -4.083 4.45e-05 ***
x2 0.9970 0.2948 3.382 0.000720 ***
言い換えれば、完全に適合するロジスティック回帰モデル(つまり、すべての関連変数が含まれる)では、切片項はゼロでなければなりませんか?
これはなぜでしょうか?ロジスティック回帰を実行していて、共変量がないとします。たとえば、実験がサイコロを振っており、6ごとに「成功」であり、その他すべての結果は失敗です(おそらく、カジノ)。サイコロが公正であると仮定した場合、データには好ましい結果よりも好ましくない結果があるため、純粋に係数をゼロ以外の値で推定します。
投稿で2つの異なる質問をしたことを理解することが重要です。最初の質問では、切片がモデル化されていない効果をキャプチャするかどうかを尋ねます(そうではありません!モデルが誤って指定されている場合、すべての係数推定は間違っています!)2番目の質問は、切片をゼロにする必要があるかどうかを尋ねます。切片の項は、「成功」と「失敗」の比率によって固定されるためです。