时间序列分析教程(四):AR与MA模型详细分析(公式推导,慎入)
之前从比较浅的角度介绍了AR、MA、ARMA等模型,最近在课堂上发现其实还有很多细节可以深究。如果只是想要简单了解这些模型然后应用,我个人觉得之前的文章已经足够了,而如果有兴趣更深入地了解AR和MA模型,这里会更多地从数学的角度,分析一下它们的表达式、期望方差以及平稳的条件。
首先介绍一下滞后算子(Backward shift operator)和差分算子(difference operator)。对一段时间序列,滞后算子为:
BXt=B(Xt)=Xt−1BX_t = B(X_t) = X_{t-1}BXt=B(Xt)=Xt−1
进一步定义二阶和三阶滞后算子:
B2Xt=Xt−2B^2X_t = X_{t-2}B2Xt=Xt−2
B3Xt=Xt−3B^3X_t = X_{t-3}B3Xt=Xt−3
差分算子:
▽Xt=Xt−Xt−1\bigtriangledown X_t = X_{t} - X_{t-1}▽Xt=Xt−Xt−1
▽2Xt=(Xt−Xt−1)−(Xt−1−Xt−2)=Xt−2Xt−1+Xt−2\bigtriangledown^2 X_t = (X_{t} - X_{t-1}) - (X_{t-1} - X_{t-2}) = X_{t} - 2X_{t-1} + X_{t-2}▽2Xt=(Xt−Xt−1)−(Xt−1−Xt−2)=Xt−2Xt−1+Xt−2
注意,滞后算子和差分算子存在关系:
▽=1−B\bigtriangledown = 1 - B▽=1−B
接下来先分析AR模型,之前介绍过它的公式可以表达为:
Xt=α0+α1Xt−1+α2Xt−2+...+αpXt−p+etX_t = \alpha_0 + \alpha_1 X_{t-1} + \alpha_2 X_{t-2} + ... + \alpha_p X_{t-p} + e_tXt=α0+α1Xt−1+α2Xt−2+...+αpXt−p+et
改写alpha_0:
α0=μ−α1μ−α2μ−...−αpμ\alpha_0 = \mu - \alpha_1 \mu - \alpha_2 \mu - ... - \alpha_p \mu α0=μ−α1μ−α2μ−...−αpμ
以下就是见证奇迹的时刻了:
Xt−α0−α1Xt−1−α2Xt−2−...−αpXt−p=etX_t - \alpha_0 - \alpha_1 X_{t-1} - \alpha_2 X_{t-2} - ... - \alpha_p X_{t-p} = e_tXt−α0−α1Xt−1−α2Xt−2−...−αpXt−p=et
(Xt−μ)−α1(Xt−1−μ)−α2(Xt−2−μ)−...−αp(Xt−p−μ)=et(X_t - \mu) - \alpha_1 (X_{t-1}-\mu) - \alpha_2 (X_{t-2}-\mu) - ... - \alpha_p (X_{t-p}-\mu) = e_t(Xt−μ)−α1(Xt−1−μ)−α2(Xt−2−μ)−...−αp(Xt−p−μ)=et
ϕ(B)(Xt−μ)=et\phi (B) (X_t-\mu) = e_tϕ(B)(Xt−μ)=et
whereϕ(B)=1−α1B−α2B2−...−αpBpwhere \quad \phi (B) = 1 - \alpha_1 B - \alpha_2 B^2 - ... - \alpha_p B^pwhereϕ(B)=1−α1B−α2B2−...−αpBp
以上就是引入了滞后算子的AR模型表达式。
基于AR模型的表达式,再看看AR模型的均值和方差,首先来看看一阶AR模型:
Xt=μ+α(Xt−1−μ)+etX_t = \mu + \alpha(X_{t-1} - \mu) + e_tXt=μ+α(Xt−1−μ)+et
Xt=μ+α(μ+α(Xt−2−μ)+et−1−μ)+etX_t = \mu + \alpha(\mu + \alpha(X_{t-2} - \mu) + e_{t-1} - \mu) + e_tXt=μ+α(μ+α(Xt−2−μ)+et−1−μ)+et
Xt=μ+α2(Xt−2−μ)+αet−1+etX_t = \mu + \alpha^2 (X_{t-2} - \mu) + \alpha e_{t-1} + e_tXt=μ+α2(Xt−2−μ)+αet−1+et
..................
Xt=μ+αt(X0−μ)+∑j=0t−1αjet−jX_t = \mu + \alpha^t (X_{0} - \mu) + \sum_{j=0}^{t-1} \alpha^j e_{t-j}Xt=μ+αt(X0−μ)+j=0∑t−1αjet−j
再看看他们的期望方差:
E(Xt)=μ+αt(E(X0)−μ)E(X_t) = \mu + \alpha ^t (E(X_0) - \mu)E(Xt)=μ+αt(E(X0)−μ)
Var(Xt)=α2t[Var(X0)−σ21−α2]+σ21−α2Var(X_t) = \alpha^{2t}[Var(X_0)-\frac{\sigma^2}{1-\alpha^2}] + \frac{\sigma^2}{1-\alpha^2}Var(Xt)=α2t[Var(X0)−1−α2σ2]+1−α2σ2
其中sigma是白噪声的标准差。
具体的推导过程这里为了不引起读者反感就省略了,有兴趣的可以在网上搜索相关资料,接下来,我们就可以通过期望方差公式,引出一阶AR模型平稳的条件:序列长度无穷以及alpha的绝对值小于1,我们可以看一下这种条件下期望和方差的表达式:
E(Xt)=μE(X_t) = \mu E(Xt)=μ
Var(Xt)=σ21−σ2Var(X_t) = \frac{\sigma^2}{1-\sigma^2}Var(Xt)=1−σ2σ2
两者都是常数,满足平稳的条件。因此这就是一阶AR模型的平稳条件。
以上讨论的是一阶AR模型,实际上更高阶的模型是用其他方法判断是否平稳的,万幸的是,我们可以通过一条通用公式(characteristic equation )对任意阶的AR模型进行判断:
ϕ(z)=1−α1z−α2z2−...−αpzp=0\phi(z) = 1 - \alpha_1 z - \alpha_2 z^2 - ... - \alpha_p z^p = 0ϕ(z)=1−α1z−α2z2−...−αpzp=0
当方程的所有p个根zj的绝对值都大于1,那么AR模型就是平稳的,也就是说,所有解都落在解平面的单位圆外,当p=1时:
ϕ(z)=1−α1z=0\phi(z) = 1 - \alpha_1 z = 0ϕ(z)=1−α1z=0
∣z∣>1⇔∣α1∣<1|z| > 1 \Leftrightarrow | \alpha_1| < 1∣z∣>1⇔∣α1∣<1
这也是之前推导的一阶AR模型的平稳条件。
讨论完AR模型,接下来再看看MA模型,放心,MA模型的内容要简单点,而且能坚持看到这里的人,想必也不会害怕继续推公式的。
首先我们还是引入滞后算子,重新改写一下MA模型的表达式:
Xt=μ+θ(B)etX_t = \mu + \theta(B) e_tXt=μ+θ(B)et
θ(B)=1+β1B+...+βqBq\theta(B) = 1 + \beta_1 B + ... + \beta_q B^qθ(B)=1+β1B+...+βqBq
对于MA模型的期望,因为白噪声的期望为0,所以MA模型的期望就是一个常数:
E(Xt)=E(μ)+E(θ(B)et)=μE(X_t) = E(\mu) + E(\theta(B) e_t) = \muE(Xt)=E(μ)+E(θ(B)et)=μ
MA模型的方差同样也是一个常数:
Var(Xt)=Cov(Xt,Xt)=σ2∑j=0qβj2Var(X_t) = Cov(X_t, X_t) = \sigma^2 \sum_{j=0}^q \beta_j^2Var(Xt)=Cov(Xt,Xt)=σ2j=0∑qβj2
其中,sigma是白噪声的标准差,所以MA模型一定是平稳的。
恭喜你,到这里本文就结束了,向每一个看完本文的人致敬。
在github写的自然语言处理入门教程,持续更新:NLPBeginner
在github写的机器学习入门教程,持续更新:MachineLearningModels
想浏览更多关于数学、机器学习、深度学习的内容,可浏览本人博客
时间序列分析教程(四):AR与MA模型详细分析(公式推导,慎入)相关推荐
- 金融时间序列分析:5. AR模型实例(Python)
0. 目录 金融时间序列分析:9. ARMA自回归移动平均模型 金融时间序列分析:8. MA模型实例(Python) 金融时间序列分析:7. MA滑动平均模型 金融时间序列分析:6. AR模型实例 金 ...
- 时间序列分析:指数平滑和ARIMA模型
时间序列分析 一.基本知识 1.时间序列的基本概念 2.时间序列分解模型 3.时间序列分解的举例--某产品销售数据分析 二.七种指数平滑模型 模型一:简单模型(Simple) 模型二:线性趋势模型(H ...
- 金融时间序列分析:4. AR自回归模型
0. 目录 金融时间序列分析:9. ARMA自回归移动平均模型 金融时间序列分析:8. MA模型实例(Python) 金融时间序列分析:7. MA滑动平均模型 金融时间序列分析:6. AR模型实例 金 ...
- arima模型 p q d 确定_时间序列分析第07讲(ARIMA模型,季节时间序列模型,均值的估计)...
3.3 广义 ARMA 模型和 ARIMA 模型介绍 一.广义 ARMA 模型 (1)定义 我们把 ARMA 模型中关于多项式 A(z),B(z) 的最小相位条件去掉(即允许有单位圆内的根),其余定义 ...
- 时间序列分析教程(五):Box-Jenkins方法(上)
之前介绍了时间序列的基本性质和一些基本模型,这里就介绍对时间序列进行分析建模的一套完整流程,也就是Box-Jenkins方法. 简单来说Box-Jenkins方法包括四个阶段,第一,把序列转化为平稳序 ...
- 时间序列分析教程(一):基本性质
这个学期接触了时间序列分析,期末复习了几天,稍微总结一下写一个系列的文章,如果出现一些知识性错误或者迷惑的地方,欢迎交流. 时间序列分析,其实就是和自然语言处理一样对序列数据进行分析,只是这里的序列数 ...
- R语言时间序列分析-根据aic值选择arima模型
在上一篇中,探讨了R语言时间序列分析常用步骤,如何比对AIC值判断最优模型?代码和解释如下: #WWWusage是datasets包自带的每分钟通过服务器连接到因特网的用户数的长度为100的时间序列数 ...
- 【时间序列分析】11.AR(1)和AR(2)模型
文章目录 十一.AR(1){\rm AR}(1)AR(1)和AR(2){\rm AR}(2)AR(2)模型 1.AR(1){\rm AR}(1)AR(1)模型 2.AR(2){\rm AR}(2)AR ...
- 时间序列分析教程(二):移动平均与指数平滑
之前介绍了时间序列的基本概念和性质,现在就正式介绍一些处理时间序列的模型方法,第一个是移动平均法. 移动平均法很简单,就是用最近的数据预测未来短时间内的数据.有简单移动平均法,真的很简单,就是用最近的 ...
最新文章
- Cortex-M3内核的指令系统
- React生命周期(新)
- java linux 调用32位so_从linux源码看socket(tcp)的timeout
- JDBC原理及应用模板
- 华为P50系列开始量产:Pro+版或进一步延期
- C语言 socket
- 【分享】具有“魔性”的通用软件开发框架
- html三栏布局有哪几种,CSS三栏布局的5种方法详解
- 用友T3如何反结账,反记账
- java 画正弦函数曲线_JAVA画正弦曲线
- 微信小程序 时间插件 (可以选择日期+星期)
- 电梯plc的io分配_用PLC构成液体混合控制系统IO分配及梯形图编程
- 航拍地形图转换成地形图_基于高清卫星遥感影像快速生成地形图成图方法与流程...
- Groundhog Chasing Death
- watch监听的几个方法
- 青海国家沙漠公园分布及功能区划
- 意志力实验:5分钟训练大脑冥想--自控力
- 【精】微信小程序生成二维码海报分享 [原理+源码]
- C++ RALL机制详解
- skynet框架的设计结构