除非我弄错了,否则在线性模型中,假设响应的分布具有系统分量和随机分量。误差项捕获随机分量。因此,如果我们假设误差项是正态分布的,那是否意味着响应也是正态分布的?我认为确实如此,但是像下面这样的陈述似乎相当混乱:
您可以清楚地看到,该模型中“正态性”的唯一假设是残差(或“错误”) 应该是正态分布的。没有关于预测变量分布的假设或响应变量.
除非我弄错了,否则在线性模型中,假设响应的分布具有系统分量和随机分量。误差项捕获随机分量。因此,如果我们假设误差项是正态分布的,那是否意味着响应也是正态分布的?我认为确实如此,但是像下面这样的陈述似乎相当混乱:
您可以清楚地看到,该模型中“正态性”的唯一假设是残差(或“错误”) 应该是正态分布的。没有关于预测变量分布的假设或响应变量.
标准 OLS 模型是和对于一个固定的 .
这确实意味着,尽管这是我们对分布的假设的结果,而不是实际上是假设。还要记住,我说的是条件分布,而不是边际分布. 我专注于条件分布,因为我认为这就是你真正要问的。
我认为令人困惑的部分是,这并不意味着直方图会看起来很正常。我们是说整个向量是来自多元正态分布的单次抽取,其中每个元素都有可能不同的均值. 这与 iid 正常样本不同。错误实际上是一个独立同分布的样本,所以它们的直方图看起来很正常(这就是为什么我们做残差的 QQ 图,而不是响应)。
这是一个例子:假设我们正在测量高度对于 6 年级和 12 年级学生的样本。我们的模型是和. 如果我们看一个直方图我们可能会看到一个双峰分布,一个峰值出现在 6 年级学生身上,一个峰值出现在 12 年级学生身上,但这并不代表违反我们的假设。
因此,如果我们假设误差项是正态分布的,那是否意味着响应也是正态分布的?
甚至远程也不行。我记得这一点的方式是残差是正常的,取决于模型的确定性部分。这是实际情况的演示。
我首先随机生成一些数据。然后我定义一个结果,它是预测变量的线性函数并估计一个模型。
N <- 100
x1 <- rbeta(N, shape1=2, shape2=10)
x2 <- rbeta(N, shape1=10, shape2=2)
x <- c(x1,x2)
plot(density(x, from=0, to=1))
y <- 1+10*x+rnorm(2*N, sd=1)
model<-lm(y~x)
让我们来看看这些残差是什么样的。我怀疑它们应该是正态分布的,因为结果y
中添加了 iid 正态噪声。确实如此。
plot(density(model$residuals), main="Model residuals", lwd=2)
s <- seq(-5,20, len=1000)
lines(s, dnorm(s), col="red")
plot(density(y), main="KDE of y", lwd=2)
lines(s, dnorm(s, mean=mean(y), sd=sd(y)), col="red")
然而,检查 y 的分布,我们可以看到它绝对不正常!我已经用与 相同的均值和方差覆盖了密度函数y
,但这显然是一个糟糕的拟合!
在这种情况下发生这种情况的原因是输入数据甚至不正常。这个回归模型除了残差之外没有任何东西需要正态性 - 不是在自变量中,也不是在因变量中。
不,它没有。例如,假设我们有一个预测奥运会运动员体重的模型。虽然体重很可能在每项运动的运动员之间正常分布,但它不会分布在所有运动员之间——它甚至可能不是单峰的。