R和quantreg:不平衡残差

时间:2015-10-27 16:09:31

标签: r regression quantreg

我正在尝试使用quantreg包来拟合指数曲线。

这是一个可复制的例子。 IRL我有更复杂的数据与异常值,这就是为什么我不喜欢使用nls,这对异常值不稳健。

library(quantreg)
library(ggplot2)

x = 1:100
set.seed(42)
y = 500*exp(-0.02*x) +rnorm(100, 0, 5 )
df = data.frame(cbind(x,y))
plot(df)

formula =  y ~ k * exp(b*x) 
qr_exp = nlrq(formula,
                   data = df,
                   start = list(k = 600, b = -0.01),
                   tau = .50,
                   nlrq.control(maxiter=1000))
summary(qr_exp)
sum(qr_exp$m$resid())
[1] -26.52373

我希望自sum(qr_exp$m$resid())以来tau = 0.5大约为0,但该值为负,这意味着该模型往往会高估实际价值。

正如您所看到的,我使用tau= 0.47

将残差的总和接近0
formula =  y ~ k * exp(b*x) 
qr_exp = nlrq(formula,
              data = df,
              start = list(k = 600, b = -0.01),
              tau = .47,
              nlrq.control(maxiter=1000))
summary(qr_exp)
sum(qr_exp$m$resid())
[1] -4.467781

我真的不明白为什么。

是因为可能有By moving any of item up/down you can set their layer state因此无法保证负余数多于正余数吗?

如果是,如果这对我来说非常重要,那么什么是最佳解决方案:

  • 最小化最小绝对偏差,而不是最小平方偏差(对异常值不稳定)
  • 有平衡残差?

添加一小部分L2惩罚来平衡某些东西是否有意义? (请参阅an infinite number of solution

0 个答案:

没有答案