定义   设{xt,t=0,±1,±2,…}为时间序列,白噪声序列为{εt,t=0,±1,±2,…} ,且对任意的 s<t,E(xsεt)=0,则称满足等式

 

AR模型的识别与定阶python ar(p)模型定阶_AR模型的识别与定阶python

的时间序列为p阶自回归(Autoregression)序列,上式为p阶自回归模型,记作 AR(p)。

其中

AR模型的识别与定阶python ar(p)模型定阶_自回归模型_02

是自回归参数。

易见,此自回归模型描述了数据序列内部的递推的线性回归关系。


方程式可用框图表示:  设想有一个滤波器,输入的是白噪声序列,而输出的则是某种平稳序列,即

AR模型的识别与定阶python ar(p)模型定阶_功率谱_03

易见,滤波器成为一个对时间序列进行变换的实体,变换前的序列称为输入,经滤波器变换的得到的序列称为输出。

等式两端同乘xt-k即得

AR模型的识别与定阶python ar(p)模型定阶_功率谱_04

对两端取数学期望, 并由性质:

AR模型的识别与定阶python ar(p)模型定阶_AR模型_05

AR模型的识别与定阶python ar(p)模型定阶_AR模型的识别与定阶python_06

又因为

AR模型的识别与定阶python ar(p)模型定阶_博客_07


所以可得矩阵方差

AR模型的识别与定阶python ar(p)模型定阶_功率谱_08

如何求解以上矩阵获得自回归参数?可以利用Yule-Walker方程求AR(p)序列的自相关函数方法,即称为尤尔-沃克法。

其中可以用Levinson算法和Burg算法求解Yule-Walker方程来计算模型参数。


例1   单摆现象:单摆在第t个摆动周期中最大摆幅记为xt,由于阻尼作用,在第t+1个摆动周期中,其最大振幅为
其中ρ为阻尼系数。若再受到外界干扰εt的影响,则实际上的最大振幅为
易见, 此例即为一个一阶自回归模型 AR(1)。



例2   已知 AR(4) 模型为



AR模型的识别与定阶python ar(p)模型定阶_博客_09


其中w是零均值、单位方差的白噪声。


用此模型分别产生 1024 点数据,然后分别用 Levinson 算法和 Burg 算法求解 Yule-Walker 方程来计算模型参数,并与真实值进行列表比较;在此基础上,用 AR 模型计算其功率谱,同时用 FFT 直接计算功率谱,请将不同数据点数情况下两种方法的功率谱进行画图比较,并简要说明。


解: MATLAB编程实现


图左:方法参考(也可直接调用pburg函数)                                         图右:AR估计与FFT估计功率谱曲线
误差 delta =
   -0.0016   -0.0051    0.0064   -0.0053结果分析:从图像可以看出,估计功率谱密度采用AR模型比FFT估计要平滑。