时序模式

来源:互联网 发布:读书笔记什么软件好 编辑:程序博客网 时间:2024/06/10 08:31
   时序模式是指通过时间序列搜索出的重复发生概率较高的模式。与回归一样,它也是用己知的数据预测未来的值,但这些数据的区别是变量所处时间的不同。

1.时间序列的预处理

      到一个观察值序列后,首先要对它的纯随机性和平稳性进行检验,这两个重要的检验称为序列的预处理。根据检验结果可以将序列分为不同的类型,对不同类型的序列会采用不同的分析方法。

     对于纯随机序列,又叫白噪声序列,序列的各项之间没有任何相关关系,序列在进行完全无序的随机波动,可以终止对该序列的分析。白噪声序列是没有信息可提取的平稳序列。

     对于平稳非白噪声序列,它的均值和方差是常数,现已有一套非常成熟的平稳序列的建模方法。通常是建立一个线性模型来拟合该序列的发展,借此提取该序列的有用信息。ARMA模型是最常用的平稳序列拟合模型。

     对于非平稳序列,由于它的均值和方差不稳定,处理方法一般是将其转变为平稳序列,这样就可以应用有关平稳时间序列的分析方法,如建立ARMA模型进行相应的研究。如果一个时间序列经差分运算后具有平稳性,称该序列为差分平稳序列,可以使用ARIMA模型进行分析。

2.平稳性检验

1)平稳时间序列的定义

    对于随机变量X,可以计算其均值(数学期望)u、方差;对于两个随机变量X和Y,可以计算X,Y的协方差=E[(X-ux)(Y-uy)]和相关系数= cov(X,Y)/,它们度量了两个不同事件之间的相互影响程度。

   对于时间序列任意时刻的序列值Xt都是一个随机变量,每一个随机变量都会有均值和方差,记Xt的均值为ut,方差为任取t,s,定义序列的自协方差函数=E[(xt-ut)(Xs-us)]和自相关系数,之所以称它们为自协方差函数和自相关系数,是因为它们衡量的是同一个事件在两个不同时期(时刻t和时刻s)之间的相关程度,形象地讲就是度量子集过去的行为对自己现在的影响。

  如果事件序列 在某一常数附近波动且波动范围有限,即有常数均值和常数方差,并且延迟k期的序列变量的自协方差和自相关系数是相等的或者说延迟k期的序列变量之间的影响程度是一样的,则称为平稳序列。

2)平稳性的检验

     对序列平稳性的检验有两种检验方法:一种是根据时序图和自相关图的特征做出判断的图检验,该方法操作简单、应用广泛;另一种是构造检验统计量进行的方法,目前最常用的方法是单位根检验。

l  时序图检验:根据平稳时间序列的均值和方差都为常数的性质,平稳序列的时序图显示该序列值始终在一个常数附近随机波动,而且波动的范围有界;如果有明显的趋势性或周期性那它通常不是平稳序列。

l  自相关图检验:平稳序列具有短期相关性,这个性质表明对平稳序列而言通常只有近期的序列值对现时值的影响比较明显,间隔越远的过去值对现时值的影响越小。随着延迟期k的增加,平稳序列的自相关系数会比较快的衰减趋向于零,并在零附近随机波动,而非平稳序列的自相关系数衰减的速度比较慢,这就是利用自相关图进行平稳性检验的标准。

l  单位根检验:单位根检验是指检验序列中是否存在单位根,因为存在单位根就是非平稳性序列了。

3.纯随机性检验

     如果一个序列是纯随机序列,那么它的序列值之间应该没有任何关系,即满足 ,这是一种理论上才会出现的理想状态,实际上纯随机序列的样本自相关系数不会绝对为零,但是很接近为零,并在零附近随机波动。

     纯随机性检验也称为白噪声检验,一般是构造检验统计量来检验序列的纯随机性,常用的检验统计量有Q统计量、LB统计量,由样本各延迟期数的自相关系数可以计算得到检验统计量,然后计算出对应的p值,如果p值显著大于显著性水平,则表示该序列不能拒绝纯随机性的原假设,可以停止对该序列的分析。

 

平稳时间序列分析

     ARMA模型的全称是自回归移动平均模型,它是目前最常用的拟合平稳序列的模型。它又可以细分为AR模型、MA模型和ARMA三大类,都可以看做是多元线性回归模型。

4.平稳时间序列建模

    某个时间序列经过预处理,被判定为平稳非白噪声序列,就可以利用ARMA模型进行建模。计算出平稳非白噪声序列{Xt}的自相关系数和偏自相关系数,再由AR(P)模型、MA(q)和ARMA(p,q)的自相关系数和偏自相关系数的性质,选择合适的模型。平稳时间序列建模步骤如下图所示:


1)  计算ACF和PACF:先计算平稳非白噪声序列的自相关系数(ACF)和偏自相关系数(PACF)。

2)  ARMA模型识别:也叫模型定阶,由AR(p)模型、MA(q)和ARMA(p,q)的自相关系数和偏自相关系数的性质,选择合适的模型。识别的原则如下表所示:

模型

自相关系数(ACF)

偏自相关系数(PACF)

AR(p)

拖尾

P阶截尾

MA(q)

q阶结尾

拖尾

ARMA(p,q)

拖尾

拖尾

3)  估计模型中未知参数的值并进行参数检验。

4)  模型检验

5)  模型优化

6)  模型应用:进行短期预测

 

 

非平稳性时间序列分析

对非平稳性时间序列的分析方法可以分为确定性因素分解的时序分析和随机性时序分析两大类。

确定性因素分解的方法把所有序列的变化都归结为四个因素(长期趋势、季节变动、循环变动和随机波动)的综合影响,其中长期趋势和季节变动的规律信息通常比较容易提取,而由随机因素导致的波动则非常难以确定和分析,对随机信息浪费严重,会导致模型拟合精度不够理想。

   随机序列分析法的发展就是为了弥补确定性因素分解方法不足。根据实际序列的不同特点,随机时序分析可以建立的摸有ARIMA模型、残差自回归模型、季节模型、异方差模型等。

5.ARIMA模型

主要通过ARIMA模型对非平稳性时间序列进行建模

1.      差分运算

p阶差分:相距一期的两个序列值之间的减法运算称为1阶差分运算。

k步差分:相距k期的两个序列之间的减法运算称为k步差分运算。

2.      ARIMA模型

差分运算具有强大的确定性信息提取能力,许多非平稳序列差分后会显示出平稳序列的性质,这时称这个非平稳序列为差分平稳序列。对差分平稳序列可以使用ARMA模型进行拟合。ARIMA模型的实质就是差分运算与ARMA模型的组合,掌握了ARMA模型的建模方法和步骤以后,对序列建立ARIMA模型是比较简单的。差分平稳时间序列加墨步骤如下图所示:

 


6.R语言主要时序模式算法函数

R语言实现的时序模式算法主要是ARIMA模型,在使用该模型进行建模时,需要进行一系列判别操作,主要包括平稳性检验、白噪声检验、是否差分、AIC和BIC指标值、模型定阶,最后再做预测。

函数名

函数功能

所属程序包

acf()

计算自相关系数,画自相关系数图

R语言通用函数

pacf()

计算偏相关系数,画偏相关系数图

R语言通用函数

unitrootTest()

对观测值序列进行单位根检验

funitRoots

diff()

对观测值序列进行差分计算

R语言通用函数

armasubsets

模型定阶,确定时序模式的建模参数,创建回归时序模型

TSA

arima()

设置时序模式的建模参数,创建ARIMA时序模型或者把回归时序模型转换为ARIMA模型

R语言通用函数

Box.test()

检测ARIMA模型是否符合白噪声检验

R语言通用函数

forecast()

应用构建的时序模型进行预测

forecast

0 0
原创粉丝点击