残差使用绝对损失线性回归

机器算法验证 回归 分位数回归 最小绝对偏差
2022-03-05 20:43:33

对于普通的最小二乘线性回归,我们将残差之和为零,那么使用绝对损失计算的线性回归的残差之和呢?

2个回答

如果模型包含截距(这是隐含的),则至少一半残差必须是非负的,至少一半必须是非正的。

这很容易展示。 相反,假设正残差比非正残差多。然后,通过稍微增加截距(比如),我们会将所有正残差减少,同时将所有负残差增加从而净减少残差大小的总和,从而证明原来的配合不可能是解决方案。相同的论点适用于多个残差为负的情况。δδδ,

然而,正负残差计数之间的这种平衡并不意味着它们总和的平衡——恰恰相反。作为一个例子,让我们考虑这个模型的最简单类型,在其中你寻找一个数字,它在绝对损失最小的意义上最接近数字数据的集合。前面的参数表明这个数字必须是这些数据值的中位数例如,考虑数据集它的唯一中位数为残差为 超过一半是非阳性的,超过一半是非阴性的。然而,残差之和为μμ(0,1,100).1,(1,0,99).1+0+99=98,远非零。

这为正在发生的事情提供了准确的直觉:最小化绝对损失不会按比例惩罚残差;它只根据残差是正数还是负数来惩罚残差(零残差没有惩罚)。

有关更多信息和详细信息,请参阅我在https://stats.stackexchange.com/a/114363/919上的分析。

不是一个真正的答案,但我会说“不多” - 请参阅我上面的评论。同样多次调用以下代码表明我们也无法对残差之和进行签名。

正如您正确指出的那样,OLS 是一种利用残差和回归量正交性的技术,如果我们有一个常数,则产生的残差之和为零。由于其他技术并非如此,因此(至少对我而言)也没有理由期望这里有任何特殊属性。

library(quantreg)
set.seed(2022)
n <- 50
X <- sort(runif(n))
beta1 <- 2
y <- X*beta1 + rnorm(n,sd=0.5)
olsreg <- lm(y~X) # OLS linear regression
ladreg <- rq(y~X) # quantile regression
sum(resid(olsreg)) # basically zero
sum(resid(ladreg)) # not close to zero