前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >R语言混合时间模型预测对时间序列进行点估计

R语言混合时间模型预测对时间序列进行点估计

作者头像
拓端
发布2020-07-16 23:14:26
1K0
发布2020-07-16 23:14:26
举报
文章被收录于专栏:拓端tecdat

原文连接:http://tecdat.cn/?p=6078

混合预测 - 单模型预测的平均值 - 通常用于产生比任何预测模型更好的点估计。我展示了如何为混合预测构建预测区间,这种预测的覆盖范围比最常用的预测区间更准确(即80%的实际观测结果确实在80%置信区间内)。

预测间隔

预报员的问题是在预测组合中使用的预测间隔。预测间隔是与置信区间相似但不相同的概念。预测间隔是对尚未知但将在未来的某个点观察到的值(或更确切地说,可能值的范围)的估计。而置信区间是对基本上不可观察的参数的可能值范围的估计。预测间隔需要考虑模型中的不确定性,模型中参数的不确定估计(即那些参数的置信区间),以及与预测的特定点相关联的个体随机性。

介绍

结合auto.arima()ets(),有效地进行混合预测。为了使更方便,我创建了一个hybridf()在R中为我做这个并生成类对象的函数forecast

深灰色区域是80%预测区间,浅灰色区域是95%预测区间。

测试M3

结果如下:

变量

准确度

ets_p80

0.75

ets_p95

0.90

auto.arima_p80

0.74

auto.arima_p95

0.88

hybrid_p80

0.83

hybrid_p95

0.94

我的混合方法有在接近广告的成功率,而这两个预测区间ets()auto.arima()不太成功。

以下是我在M3数据上测试的方法。我构建了一个小函数pi_accuracy()来帮助,它利用了类预测对象返回一个名为“lower”的矩阵和另一个名为“upper”的矩阵,每个预测区间级别都有一列。

代码语言:javascript
复制
#------------------setup------------------------

library(forecast)
 ly = "myfont"))

pi_accuracy <- function(fc, yobs){
   # checks the success of prediction intervals of an object of class
 
   In <- (yobsm
 }

实际上拟合所有预测相对简单。我的笔记本电脑花了大约一个小时。

代码语言:javascript
复制
num_series <- length(M3) # ie 3003
results <- matrix(0, nrow = num_series, ncol = 7)

for(i in 1:num_series){
   cat(i, " ")        # let me know how it's going as it loops through...
   series <- M3[[i]]
 ccess
   
   fc1 <- fc3$fc_ets
   r
   geom_smooth(se = FALSE, method = "lm") +
   theme(panel.grid.minor = element_blank())

预测

变量

准确度

ets_p80

0.72

ets_p95

0.88

auto.arima_p80

0.70

auto.arima_p95

0.86

hybrid_p80

0.80

hybrid_p95

0.92

代码语言:javascript
复制
#===== bootstrapping =============

num_series <- length(M3)
resultsb <- matrix(0, nrow = num_series, ncol = 7)

for(i in 1:num_series){
   cat(i, " ")
   
   gather(variable, value, -h) %>%
   mutate(weighted_val ighted_value) / sum(h), 2))

结论

  • 根据M3竞赛数据进行测试,通过组合ets()auto.arima()形成的预测到期望的水平,即80%预测interval在80%的时间内包含真值,95%的预测间隔包含不到95%的时间的真值。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-07-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 拓端数据部落 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 原文连接:http://tecdat.cn/?p=6078
  • 预测间隔
  • 介绍
    • 测试M3
      • 预测
        • 结论
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档