(一)Arima模型
时间序列建模基本步骤
- 获取被观测系统时间序列数据;
- 对数据绘图,观测是否为平稳时间序列;对于非平稳时间序列要先进行d阶差分运算,化为平稳时间序列;
- 经过第二步处理,已经得到平稳时间序列。要对平稳时间序列分别求得其自相关系数ACF 和偏自相关系数PACF ,通过对自相关图和偏自相关图的分析,得到最佳的阶层 p 和阶数 q
- 由以上得到的d、q、p,得到ARIMA模型。然后开始对得到的模型进行模型检验
一、时间序列平稳性
1.判断是否平稳
平稳性就是要求经由样本时间序列所得到的拟合曲线在未来一段时间内仍能顺着现有的形态惯性地延续下去。平稳性要求序列的均值和方差不发生明显变化。
- 严平稳:严平稳表示的分布不随时间的改变而改变。如白噪声(正太),无论怎么取,期望都是0,方差为1。
- 宽平稳:期望与相关系数(依赖性)不变。未来某时刻的t的值Xt要依赖于它的过去信息,所以需要依赖性。这种依赖性不能有明显的变化。
三种方法:
(1)时序图检验
(2)自相关系数和偏相关系数
(3)单位根检验
如果是不平稳,那就需要将其转成平稳,就要用到差分法。
2.差分法
使用差分法可以使得数据更平稳,常用方法:一阶差分法和二阶差分法
3. 纯随机性检验
纯随机序列,又称白噪声序列,序列的各项数值之间没有任何相关关系,白噪声序列是没有信息可提取的平稳序列。对于平稳非白噪声序列,均值和方差是常数。通常是建立一个线性模型来拟合该序列的发展,借此提取该序列的有用信息,ARMA模型是最常用的平稳序列拟合模型。
二、模型
1. 自回归模型AR
自回归模型描述当前值与历史值之间的关系,用变量自身的历史数据对自身进行预测。自回归模型必须满足平稳性的要求。
自回归模型首先需要确定一个阶数p,表示用几期的历史值来预测当前值。p阶自回归模型的公式定义为:
上式中yt是当前值,u是常数项,ri是自相关系数,et是误差。
自回归模型的限制:
(1)自回归模型是用自身的数据进行预测;
(2)时间序列数据必须具有平稳性;
(3)自回归只适用于预测与自身前期相关的现象。
2. 移动平均模型MA
移动平均模型关注的是自回归模型中的误差项的累加,q阶自回归过程的公式为:
移动平均法能有效地消除预测中的随机波动。
3. 自回归移动平均模型ARMA
自回归模型AR和移动平均模型MA相结合,我们就得到了自回归移动平均模型ARMA(p,q),计算公式如下:
4. 差分自回归移动平均模型ARIMA
建立ARIMA模型一般有三个阶段,分别是模型识别和定阶、参数估计和模型检验。
三、平稳时间序列建模
某个时间序列经过预处理,被判定位平稳非白噪声序列,就可以进行时间序列建模。
(1)模型识别和定阶
模型识别和定阶问题,主要是确定p,d,q三个参数,差分的阶数d一般通过观察图示,1阶或2阶即可。这里我们主要介绍p和q的确定,我们首先介绍两个函数。
【1】自相关函数ACF(autocorrelation function)
自相关函数ACF描述的是时间序列观察值与其过去的观察值之间的线性相关性。
公式如下:
其中k代表滞后期数,如果k=2,则表示yt和yt-2
【2】偏自相关函数PACF(partial autocorrelation function)
偏自相关函数PACF描述的是在给定中间预测值的条件下,时间序列观测值与其过去的观测值之间的线性相关性。
举例:假设k=3,那我们描述的是yt和yt-3之间的相关性,但是这个相关性还受到yt-1和yt-2的影响,PACF剔除了这个影响,而ACF包含这个影响。
【3】拖尾和截尾
拖尾序列以指数率单调递减或震荡衰减,而截尾指序列从某个时点变得非常小。
出现以下情况,通常视为(偏)自相关系数拖尾:
1)如果有超过5%的样本(偏)自相关系数都落入2倍标准差范围之外
2)或者是由显著非0的(偏)自相关系数衰减为小值波动的过程比较缓慢或非常连续。
出现以下情况,通常视为(偏)自相关系数d阶截尾:
1)在最初的d阶明显大于2倍标准差范围;
2)之后几乎95%的(偏)自相关系数都落在2倍标准差范围以内;
3)且由非零自相关系数衰减为在0附近小值波动的过程非常突然。
【4】p,q阶数的确定
根据刚才判定截尾和拖尾的准则,p和q的确定基于如下的规则。
根据不同的截尾和拖尾的情况,我们可以选择AR模型,也可以选择MA模型,当然也可以选择ARIMA模型。
(2)参数估计
通过拖尾和截尾对模型进行定阶的方法,往往具有很强的主观性。回想我们之前在参数估计的时候是怎么做的,不就是损失和正则项的加权么?我们这里能不能结合最终的预测误差来确定p,q的阶数呢?在相同的预测误差情况下,根据奥卡姆剃刀准则,模型是越简单越好的。那么,平衡预测误差和参数个数,我们可以根据信息准则函数法,来确定模型的阶数。预测误差通常用平方误差即残差平方和来表示。
常用的信息准则函数法有下面几种:
AIC准则
AIC准则全称为全称是最小化信息量准则(Akaike Information Criterion),计算公式如下:
AIC = 2 *(模型参数的个数)-2ln(模型的极大似然函数)
BIC准则
(3)模型检验
这里的模型检验主要有两个:
【1】检验参数估计的显著性(t检验)
【2】检验残差序列的随机性,即残差之间是独立的
残差序列的随机性可以通过自相关函数法来检验,即做残差的自相关函数图:
(二)模型预测
预测主要有两个函数,一个是predict函数,一个是forecast函数,predict中进行预测的时间段必须在我们训练ARIMA模型的数据中,forecast则是对训练数据集末尾下一个时间段的值进行预估。
- 拟合,预测未来节点(或走势分析):
- 常规序列建模方法:AR、MA、ARMA、ARIMA
- 回归拟合
- Neural Networks
- 判断不同序列类别,即分类问题:HMM、CRF、General Classifier(ML models、NN models)
- 不同时序对应的状态的分析,即序列标注问题:HMM、CRF、RecurrentNNs
参考文献:
【1】ARIMA模型原理及实现
【2】时间序列规则法快速入门
【4】Time Series Analysis by State Space Methods
【5】时间序列分析之ARIMA
来源:oschina
链接:https://my.oschina.net/u/4281978/blog/3585099