1.ARIMA模型的基本思想
将预测对象随时间推移而形成的数据序列视为一个随机序列,对其进行差分整合后用自回归加移动平均来拟合,并据其对时间序列的过去值及未来值进行预测的数学方法,即ARIMA模型的基本思想。
ARIMA模型一般表示为ARIMA(p,d,q),其数学表达式为
φp(B)(1-B)dyt=θq(B)εt, (7-9)
式中:φp(B)=1-φ1B-…-φpBp,θq(B)=1-θ1B-…-θqBq;
AR是自回归,p为自回归项,MA为移动平均,q为移动平均项数,d为差分次数;yt是时间序列,B是后移算子,φ1,…,φp为自回归系数,θ1,…,θq为移动回归系数,{εt} 是白噪声序列。
2.ARIMA模型预测基本程序
(1)平稳性识别
以自相关函数和偏自相关函数图等来判定数列是否为平稳型。
(2)对非平稳序列进行平稳化处理
存在增长或下降趋势,需进行差分处理,直到处理后的数据的自相关函数值和偏相关函数值显著地等于零。
(3)根据时间序列模型的识别规则建立相应模型
据序列的自相关和偏相关函数图判定模型的类型及p与q的阶数。
在自相关和偏相关函数图上,函数在某一步之后为零,称为截尾;不能在某一步之后为零,而是按指数衰减或正负相间递减的形式,称为拖尾。
由自相关函数和偏相关函数是截尾还是拖尾及其期次可进行模型判别,标准见表7-8。
表7-8 模型参数的ACF-PACF图判别的标准
(4)假设检验,诊断残差序列是否为白噪声
用χ2检验检测所估计模型的白噪声残差,其残差应是一随机序列,否则进行残差分析,必要时需重新确定模型。
(5)预测分析
利用已通过检验的模型进行预测分析,得到x(t)在t+1期,即1期以后的预测值,记这个预测值为x(t+1),称它为未来第1期的预测值。
arima模型全称为差分自回归移动平均模型:arima模型是由博克思和詹金斯于70年代初提出的一著名时间序列预测方法,所以又称为box-jenkins模型、博克思-詹金斯法。
arima(p,d,q)称为差分自回归移动平均模型,AR是自回归,p为自回归项MA为移动平均,q为移动平均项数,d为时间序列成为平稳时所做的差分次数。
arima模型是指将非平稳时间序列转化为平稳时间序列,然后将因变量仅对它的滞后值以及随机误差项的现值和滞后值进行回归所建立的模型。
arima模型根据原序列是否平稳以及回归中所含部分的不同,包括移动平均过程、自回归过程、自回归移动平均过程以及ARIMA过程。
arima模型将预测对象随时间推移而形成的数据序列视为一个随机序列,用一定的数学模型来近似描述这个序列。
这个模型一旦被识别后就可以从时间序列的过去值及现在值来预测未来值。
现代统计方法、计量经济模型在某种程度上已经能够帮助企业对未来进行预测。
ARMA, ARIMA, SARIMA assumptions:▪ Time-series data is stationary.
▪ If nonstationary, remove trend, seasonality, apply differencing, and so on.
▪ Remember that stationary data has no trend, seasonality, constant mean, and
constant variance.
▪ Therefore, the past is assumed to represent what will happen in the future
in a probabilistic sense.
pyramid-arima 的安装请见 https://pypi.org/project/pyramid-arima/
(我只在linux系统上成功安装了,windows上没有成功)
函数参数介绍请见 https://www.alkaline-ml.com/pmdarima/index.html
Github上的例子请见 https://github.com/tgsmith61591/pmdarima
pm.auto_arima可以自动搜索出arima模型中的(q, d, p)参数
参考 https://blog.csdn.net/HHXUN/article/details/79858672
利用 model.predict() 函数预测
或更优的,使用 model.update() 函数,不断用新观测到的 value 更新模型,以达到更长时间的预测。
2.4 模型评价
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)