全文链接:http://tecdat.cn/?p=32773
原文出处:拓端数据部落公众号
分析师:Feier Li
ARIMA 是能够拟合工夫序列数据的模型,依据本身的过来值 (即本身的滞后和滞后的预测误差)“解释”给定的工夫序列,因而能够应用方程式预测将来价值。任何具备模式且不是随机白噪声的“非季节性 ” 工夫序列都能够应用 ARIMA 模型进行建模。
模型辨认
模型步骤
结构 arima 模型须要四个步骤:
- 平稳性测验
- 模型辨认
- 参数估计
- 模型测验
平稳性测验
图测验
- 时序图
趋势特色
●周期特色
●以上均无
- 自相干图
单位根测验
若序列是安稳的,那么该序列的所有特色根都应该在单位圆内。
若序列存在特色根在单位,上或单位圆外, 则该序列是非安稳序列。
差分安稳
差分通过从以后察看值中减去先前的察看值来执行求差。
模型辨认
参数估计及模型测验
模型的显著性测验
若残差序列为非白噪声序列,则意味着残差序列还有残留的相干信息未被提取,阐明拟合模型不够无效。
参数的显著性测验
测验每一个参数是否显著非零,若不显著非零, 即示意该参数所对应的自变量对因变量影响不显著,可将其剔除。
总结
利用场景:
- 对销售数据进行剖析,以预测将来的销售情况
- 能够用于预测将来的气候变化,用于钻研环境问题
-
可剖析行业数据,以便预测行业的将来发展趋势和倒退方向。
长处:
- 实现简略、计算量小
-
能够无效解决不平滑、不确定性较大的工夫序列数据
毛病:
- 模型容易受到异样值的影响
- 实质上只能捕获线性关系,而不能捕获非线性关系。
R 语言用 ARIMA 模型,ARIMAX 模型预测冰淇淋生产工夫序列数据
规范的 ARIMA(挪动均匀自回归模型)模型容许只依据预测变量的过来值进行预测。该模型假设一个变量的将来的值线性地取决于其过来的值,以及过来(随机)影响的值。ARIMAX 模型是 ARIMA 模型的一个扩大版本。它还包含其余独立(预测)变量。该模型也被称为向量 ARIMA 或动静回归模型。
ARIMAX 模型相似于多变量回归模型,但容许利用回归残差中可能存在的自相干来进步预测的准确性。\
本文练习提供了一个进行 ARIMAX 模型预测的练习。还查看了回归系数的统计学意义。
\
这些练习应用了冰淇淋生产数据。该数据集蕴含以下变量。
- 美国的冰淇淋生产(人均)
- 每周的均匀家庭收入
- 冰淇淋的价格
- 平均温度。
观测数据的数量为 30 个。它们对应的是 1951 年 3 月 18 日至 1953 年 7 月 11 日这一时间段内的周围工夫。\
练习 1
加载数据集,并绘制变量 cons(冰淇淋生产)、temp(温度)和支出。
ggplot(df, aes(x = X, y = income)) +
ylab("支出") +
xlab("工夫") +
grid.arrange(p1, p2, p3, ncol=1, nrow=3)
练习 2
对冰淇淋生产数据预计 ARIMA 模型。而后将该模型作为输出传给预测函数,失去将来 6 个期间的预测数据。
auto.arima(cons)
fcast_cons <- forecast(fit_cons, h = 6)
练习 3
绘制失去的预测图。
练习 4
找出拟合的 ARIMA 模型的均匀绝对误差(MASE)。
accuracy
练习 5
为生产数据预计一个扩大的 ARIMA 模型,将温度变量作为一个额定的回归因子(应用 auto.arima 函数)。而后对将来 6 个期间进行预测(留神这个预测须要对冀望温度进行假如;假如将来 6 个期间的温度将由以下向量示意:
fcast_temp <- c(70.5, 66, 60.5, 45.5, 36, 28))
\
绘制取得的预测图。
练习 6
输入取得的预测摘要。找出温度变量的系数,它的标准误差,以及预测的 MASE。将 MASE 与初始预测的 MASE 进行比拟。
summary(fca)
温度变量的系数是 0.0028
该系数的标准误差为 0.0007
均匀相对比例误差为 0.7354048,小于初始模型的误差(0.8200619)。
练习 7
查看温度变量系数的统计意义。该系数在 5% 的程度上是否有统计学意义?
test(fit)
练习 8
预计 ARIMA 模型的函数能够输出更多的附加回归因子,但只能以矩阵的模式输出。创立一个有以下几列的矩阵。
温度变量的值。\
支出变量的值。\
滞后一期的支出变量的值。\
滞后两期的支出变量的值。\
输入该矩阵。\
留神:最初三列能够通过在支出变量值的向量中增加两个 NA 来创立,并将失去的向量作为嵌入函数的输出(维度参数等于要创立的列数)。
vars <- cbind(temp, income)
print(vars)
练习 9
应用取得的矩阵来拟合三个扩大的 ARIMA 模型,应用以下变量作为额定的回归因子。
温度、支出。\
温度、支出的滞后期为 0、1。\
温度,滞后期为 0、1、2 的支出。\
查看每个模型的摘要,并找到信息准则(AIC)值最低的模型。\
留神 AIC 不能用于比拟具备不同阶数的 ARIMA 模型,因为察看值的数量不同。例如,非差分模型 ARIMA(p,0,q)的 AIC 值不能与差分模型 ARIMA(p,1,q)的相应值进行比拟。
auto.arima(cons, xreg = var)
print(fit0$aic)
能够应用 AIC,因为各模型的参数阶数雷同(0)。
AIC 值最低的模型是第一个模型。
它的 AIC 等于 -113.3。
练习 10
应用上一练习中发现的模型对将来 6 个期间进行预测,并绘制预测图。预测须要一个将来 6 个期间的冀望温度和支出的矩阵;应用 temp 变量和以下冀望支出值创立矩阵:91, 91, 93, 96, 96, 96。\
找出该模型的均匀相对比例误差,并与本练习集中前两个模型的误差进行比拟。
带有两个内部回归因子的模型具备最低的 均匀相对比例误差 (0.528)
对于分析师
在此对 Feier Li 对本文所作的奉献示意诚挚感激,她实现了数据迷信与大数据技术学位,专一机器学习畛域。善于 Python、SPSS。
最受欢迎的见解
1. 在 python 中应用 lstm 和 pytorch 进行工夫序列预测
2.python 中利用长短期记忆模型 lstm 进行工夫序列预测剖析
3. 应用 r 语言进行工夫序列(arima,指数平滑)剖析
4.r 语言多元 copula-garch- 模型工夫序列预测
5.r 语言 copulas 和金融工夫序列案例
6. 应用 r 语言随机稳定模型 sv 解决工夫序列中的随机稳定
7.r 语言工夫序列 tar 阈值自回归模型
8.r 语言 k -shape 工夫序列聚类办法对股票价格工夫序列聚类
9.python3 用 arima 模型进行工夫序列预测