从理论上讲,逻辑回归模型中的截距项是否捕获了所有未观察到的影响?
换句话说,在具有完美拟合(即包括所有相关变量)的逻辑回归模型中,截距项应该为零,对吗?
从理论上讲,逻辑回归模型中的截距项是否捕获了所有未观察到的影响?
换句话说,在具有完美拟合(即包括所有相关变量)的逻辑回归模型中,截距项应该为零,对吗?
从理论上讲,逻辑回归模型中的截距项是否捕获了所有未观察到的影响?
这是一个有趣的问题,我可以通过一些简单的实验看到,人们可能会认为是这种情况。事实上,在我第一次尝试设置它时,我实际上创建了一个演示,它只会在我错误指定模型时错误地估计截距——否则,所有系数估计都很好!
在 OLS 回归中,误差项是我们希望所有我们没有考虑到的影响的地方......但是如果有我们没有考虑到的影响(即,模型指定错误)那么他们就会倾向于关注模型的其他特征,尤其是在变量之间存在混淆关系的情况下。所有其他传统回归方法也是如此——如果模型指定错误,则系数估计值不可信(但也许预测会有所帮助,或者模型有其他有用的目的)。
例如,这是一个二项式模型,其中只有两个特征,并且它们之间存在一些依赖关系。我已经对其进行了操纵,使得系数应该是但是,如果我们从模型估计中忽略,我们所有的系数都会被错误地估计——而且非常严重!
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 次都是“成功”,而其他所有结果都是失败(也许您正在为赌场)。如果我们假设骰子是公平的,那么您将估计系数为某个非零值,纯粹是因为您的数据中不利的结果多于有利的结果。
重要的是要了解您在帖子中提出了两个不同的问题。第一个询问截距是否捕获了未建模的影响(它没有!当模型指定错误时,所有系数估计都是错误的!)第二个问题询问截距是否应该为零 - 答案也是否定的,因为截距项由“成功”与“失败”的比率固定。
我不确定是否有任何模型,即使是线性模型,具有“完美”拟合意味着截距项应该为 0。在这些情况下,考虑简单的线性回归会有所帮助。我理解截距的方式是它为 y 变量修复了一些合理的值。即使所有的 x 都是 0,它也只是显示 y 变量取什么值。必须有充分的理由来思考为什么这应该是 0。我认为它与不可观测值有任何关系。在线性模型中,它允许 a) 更好的拟合和 b) 确保残差总和为 1。
在具有完美拟合(即包括所有相关变量)的逻辑回归模型中,截距项应该为零,对吗?
不。截距捕获了危险的恒定部分。
截距允许线性超平面“侧向”移动。例如,在一维中,它左右移动 sigmoid,有效地改变了回归激活的位置。