正如Gardner指出的“几乎所有点预测都是错误的”,因此预测区间 (PI) 对于量化不确定性并帮助我们做出明智的决定是必要的。存在理论上的 PI,并且在某些情况下它们有效。在许多情况下,没有理论 PI,例如,如果您正在组合多个模型。回顾文献,特别是时间序列预测,我发现Taylor 和 Bunn的以下程序,它使用来自拟合值的误差的分位数回归来生成经验预测区间。
编程语言中的一个小玩具示例,R
将上述方法复制到 90% PI:
library("forecast")
library("quantreg")
## Fit the forecast model and obtain error
x <- AirPassengers
arm.mod <- auto.arima(x)
arm.fit <- fitted(arm.mod)
error <- AirPassengers-arm.fit
## Quantile Regression to obtain 90% pred interv based on Taylor and Bunn (1999)
t <- 1:length(x)
tsq <- t^2
quant.05 <- rq(error~t+tsq,tau=0.05)
quant.95 <- rq(error~t+tsq,tau=0.95)
## Make Predictions for quantile regressions
t <- 1:12
tsq <- t^2
newdata <- as.data.frame(cbind(t,tsq))
pred.05 <- predict(quant.05,newdata)
pred.95 <- predict(quant.95,newdata)
## Estimate Empirical Pred Interval
forecast <- forecast(arm.mod,h=12)
forecast.lpl <- forecast$mean+pred.05
forecast.upl <- forecast$mean+pred.95
forecast.limit <- cbind(forecast$mean,forecast.lpl,forecast.upl)
ts.plot(forecast.limit)
以下是我的问题:
- 我应该在分位数回归中使用拟合模型的误差还是应该使用样本外预测误差?
- 我对
R
文章中概述的方法的理解(来自程序)是否正确? - 当我绘制经验预测区间时,它似乎很窄?
- 除了上述用于时间序列预测的方法之外,还有其他经验 PI 方法吗?
非常狭窄的 PI:
非常感谢