SARIMA公式表示



ARIMA(p,d,q)(P,D,Q)[m]可表示为以上公式,其中B是滞后算子,C是截距,序列y,残差epsilon。

B是滞后算子,可以和其它代数字母一样进行混合运算,但是有形如下面的表达:









ARIMA(1,1,1)x(1,1,1)[4]无截距,可表示为


注意,在展开的时候,把差分部分看成一个整体,相当于替代了原始序列y,新序列为



用差分新序列替换掉原序列,其它的展开结构不要变,这样就很简洁。

举个例子

ARIMA(0,1,2)(4,1,0)[12] intercept

SARIMAX Results
Dep. Variable:yNo. Observations:70
Model:SARIMAX(0, 1, 2)x(4, 1, [], 12)Log Likelihood-95.513
Date:Fri, 14 May 2021AIC207.026
Time:18:05:03BIC223.370
Sample:0HQIC213.378
- 70
Covariance Type:opg
coefstd errzP>|z|[0.0250.975]
intercept-0.03740.052-0.7230.470-0.1390.064
ma.L1-0.57700.146-3.9460.000-0.864-0.290
ma.L2-0.28420.170-1.6700.095-0.6180.049
ar.S.L12-0.40740.317-1.2850.199-1.0290.214
ar.S.L24-0.42780.287-1.4880.137-0.9910.135
ar.S.L36-0.52890.352-1.5010.133-1.2190.162
ar.S.L480.45410.3681.2330.218-0.2681.176
sigma20.43490.1453.0030.0030.1510.719








(20211229看这篇博文的时候,我在想为什么sarima_formula手写公式中没有e[t],因为这里就是在算yhat_t,代码中yt实际上是yhat_t,真值yt = yhat_t + e[t],对于SARIMA公式探索在“旺季预测-销量时序预测.ipynb”中)

还有一个注意点,无论如何差分,epsilon是原始序列的残差,而不是差分新序列的残差。

以上的公式基本没有问题,我结合了众多资料,并且我与python中的import pmdarima训练好的模型预测的结果进行了比对,只有极少部分存在偏差,有季节MA项的时候,偏差会稍微大一些,但整体都很接近,为什么有一些差异,这要去看代码。




留言

熱門文章