时间序列分析教程(六):Box-Jenkins方法(下)

之前介绍了如何判断序列的平稳性,如何对非平稳序列进行转换,其实整个过程就是Box-Jenkins的第一个阶段。

重新叙述以下这个过程,首先,我们拿到一段时间序列,可以画图初步判断是否平稳,假设不平稳,再画出SACF和SPACF,进一步判断有没有趋势性和季节性,如果有,就尝试之前介绍的方法,把序列转化为平稳序列,得到平稳序列之后,再画一次SACF和SPACF,根据它们判断用MA、AR还是ARMA模型。

至于怎么确定模型的阶数,AR(P)的话,看SPACF的图像,如果SPACF具有截尾性,即在lag>p时接近0(在0的小范围内波动),则阶数为p。对于MA(q),则是看SACF,如果lag>q时接近0,则阶数为q。

至于ARMA,分析起来没有AR和MA那么简单,一般只能从ARMA(1,1)出发,建模后分析模型残差是否接近白噪声,如果不是就继续尝试ARMA(1,2)和ARMA(2,1),即使是,也还是要试一下,看模型效果有没有显著提升。

一般来说,我们会尝试建立几个不同阶数的模型,然后通过对比AIC,分析哪个模型表现最好。

虽然到目前为止,我们只是建立了模型,但基本上已经完成了大部分的工作了,毕竟后面的参数估计,直接交给计算机做就行,最后,我们再来讨论一下,建立模型之后怎么对模型进行评价。

第一种方法是看模型的残差图,如果模型的残差接近白噪声,那么参数图就不会出现任何模式特征。如果我们可以看到一种趋势或者变化规律,那么模型就不够好了,我们就需要分析一下哪里出问题了。

第二种方法是看SACF和SPACF,如果很多数值都落在±2/√5之外,模型就可能不够好了。

最后我们还可以进行Ljung-Box chi-squared test。

最后,再讲一下怎么用模型做预测,主要是讲一下非平稳序列的情况,因为对非平稳序列,我们需要做转化,比如我们通过一次差分运算转化为平稳序列,可是这个序列是差分的结果,模型分析的也是差分的结果,那么怎么用这个针对差分结果的模型预测原来的数据呢,我们只需要通过模型计算最新时刻的差分,再加上最新时刻的数据,就得到下一时刻的数据预测了。

所以,其实如果我们对数据做了变换,做预测的时候,就需要先预测变换后的数据,再转化为原来的数据,就得到原本的时间序列的预测了。

以上,就是时间序列的一个完整建模分析过程。

在github写的自然语言处理入门教程,持续更新:NLPBeginner

在github写的机器学习入门教程,持续更新:MachineLearningModels

想浏览更多关于数学、机器学习、深度学习的内容,可浏览本人博客

  • 6
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值