如何将逻辑回归指定为转换后的线性回归?

机器算法验证 r 回归 物流 广义线性模型
2022-04-16 03:38:22

我正在尝试使用转换的线性回归重现以下逻辑回归示例:

am.glm <- glm(am ~ hp + wt, data=mtcars, family=binomial)
newdata <- data.frame(hp=120, wt=2.8)
predict(am.glm, newdata, type="response") 
##         1 
## 0.6418125

的概率方程如下: Y=1

P(Y=1)=11+e(b0+(biXi))

所以我尝试了这样的事情:

am.lm <- lm(am ~ 1/(1+exp(-(hp + wt))),data=mtcars)
predict(am.lm, newdata)
##       1 
## 0.40625

所以这显然是错误的!(我也尝试过转换给定的值,但到目前为止没有任何效果)。

我的问题
如何设置逻辑回归并明确指定线性模型的非线性变换的公式?

1个回答

简短的回答是“你没有”。他们不对应。

逻辑回归不是变换的线性回归。

即使 ( ) 可以写成,并且看起来是线性化的,你不能转换值来进行线性回归,也不能你能拟合一个重现逻辑回归的非线性最小二乘模型(转换x)吗?[您可能能够通过非线性最小二乘拟合逻辑形式的函数,但它不会有相同的估计值。]这个问题的答案提供了一些额外的细节。E(Y)=P(Y=1)logit(Xβ)y

观测值以完全不同的方式进入模型估计。

逻辑回归通过具有自然链接函数(这是二项式的 logit)的二项式模型的最大似然估计来拟合。也就是说,数据被视为yibinomial(ni,1/(1+eXiβ))

(其中是 casec的线性预测器。)Xiβ=β0+jβjxiji

找到模型的 MLE 后,您可以找到一组权重和一组伪观测值,这样线性模型就会产生参数估计值,但与原始数据的连接是非常间接的,通常您不能直到找到解决方案为止。

将其视为数据的转换并不是特别有用。