博客
关于我
R语言混合时间模型预测对时间序列进行点估计
阅读量:144 次
发布时间:2019-02-28

本文共 1118 字,大约阅读时间需要 3 分钟。

混合预测是一种通过结合多个模型预测结果来生成更为准确的预测方法。与单模型预测相比,混合预测可以通过取各模型预测值的平均值来生成点估计,通常能够提供比单一模型更好的预测结果。在本文中,我们将探讨如何为混合预测构建预测区间,并通过实际案例验证其有效性。

预测间隔与置信区间

在进行混合预测之前,我们需要明确预测间隔与置信区间的区别。预测间隔(Predictive Interval, PI)是用于估计未来观测值可能落在的区间,而置信区间(Confidence Interval, CI)则用于估计模型参数的真实值范围。两者在考虑模型不确定性时有所不同:预测间隔需要考虑未来的随机性以及模型参数估计的不确定性,而置信区间则更关注模型参数的统计特性。

混合预测方法

为了实现混合预测,本文选择了将ARIMA模型(通过auto.arima()函数)与指数模型(通过ets()函数)结合的方法。具体而言,我们构建了一个混合预测模型,并通过forecast类对象生成预测结果。这种方法能够充分利用两个模型各自的优势,提高预测的准确性。

实验结果与分析

为了验证混合预测方法的有效性,我们在M3数据集上进行了测试。测试结果如下:

模型名称 80%置信区间准确度 95%置信区间准确度
ets_p80 0.75 0.90
ets_p95 0.72 0.88
auto.arima_p80 0.74 0.86
auto.arima_p95 0.70 0.88
hybrid_p80 0.83 0.94
hybrid_p95 0.80 0.92

从表中可以看出,混合预测方法在80%和95%置信区间的准确度均达到预期水平。与单一模型的预测结果相比,混合方法显著提升了预测的覆盖范围,尤其是在95%置信区间方面,混合预测的准确度更接近预期值。

预测实现细节

为了实现混合预测,我们首先加载了forecast包,并定义了一个用于生成预测结果的函数。函数accuracy用于计算预测区间的准确度,通过比较实际观测值与预测区间的覆盖范围,可以得出预测结果的准确性评价。

在实际预测过程中,我们对每个时间系列进行了循环处理,调用auto.arima()ets()函数分别生成ARIMA模型和指数模型的预测结果。然后,我们通过hybrid()函数将两个模型的预测结果结合起来,生成最终的混合预测结果。

结论

综上所述,混合预测方法在M3数据集上的测试结果表明,其预测准确度达到了预期水平。与单一模型的预测结果相比,混合预测的预测区间覆盖范围更广,能够更好地满足实际应用中的需求。在未来的工作中,我们将继续探索更多混合预测模型的构建方法,并进一步优化预测区间的计算算法。

转载地址:http://qpic.baihongyu.com/

你可能感兴趣的文章
Mysql8在Windows上离线安装时忘记root密码
查看>>
MySQL8找不到my.ini配置文件以及报sql_mode=only_full_group_by解决方案
查看>>
mysql8的安装与卸载
查看>>
MySQL8,体验不一样的安装方式!
查看>>
MySQL: Host '127.0.0.1' is not allowed to connect to this MySQL server
查看>>
Mysql: 对换(替换)两条记录的同一个字段值
查看>>
mysql:Can‘t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock‘解决方法
查看>>
MYSQL:基础——3N范式的表结构设计
查看>>
MYSQL:基础——触发器
查看>>
Mysql:连接报错“closing inbound before receiving peer‘s close_notify”
查看>>
mysqlbinlog报错unknown variable ‘default-character-set=utf8mb4‘
查看>>
mysqldump 参数--lock-tables浅析
查看>>
mysqldump 导出中文乱码
查看>>
mysqldump 导出数据库中每张表的前n条
查看>>
mysqldump: Got error: 1044: Access denied for user ‘xx’@’xx’ to database ‘xx’ when using LOCK TABLES
查看>>
Mysqldump参数大全(参数来源于mysql5.5.19源码)
查看>>
mysqldump备份时忽略某些表
查看>>
mysqldump实现数据备份及灾难恢复
查看>>
mysqldump数据库备份无法进行操作只能查询 --single-transaction
查看>>
mysqldump的一些用法
查看>>