多元线性回归中标准化系数 (beta) 的大小

机器算法验证 r 回归 多重回归
2022-04-06 04:10:13

知道那篇文章,我很好奇标准化系数可以得到多大的问题。我和我的教授讨论过这个问题,她认为多元线性回归中的标准化系数(beta)不能大于|1|。我还听说标准化系数大于 1 的预测变量不应包含/出现在多元线性回归中。当我最近使用 lm() 估计 R 中的多元线性回归时,我使用“lm.beta”包中的 lm.beta() 函数估计了标准化系数。在结果中,我可以观察到一个大于 1 的标准化系数。现在我只是不确定真相是什么。

标准化系数可以变得大于|1|吗?如果是,那是什么意思?是否应该将它们排除在模型之外?如果是,为什么?

如果有人能为我澄清这个问题,我将不胜感激。

3个回答

告诉你的教授他们错了绝非易事。

正如那篇文章所解释的那样,标准化系数可以大于 1.00,而且很容易证明。是否应该排除它们取决于它们发生的原因——但可能不是。

它们表明你有一些非常严重的共线性。它们经常发生的一种情况是当您有非线性效应时,例如当作为预测变量包含在模型中时。 xx2

这是一个快速演示:

data(cars)
cars$speed2 <- cars$speed^2
cars$speed3 <- cars$speed^3
fit1 <- lm(dist ~ speed, data=cars)
fit2 <- lm(dist ~ speed + cars$speed2, data=cars)
    fit3 <- lm(dist ~ speed + cars$speed2 + speed3, data=cars)
summary(fit1)
summary(fit2)
summary(fit3)
lm.beta(fit1)
lm.beta(fit2)
lm.beta(fit3)

最后一点输出:

> lm.beta(fit3)
   speed    speed2    speed3 
  1.395526 -2.212406  1.681041 

或者,如果您愿意,可以先标准化变量:

 zcars <- as.data.frame(rapply(cars, scale, how="list"))
 fit3 <- lm(dist ~ speed + speed2 + speed3, data=zcars)

 summary(fit3)

Call:
lm(formula = dist ~ speed + speed2 + speed3, data = zcars)

Residuals:
     Min       1Q   Median       3Q      Max 
-1.03496 -0.37258 -0.08659  0.27456  1.73426 

Coefficients:
              Estimate Std. Error t value Pr(>|t|)
(Intercept)  7.440e-16  8.344e-02   0.000    1.000
speed        1.396e+00  1.396e+00   1.000    0.323
speed2      -2.212e+00  3.163e+00  -0.699    0.488
speed3       1.681e+00  1.853e+00   0.907    0.369

Residual standard error: 0.59 on 46 degrees of freedom
Multiple R-squared:  0.6732,    Adjusted R-squared:  0.6519 
F-statistic: 31.58 on 3 and 46 DF,  p-value: 3.074e-11

你不需要用 lm() 来做,如果你愿意,你可以用矩阵代数来做:

Rxx <- cor(cars)[c(1, 3, 4), c(1, 3, 4)]
Rxy <- cor(cars)[2, c(1, 3, 4)]
B <- (ginv(Rxx)) %*% Rxy
B

         [,1]
[1,]  1.395526
[2,] -2.212406
[3,]  1.681041

这可能是一个定义问题。标准化系数是指仅标准化预测变量吗?或标准化响应变量?我已经看到两者都用于计算“标准化系数”。即便如此,标准化的方法也不止一种。

如果将预测变量和响应变量除以它们的标准差(标准化的常用方法)并拟合回归(只有一个预测变量/一个斜率系数),那么在数学上不可能看到 -1 到1 个范围(因为斜率将与相关性相同)。但是,如果您不对响应变量进行标准化,那么根据响应变量的规模,很容易看到 -1 到 1 之外的估计系数。

对于多个预测变量,异常大的标准化系数可能是多重共线性的标志,这可能是一些消息来源建议删除这些变量的原因。

我预计某些消息来源所说的可能与您从其他来源观察到的差异是由于定义的不同。

大于 1 的标准化 beta 权重是抑制的标志,尤其是合作抑制。这种抑制增加了预测器的预测值,因此具有潜在的巨大价值。http://core.ecu.edu/psyc/wuenschk/MV/multReg/Suppress.docx