《应用时间序列分析》笔记(第三部分:非平稳序列建模)
5 无季节效应的非平稳序列分析
5.1 Cramer 分解定理
Cramer 分解定理将 Wold 分解定理推广到非平稳序列. Cramer 分解定理指出任意时间序列 {Xt} 都可以视为两部分叠加, 一部分是时间 t 的多项式决定的确定性成分, 一部分是白噪音决定 的随机性成分, 即
Xt=μt+εt=(β0+β1t+⋯+βdtd)+(at−ψ1at−1+⋯)
其中 at∼WN(0,σa2) 是白噪声.
5.2 差分平稳
差分运算 定义差分算子 ∇=1−B, 所以
∇Xt=(1−B)Xt=Xt−Xt−1⟺Xt=Xt−1+∇Xt
定义 D 步差分算子 ∇d=1−BD, 所以
∇DXt=(1−BD)Xt=Xt−Xt−D⟺Xt=Xt−D+∇DXt
定义 d 阶差分算子 ∇d=(1−B)d, 所以
∇dXt=k=0∑d(−1)k(kd)Xt−k
Cramer 分解定理在理论上保证了 d 阶差分就可以将 {Xt} 中蕴含的确定性信息充分提取出来. 差分运算的实质就是使用自回归的方式提取序列中蕴含的确定性信息.
差分方式的选择 观察一个数据的时序图, 差分方式可以有如下选择
- 序列蕴含显著线性趋势, {∇Xt} 就可实现趋势平稳.
- 序列蕴含曲线趋势, 通常 {∇2Xt} 或 {∇3Xt} 就提取趋势影响.
- 序列蕴含周期 D, 考虑周期差分后进行差分, 即 {∇d∇DXt}, 其中通常 d=0,1,2,3 即可实现平稳.
过差分 差分会有信息损失. 如果差分阶数过大, 则会导致精度降低. 因为虽然差分没有丢失确定项的信息, 但是差分后序列叠加了多个随机项, 导致模型方差扩大数倍. 例如线性非平稳序列
Xt=β1t+at
它的一阶和二阶差分分别是
∇Xt=β1+at+at−1,∇2Xt=at−2at−1+at−2
它们都是平稳序列, 但是方差分别是
D∇Xt=2σa2,D∇2Xt=6σa2
5.3 ARIMA 模型
ARIMA(p,d,q) 模型有如下结构:
⎩⎨⎧∇dXt=Θ(B)Φ(B)εtεt∼WN(0,σε2),Xs⊥εt,∀s<t
ARIMA 中的 I 是 integrated (求和), 因为差分算子可以根据 Gauss 二项式定理展开为一个和式. 特别地, p=0 时模型退化为 IMA(d,q) 模型, q=0 时模型退化为 ARI(p,d) 模型.
平稳性 假设 ARIMA(p,d,q) 的 AR 部分的特征方程是 λp−φ1λp−1−⋯−φp=0, 则 ARIMA 模型的特征方程是
(λp−φ1λp−1−⋯−φp)(1−λd)=0
它有 p+d 个特征方程, 其中 p 个是 AR 部分的特 征根在单位圆内, d 个是差分导致的特征根在单位圆上. 所以在 d>0 时 ARIMA 模型不平稳.
方差齐性 以简单随机游走模型 ARIMA(0,1,0) 模型为例
Xt=Xt−1+εt=X0+ε1+⋯+εt,DXt=tσε2
但是差分操作 ∇Xt=εt 后序列具有方差齐性.
建模方法 先对序列进行合理差分, 直到其通过平稳性检验. 然后使用 ARMA 模型进行拟合, 直到残差通 过纯随机性检验.
预测 ARIMA 模型可以完全展开成随机扰动项的线性组合
Xt=Ψ0εt+Ψ1εt−1+⋯+Ψt−1ε1
它也有类似 Green 函数的展开
Ψk=⎩⎨⎧1,φ1Ψk−1+⋯+φkΨ0−θk,φ1Ψk−1+⋯+φpΨk−p−d−θk,k=0k=1,…,p+dk=p+d+1,…
这里定义 k>q 的 θk 为零. 考虑均方误差最小原则, k 期预测值为
x^t+k=Ψkεt+Ψk+1εt−1+⋯
预 测误差的方差为
Det+k=(1+Ψ12+⋯+Ψk−12)σε2
5.4 疏系数模型
ARIMA(p,d,q) 有 p+q 个未知参数. 有时有些阶参数缺省为 0, 则称该模型为疏系数模型 ARIMA((p1,…,pm),d,(q1,…,qn))
∇dXt=φ0+φp1∇dXt−p1+⋯+φpm∇dXt−pm+εt−θq1εt−q1−⋯−θqnεt−qn
建模方法 先对序列进行合理差分, 直到其通过平稳性检验. 然后使用 ARMA 模型进行拟合并删除不显著的参数, 直到残差通过纯随机性检验.
6 有季节效应的非平稳序列分析
6.1 因素分解理论
1919 年商业统计学家 Warren Persons 首次提出了确定性因素分解思想. Persons 将时间序列分为四个部分:
- 长期趋势 (Trend), 即序列的长期趋势.
- 循环波动 (Circle), 即不固定的循环波动.
- 季节性变化 (Season), 即固定的循环波动.
- 随机性波动 (Irrelevance), 即随机波动.
任意时间序列都可以用这四个因素的某个函数拟合
Xt=f(Tt,Ct,St,It)
最常用的是加法模型和乘法模型
Xt=Tt+Ct+St+It,Xt=Tt⋅Ct⋅St⋅It
加法模型常用于拟合波动趋势不随时间变化的序列, 乘法模型常用于拟合波动范围随趋势递增而扩大、呈现喇叭形的序列.
特殊交易日因素 在经济学领域, 容易出现两个问题:
- 若观察时期不够长, 则循环因素和趋势因素很难区分. 较长的经济循环周期可达数十年. 若观察时间仅有几年, 则循环因素很容易被当成趋势因 素.
- 传统因素分解模型没有研究交易日、工作日、周末、节假日等的影响.
近年来针对这两个问题, 人们将循环因素 Ct 改进为特殊交易日因素 (day) Dt. 常用因素分解模型有以下几种:
- 加法模型 Xt=Tt+St+Dt+It.
- 乘法模型 Xt=Tt⋅St⋅Dt⋅It.
- 伪加法模型 Xt=Tt⋅(St+Dt+It).
- 对数加法模型 lnXt=lnTt+lnSt+lnDt+lnIt.
6.2 因素分解模型
6.2.2 趋势效应的提取
在因素分解场合, 最常用的趋势效应提取法是简单中心移动平均. 考虑移动平均可以表示为
M(xt)=θ−kxt−k+⋯+θ0xt+⋯+θk′xt+k′
其中 θ−k+⋯+θ0+⋯+θk′=1.
简单中心移动平均 即所有系数相等的对称平均. 考虑移动窗口长度 n,
- 若 n 为奇数例如 n=3, 则 3 期简单中心移动平均为
M3(xt)=31(xt−1+xt+xt+1)
- 若 n 为偶数例如 n=4, 则 4 期简单中心移动平均为
M4(xt)=41(2xt−2+xt−1+xt+xt+1+2xt+2)
线性趋势的提取 简单中心移动平均能有效提取线性趋势. 设 Xt∼N(a+bt,σ2), 则可以证明 2k+1 期简单中心移动平均是无偏的. 即
EM(Xt)=a+bt
抛物线趋势的提取 简单中心移动平均能提取抛物线趋势, 但会在结局上有一个小偏差. 设 Xt∼N(a+bt+ct2,σ2), 则可以计算
EM(Xt)=a+bt+ct2+c3k(k+1)
6.2.3 季节效应的提取
加法模型 假设序列由加法模型 Xt=Tt+St+It 生成. 则季节指数的构造分为四步
-
消除趋势效应 Yt:=Xt−Tt=St+It.
-
对于每一个季节 j, 季节指数定义为该季节所有值的平均值比总平均值高(低)多少. 即
Sj=YˉSeason j−Yˉ
-
减去季节指数 Yt−Sj, 剩下的就是随机波动 It.
乘法 模型 假设序列由乘法模型 Xt=Tt⋅St⋅It 生成. 则季节指数的构造分为四步
-
消除趋势效应 Yt:=Xt/Tt=St⋅It.
-
对于每一个季节 j, 季节指数定义为该季节所有值的平均值比总平均值高(低)多少倍. 即
Sj=YˉSeason j/Yˉ
-
除以季节指数 Yt/Sj, 剩下的就是随机波动 It.
6.2.4 X11 季节调节模型
X11 模型是二战后美国人口普查局委托统计学家研发的基于计算机程序的时间序列因素分解方法.
- 1954 年起, 第一个计算机程序测试版本面试, 随后十多年中陆续推出了新的测试版本 X1 模型、X2 模型直至 X10 模型.
- 1965 年, 统计学家 Shiskin, Young 和 Musgrave 引入了两种新的移动平均方法, 研发了 X11 模型. X11 模型通过三种移动平均方法进行三阶段因素分解, 是因素分解的常用模型.
- 1975 年, 加拿大统计局将 ARIMA 模型引入 X11 模型, 研发了 X11-ARIMA 模型.
- 1998 年, 美国人口普查局将干预分析 (将在 8.2 节介绍) 引入, 研发了 X12-ARIMA 模型.
- 2006 年, 美国人口普查局将 Seats 季节调整方法引入, 研发了 X13-ARIMA-Seats 模型.
尽管现在有很多新的因素分解方法, 但是 X11 模型仍然是最重要的理论基础.
Henderson 加权移动平均 简单中心移动平均能提取一阶和二阶趋势, 但无法提取三阶趋势. Henderson 加权移动平均希望在提取一二阶趋势的情况下、还能尽量提取三阶趋势, 即给定期数 k, 求权值 θ−k,…,θk, 满足
mini=−k∑k(∇3θi)2s.t.mini=−k∑kθi=1,mini=−k∑kiθi=0
例如在 k=3 时, 有
θ0=0.55944,θ±1=0.29371,θ±2=−0.07343
Musgrave 非对称移动平均 给定一组中心移动平均系数 θ−k,…,θk, Musgrave 非对称移动平均尝试找到一组尽可能等效的移动平均系数 φ−k,…,φk−d, 使得它不包含最前的 d 期预测值. 即希望
Ei=−k∑kθiεt−i−i=−(k−d)∑kφiεt−i2=min
X11 模型 X11 模型包含三个阶段共 10 步重复迭代:
- 第一阶段:
- 第 1 步: 进行 24 期简单中心移动平均 Tt(1)=M24(Xt) 剔除周期效应, 得到趋势效应初始估计值.
- 第 2 步: 剔除趋势效应, 得到季节-不规则成分
Yt(1)=Xt/Tt(1)=St(1)It(1)
- 第 3 步: 计算序列 Yt(1) 的季节指数 St(1)=Yt(1)/Yˉt(1).
- 第 4 步: 剔除季节效应, 得到趋势-不规则成分
Xt(2)=Xt/St(1)=TtIt
- 第二阶段:
- 第 5 步: 进行 13 期 Henderson 加权移动平均 Tt(2)=H13(Xt(2)), 并用 Musgrave 非对称移动平均填补 Henderson 加权平均不能获得的末几期估计值, 得出趋势效应估计值.
- 第 6 步: 剔除趋势效应 Yt(2)=Xt(2)/Tt(2)=St(2)It(2), 得到季节-不规则成分.
- 第 7 步: 计算序列 Yt(2) 最终的季节指数 St(2)=Yt(2)/Yˉt(2).
- 第 8 步: 剔除季节效应, 得到季节调整后序列 Xt(3)=Xt/St(2)=TtIt.
- 第三阶段:
- 第 9 步: 根据 {Xt(3)} 的波动性大小, 程序自动选择适当期数的 Henderson 加权移动平均, 并用 Musgrave 非对称移动平均填补末几期估计值, 计算最终趋势效应
Tt(3)=H2k+1(Xt(3))
- 第 10 步: 剔除趋势效应, 得到最终随机波动
It(3)=Xt(3)/Tt(3)
在第 7 步、第 9 步和第 10 步中分别得到了季节、趋势和随机波动的三个估计值. 最后将它们组合起来, 得到最终的因素分解结果.
Xt=Tt(3)St(2)It(3)
6.3 指数平滑预测模型
6.3.1 简单指数平滑
简单指数平滑可以拟合无长期趋势也无季节效应的序 列. 即假定序列 Xt 满足
Xt=μ+εt,εt∼i.i.dN(0,σ2)
简单指数平滑的预测模型为
X^t+1=αXt+(1−α)X^t
可以展开为
X^t+1=αXt+α(1−α)Xt−1+α(1−α)2Xt−2+⋯
其中 α∈(0,1) 是平滑系数. 对于变化缓慢的序列, 常取较小的 α; 对于变化迅速的序列, 常取较大的 α. 经验 α 常介于 0.05 和 0.3 之间.
6.3.2 Holt 两参数指数平滑
Holt 两参数指数平滑可以拟合有线性趋势但无季节效应的序列. 即假定序列 Xt 满足
Xt=a+bt+εt,εt∼i.i.dN(0,σ2)
它可以等价写成
Xt=(at−1Xt−1−εt−1)+(btb+εt)=at−1+bt
预测模型为
a^t+1b^t+1=αXt+(1−α)(a^t+b^t)=β(a^t+1−a^t)+(1−β)b^t
向前 k 期预测值为
X^t+k=a^t+kb^t
6.3.3 Holt-Winters 三参数指数平滑
Holt-Winters 三参数指数平滑可以拟合有线性趋势和季节效应的序列.
加法模型 即假定序列 Xt 满足
Xt=a+bt+ct+εt,εt∼i.i.dN(0,σ2)
其中 ct=Sj+et,et∼i.i.dN(0,σe2) 是季节效应. 它可以等价写成
Xt=(at−1Xt−1−ct−1−εt−1)+(btb+εt)+(ctSj+et)=at−1+bt+ct
预测模型为
a^t+1b^t+1c^t+1=α(Xt+1−ct+1−m)+(1−α)(a^t+b^t)=β(a^t+1−a^t)+(1−β)b^t=γ(Xt+1−a^t+1)+(1−γ)ct+1−m
其中 m 是周期长度. 向前 k 期预测值为
X^t+k=a^t+kb^t+c^t+k
其中 c^t+k=S^j, j 是第 t+k 期的季节序号.
乘法模型 即假定序列 Xt 满足
Xt=(a+bt+εt)ct,εt∼i.i.dN(0,σ2)
它可以等价写成
Xt=((at−1Xt−1/ct−1−εt−1)+(btb+εt))(ctSj+et)=(at−1+bt)ct
预测模型为
a^t+1b^t+1c^t+1=α(Xt+1/ct+1−m)+(1−α)(a^t+b^t)=β(a^t+1−a^t)+(1−β)b^t=γ(Xt+1/a^t+1)+(1−γ)ct+1−m
向前 k 期预测值为
X^t+k=(a^t+kb^t)c^t+k
其中 c^t+k=S^j, j 是第 t+k 期的季节序号.
6.4 ARIMA 加法模型
ARIMA 模型也可以用于提取季节效应. 它的模型结构是
∇S∇dXt=Φ(B)Θ(B)εt
其中 S 是周期步长. 该加法模型可以记为 ARIMA(p,d,q)×(0,1,0)S.
6.5 ARIMA 乘法模型
ARIMA 加法模型的季节因素仅是加法关系. 考虑带有乘法关系的 ARIMA 乘法模型, 它是基于单一观测值的 ARIMA(p,d,q) 模型和基于周期观测值的 ARIMA(P,D,Q) 模型的复合. 它的模型结构是
∇SD∇dXt=Φ(B)Θ(B)ΦS(B)ΘS(B)εt
该乘法模型可以记为 ARIMA(p,d,q)×(P,D,Q)S. 其中
ΦS(B)=1−φ1′BS−⋯−φP′BPS,ΘS(B)=1−θ1′BS−⋯−θQ′BQS
在模型定阶时, 基础部分的 ARIMA 模型考虑 1,2,… 阶 ACF 和 PACF; 周期部分的 ARIMA 模型考虑 S,2S,… 阶 ACF 和 PACF. 考虑 d 阶差分可以消除趋势, 考虑 S 步 D 阶差分可以消除季节效应及其趋势.