残差与线性回归中的响应变量呈正相关

机器算法验证 相关性 残差
2022-04-14 19:57:51

我对包含 412 个观测值的数据集进行了多元线性回归,其中包含一个响应变量 (Y) 和 25 个解释变量 (X1-X25)。Y 和大部分 X 不是正态分布的。此外,几个 X 之间也存在一定的相关性。该图显示残差与 Y 正相关强,与拟合 Y 负相关弱。(对不起。由于我在这个网站上较新,我不允许发布图像。)

为了解决这些问题,我尝试了主成分回归、加权最小二乘回归和岭回归。他们都没有工作。我想知道回归有什么问题。为什么残差与观察到的 Y 相关性如此明显?

2个回答

1) 在很多很多情况下,残差确实与观察值正相关。这样想——一个非常大的正误差(“误差”是“真正的残差”,误用语言)意味着相应的观察结果在所有其他条件相同的情况下,可能在正方向上非常大。非常大的负误差意味着相应的观测值在负方向上可能非常大。如果回归的不大,那么误差的可变性将是对目标变量可变性的主要影响,您将在绘图和相关性中看到这种影响。R2

例如,考虑模型,我们将其建模为,(对于是正确的。)以下是包含 100 个观察值的回归结果:yi=a+xi+eiyi=a+bxi+eib=1

e <- rnorm(100)
x <- rnorm(100)
y <- 1 + x + e

foo <- lm(y~x)
plot(residuals(foo)~y, xlab="y", ylab="Residuals")

> summary(foo)

Call:
lm(formula = y ~ x)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.3292 -0.8280 -0.0448  0.8213  2.9450 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)   0.8498     0.1288   6.600 2.12e-09 ***
x             0.8929     0.1316   6.787 8.81e-10 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 1.286 on 98 degrees of freedom
Multiple R-squared: 0.3197, Adjusted R-squared: 0.3128 
F-statistic: 46.06 on 1 and 98 DF,  p-value: 8.813e-10 

在此处输入图像描述

请注意,我们实现了相当可观的(在某些领域)为 0.32。 R2

我们可以用不同的模型来掩盖这种影响:

y <- 1 + 5*x + e

foo <- lm(y~x)
plot(residuals(foo)~y, xlab="y", ylab="Residuals")

为 0.93,残差图如下:R2

在此处输入图像描述

这里和残差之间的相关性约为 0.25,但在图上不太明显。 y

2)通过构造,残差与线性回归中的拟合值相关为零。您的陈述“......与拟合的 Y 呈负相关”是否仅基于查看情节,或者您是否实际计算了相关性?如果是前者,外表可能是骗人的……如果是后者,那就是有问题;可能你没有看你认为你在看的东西。

只要您的回归量不能完全解释真实的基础数据模型,残差几乎总是与您的观察相关。和残差之间存在高度相关性是存在解释变量未捕获的噪声/变化的证据。y

这可能有几个原因

  1. 您的回归量仅与您的目标变量微弱相关
  2. 即使它们高度相关,您的观察结果也可能非常嘈杂,或者系统中的噪声量很大。
  3. 您的回归模型没有很好地指定,即误差项中的非线性、非高斯性。
  4. 您的数据点太少,无法有效识别正确的关系。

由于您很可能无法增加数据样本量,因为它是一个外部限制,因此请尝试标准化您的回归量和目标变量,以使它们类似于更正态分布的变量(例如,正变量的对数变换)。在这种情况下,OLS 回归模型可以更有效地识别真正的潜在关系。

回归变量之间的相关性不应过多地影响样本内残差相关性(只有您的参数估计值会偏斜​​)。