时间序列常见模型介绍与实战(SPSS)

时间序列预备知识

那么什么是时间序列呢,数学上是这么定义的:

  设 T T T 是离散的时间集, ∀ t ∈ T , X ( t ) \forall t \in T ,X(t) tT,X(t) 是一随机变量,称 X ( t ) , t ∈ T \\{X(t),t\in T\\} X(t),tT 为时间序列。

简单来讲,时间序列就是按照时间次序观察到的数据序列,是不是很通俗易懂,哈哈哈。


X ( t ) , t ∈ T \\{X(t),t\in T\\} X(t),tT 时间序列的分布
既然我们假定 T T T 是离散的数据集,那它必然有分布函数啦,

  • 一维分布: F t ( x ) = P ( X ( t ) ≤ x ) F_{t}(x)=P(X(t)\le x) Ft(x)=P(X(t)x)
  • 二维分布: F t , s ( x , y ) = P ( X ( t ) ≤ x , X ( s ) ≤ y ) F_{t,s}(x,y)=P(X(t)\le x,X(s)\le y) Ft,s(x,y)=P(X(t)x,X(s)y)
  • n n n 维分布: F t 1 ⋯ t n ( x 1 , ⋯   , x n ) = P ( X ( t 1 ) ≤ x 1 , ⋯   , X ( t n ) ≤ x n ) F_{t_1 \cdots t_n}(x_1,\cdots,x_n)=P(X(t_1)\le x_1,\cdots,X(t_n)\le x_n) Ft1tn(x1,,xn)=P(X(t1)x1,,X(tn)xn)

既然可以有多维随机变量,那我们称有限维分布函数为时间序列的有限维分布函数族,即:
⋃ n = 1 ∞ F t 1 ⋯ t n ( x 1 , ⋯   , x n ) , t 1 , ⋯   , t n ∈ T \bigcup_{n=1}^{\infty } {F_{t_1 \cdots t_n}(x_1,\cdots,x_n),t_1,\cdots,t_n\in T \\} n=1Ft1tn(x1,,xn),t1,,tnT

并且有限维分布为正态分布的时间序列也为正态序列。

当然啦,要是数据集是连续的呢?这个好办,处理数据的时候离散化就好了。


时间序列他是有数据集的,那必然有均值和方差。
我们先记 μ t \mu_t μt 为时间序列 X ( t ) \\{X(t)\\} X(t)均值函数 r ( s , t ) = C o v ( X ( s ) , X ( t ) ) r(s,t)=Cov(X(s),X(t)) r(s,t)=Cov(X(s),X(t)) 为时间序列 X ( t ) \\{X(t)\\} X(t)自协方差函数,特别地,当 s = t s=t s=t 时,称 σ t 2 = r ( t , t ) \sigma_t^2=r(t,t) σt2=r(t,t) 为时间序列 X ( t ) \\{X(t)\\} X(t)方差函数

说到自协方差函数,那会不会有互协方差函数呢? 答案是有的~~~
在实际问题中,经常要把多个时间序列放在一起考量,设 X ( s ) , s ∈ T , Y ( t ) , t ∈ T ∗ \\{X(s),s\in T\\},\\{Y(t),t \in T^* \\} X(s),sT,Y(t),tT 为两个时间序列,则有互协方差函数 r ∗ ( s , t ) = C o v ( X ( s ) , Y ( t ) ) r^*(s,t)=Cov(X(s),Y(t)) r(s,t)=Cov(X(s),Y(t)) ,特别地当 r ∗ ( s , t ) = 0 r^*(s,t)=0 r(s,t)=0 ,说明 X ( s ) \\{X(s)\\} X(s) Y ( t ) \\{Y(t)\\} Y(t) 这两个序列是不相关的。注意,这并不能说明他俩独立。

上面的描述了时间序列的数字特征,他们能反应时间序列中变量的某种关系的特征。

整理一下~~~
设时间序列为 X ( t ) , t ∈ T \\{X(t),t\in T\\} X(t),tT ,有
μ t = 0 r ( s , t ) = { σ 2 , s = t , t 、 s ∈ T 0 , s ≠ t \begin{aligned} &\mu_t=0\\ &r(s,t)= \begin{cases} \sigma^2,s=t\\ &,t、s \in T\\ 0,s\ne t \end{cases} \end{aligned} μt=0r(s,t)=σ2,s=t0,s=t,tsT

我们将这个序列为白噪声序列。记 X ( t ) ∼ N ( 0 , σ 2 ) X(t) \sim N(0,\sigma^2) X(t)N(0,σ2)

白噪声序列的定义:零均值同方差且两两不相关的序列。


关于时间序列的平稳性,有两种定义,宽平稳和严平稳。
下面给出两种平稳性的定义:

  • 设时间序列为 X ( t ) , t ∈ T \\{X(t),t\in T\\} X(t),tT ,若 ∀ m , s ∈ T , t 1 < t 2 < ⋯ < t m ; t 1 + s , t 2 + s , ⋯ < t m + s ∈ T \forall m,s \in T,t_1<t_2<\cdots<t_m;t_1+s,t_2+s,\cdots<t_m+s \in T m,sTt1<t2<<tm;t1+s,t2+s,<tm+sT ,对应的 X t 1 , X t 2 , ⋯   , X t m X_{t_1},X_{t_2},\cdots,X_{t_m} Xt1,Xt2,,Xtm X t 1 + s , X t 2 + s , ⋯   , X t m + s X_{t_1+s},X_{t_2+s},\cdots,X_{t_m+s} Xt1+s,Xt2+s,,Xtm+s 的联合分布相同,则称 X t \\{X_t\\} Xt严平稳的时间序列
  • 设时间序列为 X ( t ) , t ∈ T \\{X(t),t\in T\\} X(t),tT ,如果 X t X_t Xt 的二阶矩存在,且 E ( X t ) = C ( 常 数 ) , r ( s , t ) = r ( t − s , 0 ) , s , t ∈ T E(X_t)=C(常数),r(s,t)=r(t-s,0),s,t\in T E(Xt)=C(),r(s,t)=r(ts,0),s,tT ,则称 X t \\{X_t\\} Xt宽平稳的时间序列。注: t − s t-s ts 为时间间隔。

简单来讲,严平稳要求随时间取值规律性保持不变,而宽平稳要求随时间平移一些数字特征保持不变,即与时间无关。

通常来说,不相关平稳序列通过线性运算得到的时间序列能保持平稳性,现在我们引进延迟算子的概念,延迟算子类似于一个时间指针,当前序列值乘以一个延迟算子,就相当于把当前序列值的时间向过去拨了一个时刻。
B B B 表示一个延迟算子,定义:
{ B 0 X t = X t B 1 X t = X t − 1 ⋮ B d X t = X t − d \begin{aligned} \begin{cases} B^0X_t=X_t\\ B^1X_t=X_{t-1}\\ \vdots\\ B^dX_t=X_{t-d}\\ \end{cases} \end{aligned} B0Xt=XtB1Xt=Xt1BdXt=Xtd

一般有 B g ( t ) = g ( t − 1 ) Bg(t)=g(t-1) Bg(t)=g(t1)
g ( t ) = a 0 + a 1 t + ⋯ + a k t p g(t)=a_0+a_1t+\cdots+a_kt^p g(t)=a0+a1t++aktp ,则有
g ( B ) = a 0 + a 1 B + ⋯ + a k B p g(B)=a_0+a_1B+\cdots+a_kB^p g(B)=a0+a1B++akBp
我们称 g ( B ) g(B) g(B) 为延迟算子多项式,推广到级数,就有
∑ i = 0 k a i X t − i = ∑ i = 0 k a i B i X t = g ( B ) X t \sum_{i=0}^{k}a_iX_{t-i}=\sum_{i=0}^{k}a_iB^iX_t=g(B)X_t i=0kaiXti=i=0kaiBiXt=g(B)Xt

在拿到观测值序列时,分析的第一步都是要通过有效的手段提取序列中蕴涵的确定性信息, C r a m e r Cramer Cramer 分解定理在理论上保证了适当阶数差分一定可以充分提取确定性信息。

于是我们就引进了差分运算这个概念。
B B B 表示一个一步延迟算子,称 Δ = 1 − B \Delta=1-B Δ=1B 为差分算子。
现在假设有 n n n 次多项式 g ( t ) g(t) g(t) ,则 Δ g ( t ) = ( 1 − B ) g ( t ) = g ( t ) − g ( t − 1 ) \Delta g(t)=(1-B)g(t)=g(t)-g(t-1) Δg(t)=(1B)g(t)=g(t)g(t1) 也是 t t t 的多项式,他的次数为 t − 1 t-1 t1 ,也就是说,每差分一次,多项式的次数会降低一阶

好了,现在我们已经把时间序列的预备知识铺垫完了,下面将介绍常见的几种模型^_^


时间序列模型介绍

自回归模型

自回归模型 ( A u t o Auto Auto R e g r e s s i v e Regressive Regressive M o d e l Model Model ) ,简称 A R AR AR 模型,是统计上一种处理时间序列的方法,用来描述当前值与历史值之间的关系,用变量自身的历史时间数据对自身进行预测,自回归模型必须满足平稳性的要求。

设时间序列 X t \\{X_t\\} Xt 适合 X t = a 0 + a 1 X t − 1 + ⋯ + a p X t − p + ε t X_t=a_0+a_1X_{t-1}+\cdots+a_pX_{t-p}+\varepsilon_t Xt=a0+a1Xt1++apXtp+εt ,其中 ε t \\{\varepsilon_t\\} εt 为白噪声序列, a i , i = 1 , 2 , ⋯   , p a_i,i=1,2,\cdots,p ai,i=1,2,,p 为实常数,并且 ∀ s < t \forall s<t s<t E ( X s ε t ) = 0 E(X_s\varepsilon_t)=0 E(Xsεt)=0 ,我们称此模型为 p p p 阶自回归模型,记为 A R ( p ) AR(p) AR(p) 模型。

α ( u ) = 1 − a 1 u − a 2 u 2 − ⋯ − a p u p \alpha(u)=1-a_1u-a_2u^2-\cdots-a_pu^p α(u)=1a1ua2u2apup
可将模型简化为 α ( B ) X t = ε t \alpha(B)X_t=\varepsilon_t α(B)Xt=εt

A R AR AR 模型中心化,即让 E ( X t ) = 0 E(X_t)=0 E(Xt)=0 ,也就是让 a 0 = 0 a_0=0 a0=0
我们先来看看 A R ( 1 ) AR(1) AR(1) 模型的解, 对应的序列为 X t = a X t − 1 + ε t X_t=aX_{t-1}+\varepsilon_t Xt=aXt1+εt ,则
X t − a X t − 1 = ε t ⟹ ( 1 − a B ) X t = ε t ⟹ X t = 1 1 − a B ε t = ∑ j = 0 ∞ ( a B ) j ε t = ∑ j = 0 ∞ a j ε t − j \begin{aligned} &X_t-aX_{t-1}=\varepsilon_t\\ \Longrightarrow&(1-aB)X_t=\varepsilon_t\\ \Longrightarrow&X_t=\frac{1}{1-aB}\varepsilon_t=\sum_{j=0}^{\infty}(aB)^j\varepsilon_t=\sum_{j=0}^{\infty}a^j\varepsilon_{t-j} \end{aligned} XtaXt1=εt(1aB)Xt=εtXt=1aB1εt=j=0(aB)jεt=j=0ajεtj
也就是说 X t = ∑ j = 0 ∞ a j ε t − j X_t=\sum_{j=0}^{\infty}a^j\varepsilon_{t-j} Xt=j=0ajεtj 为模型 A R ( 1 ) AR(1) AR(1) 的解。

类似求得 A R ( p ) AR(p) AR(p) 的解为
X t = 1 α ( B ) ε t = ∑ j = 0 ∞ ψ j B j ε t = ∑ j = 0 ∞ ψ j ε t − j X_t=\frac{1}{\alpha(B)}\varepsilon_t=\sum_{j=0}^{\infty}\psi_jB^j\varepsilon_t=\sum_{j=0}^{\infty}\psi_j\varepsilon_{t-j} Xt=α(B)1εt=j=0ψjBjεt=j=0ψjεtj
其中 ψ 0 = 1 , ψ 1 = a 1 , ψ j = a 1 ψ j − 1 + a 2 + ψ j − 2 , j ≥ 2 \psi_0=1,\psi_1=a_1,\psi_j=a_1\psi_{j-1}+a_2+\psi_{j-2}, j\ge2 ψ0=1,ψ1=a1,ψj=a1ψj1+a2+ψj2,j2

不加以证明的给出自协方差函数:
自 协 方 差 函 数 { r 0 = ( 1 − a 2 ) σ 2 1 − a 1 2 − a 1 a 2 − a 2 − a 2 2 + a 2 3 r 1 = a 1 σ 2 1 − a 1 2 − a 1 a 2 − a 2 − a 2 2 + a 2 3 r k = a 1 r k − 1 + a 2 r k − 2 , k ≥ 1 \begin{aligned} &自协方差函数 \begin{cases} r_0=\frac{(1-a_2)\sigma^2}{1-a_1^2-a_1a_2-a_2-a_2^2+a_2^3}\\ r_1=\frac{a_1\sigma^2}{1-a_1^2-a_1a_2-a_2-a_2^2+a_2^3}\\ r_k=a_1r_{k-1}+a_2r_{k-2},k\ge1 \end{cases} \end{aligned} r0=1a12a1a2a2a22+a23(1a2)σ2r1=1a12a1a2a2a22+a23a1σ2rk=a1rk1+a2rk2,k1

移动平均模型

移动平均模型( M o v i n g Moving Moving A v e r a g e Average Average M o d e l Model Model ),简称 M A MA MA 模型,他是一种简单平滑预测技术,它的基本思想是:根据时间序列资料、逐项推移,依次计算包含一定项数的序时平均值,以反映长期趋势的方法。

设时间序列 X t \\{X_t\\} Xt 适合 X t = ε t − b 1 ε t − 1 − ⋯ − b q ε t − q X_t=\varepsilon_t-b_1\varepsilon_{t-1}-\cdots-b_q\varepsilon_{t-q} Xt=εtb1εt1bqεtq ,其中 ε t \\{\varepsilon_t\\} εt 为白噪声序列, b i , i = 1 , 2 , ⋯   , q b_i,i=1,2,\cdots,q bi,i=1,2,,q 为实常数,我们称此模型为 q q q 阶移动平均模型,记为 M A ( q ) MA(q) MA(q) 模型。

β ( u ) = 1 − b 1 u − b 2 u 2 − ⋯ − b q u q \beta(u)=1-b_1u-b_2u^2-\cdots-b_qu^q β(u)=1b1ub2u2bquq
可将模型简化为 X t = β ( B ) ε t X_t=\beta(B)\varepsilon_t Xt=β(B)εt
该模型已经是解的形式了。
自 协 方 差 函 数 r k = { σ 2 ( 1 + ∑ j = 1 q b j 2 ) , k = 0 σ 2 ( − b k + ∑ j = 1 q − k b j b j + k ) , 1 ≤ k ≤ q 0 , k > q \begin{aligned} 自协方差函数r_k= \begin{cases} \sigma^2(1+\sum_{j=1}^{q}b_j^2)&,k=0\\ \sigma^2(-b_k+\sum_{j=1}^{q-k}b_jb_{j+k})&,1\le k\le q\\ 0&,k> q \end{cases} \end{aligned} rk=σ2(1+j=1qbj2)σ2(bk+j=1qkbjbj+k)0,k=0,1kq,k>q

自回归移动平均模型

自回归移动平均模型( A u t o Auto Auto R e g r e s s i v e Regressive Regressive M o v i n g Moving Moving A v e r a g e Average Average M o d e l Model Model ),简称 A R M A 模 型 ARMA模型 ARMA 。他的基本思想是把 A R AR AR M A MA MA 模型结合在一起,使所使用的参数个数保持很小。
设时间序列 X t \\{X_t\\} Xt 适合 X t − a 1 X t − 1 − ⋯ − a p X t − p = ε t − b 1 ε t − 1 − ⋯ − b q ε t − q X_t-a_1X_{t-1}-\cdots-a_pX_{t-p}=\varepsilon_t-b_1\varepsilon_{t-1}-\cdots-b_q\varepsilon_{t-q} Xta1Xt1apXtp=εtb1εt1bqεtq ε t \\{\varepsilon_t\\} εt 为白噪声序列, ∀ s < t , \forall s<t, s<t, E ( X s ε t ) = 0 E(X_s\varepsilon_t)=0 E(Xsεt)=0 ,我们称此模型为自回归移动平均模型,记为 A R M A ( p , q ) ARMA(p,q) ARMA(p,q) 模型。
模型可以简化为 α ( B ) X t = β ( B ) ε t \alpha(B)X_t=\beta(B)\varepsilon_t α(B)Xt=β(B)εt
自 协 方 差 函 数 ∑ j = 0 p ∑ i = 0 p a j a i r k − i + j = { σ 2 ( 1 + ∑ j = 1 q b j 2 ) , k = 0 σ 2 ( − b k + ∑ j = 1 q − k b j b j + k ) , 1 ≤ k ≤ q 0 , k > q \begin{aligned} &自协方差函数\sum_{j=0}^{p}\sum_{i=0}^{p}a_ja_ir_{k-i+j}= \begin{cases} \sigma^2(1+\sum_{j=1}^{q}b_j^2)&,k=0\\ \sigma^2(-b_k+\sum_{j=1}^{q-k}b_jb_{j+k})&,1\le k\le q\\ 0&,k> q \end{cases} \end{aligned} j=0pi=0pajairki+j=σ2(1+j=1qbj2)σ2(bk+j=1qkbjbj+k)0,k=0,1kq,k>q

差分自回归移动平均模型

前面 A R ( p ) AR(p) AR(p) M A ( q ) MA(q) MA(q) A R M A ( p , q ) ARMA(p,q) ARMA(p,q) 都是平稳的随机过程,对于非平稳的时间序列,首先应将其平稳化。其中,差分变换是最常用的平稳化方法。然后再使用 A R ( p ) AR(p) AR(p) M A ( q ) MA(q) MA(q) A R M A ( p , q ) ARMA(p,q) ARMA(p,q) 来模拟已平稳化的随机过程。这就是所谓的差分自回归移动平均模型( A u t o r e g r e s s i v e Autoregressive Autoregressive I n t e g r a t e d Integrated Integrated M o v i n g Moving Moving A v e r a g e Average Average M o d e l Model Model)。

设时间序列 X t \\{X_t\\} Xt 适合 ( 1 − B ) d X t = W t (1-B)^dX_t=W_t (1B)dXt=Wt ,其中 W t W_t Wt 是平稳的 A R M A ARMA ARMA 序列,我们称此模型为差分自回归移动平均模型,记为 A R I M A ( p , d , q ) ARIMA(p,d,q) ARIMA(p,d,q) 模型,其中 d d d 是实施差分变换的次数

我们定义了一阶差分算子为 ( 1 − B ) (1-B) (1B) ,即有 ( 1 − B ) X t = X t − X t − 1 (1-B)X_t=X_t-X_{t-1} (1B)Xt=XtXt1 ,表示每一期比前一期增减的数量,也叫作逐期增长量

实质上我们对 A R I M A ( p , d , q ) ARIMA(p,d,q) ARIMA(p,d,q) 序列差分后得到的是 A R M A ( p , q ) ARMA(p,q) ARMA(p,q) 序列
d = 1 d=1 d=1 时, ( 1 − β ) X t = W t (1-\beta)X_t=W_t (1β)Xt=Wt ,即 X t − X t − 1 = W t X_t-X_{t-1}=W_t XtXt1=Wt
于是 X t = X t − 1 + W t = X t − 2 + W t − 1 + W t = ⋯ = X 0 + ∑ i = 1 t W i X_t=X_{t-1}+W_t=X_{t-2}+W_{t-1}+W_t=\cdots=X_0+\sum_{i=1}^{t}W_i Xt=Xt1+Wt=Xt2+Wt1+Wt==X0+i=1tWi
如果说 X 0 = 0 X_0=0 X0=0 ,那么 X t = ∑ i = 1 t W i X_t=\sum_{i=1}^{t}W_i Xt=i=1tWi 就表示了求和的含义。

可以证明求和序列是非平稳序列。(证明)

由此可见, A R I M A ( p , d , q ) ARIMA(p,d,q) ARIMA(p,d,q) 是一种比 A R M A ( p , q ) ARMA(p,q) ARMA(p,q) 更为普遍性的模型

季节模型

设时间序列 X t \\{X_t\\} Xt 适合 Φ ( B T ) ( 1 − B T ) d X t = θ ( B T ) W t \Phi(B^T)(1-B^T)^dX_t=\theta(B^T)W_t Φ(BT)(1BT)dXt=θ(BT)Wt ,其中 Φ ( u ) , θ ( u ) \Phi (u),\theta(u) Φ(u),θ(u) 分别为 p p p 阶和 q q q 阶的多项式 , W t W_t Wt A R I M A ( p , d , q ) ARIMA(p,d,q) ARIMA(p,d,q) 序列, T T T X t \\{X_t\\} Xt 的周期,称该模型为季节模型,如果说时间序列受到季节性变动影响可以考虑该模型。注:季节性序列也是非平稳的序列

加法模型和乘法模型

时间序列各项指标数值的不同,是由许多因素共同作用的结果,影响因素归结起来有四类:

  1. 长期趋势 ( T ) (T) (T) :指现象在一段较长的时间内指标数值持续的沿着一个方向,逐渐向上或向下变动或保持平稳的趋势。
  2. 季节变动 ( S ) (S) (S) :指现象受季节性因素影响而发生的变动。其变动特点是,在一年或更短的时间内使现象呈周期性重复的变化。
  3. 循环变动 ( C ) (C) (C) :指现象发生周期比较长的涨落起伏的变动。通常周期少则三年,多则五年以上。
  4. 不规则变动 ( R ) (R) (R) :指除了受以上各种变动的影响之外,还受偶然因素或不明原因而引起的变动。其变化无规则可循。

加法模型:
X t = T t + S t + C t + R t X_t=T_t+S_t+C_t+R_t Xt=Tt+St+Ct+Rt
其中 T T T 取非负值, S , C S,C S,C 取值可正可负,要求 S ‾ = 0 , C ‾ = 0 \overline{S}=0,\overline{C}=0 S=0,C=0

乘法模型:
X t = T t × S t × C t × R t X_t=T_t\times S_t\times C_t\times R_t Xt=Tt×St×Ct×Rt
其中 T , S , C T,S,C T,S,C 均取非负值,要求 S ‾ = 1 , C ‾ = 1 \overline{S}=1,\overline{C}=1 S=1,C=1

数据集

通过 Spss 建模分析

第一步: 绘啤酒产量#10(万千升)制序列图

时间序列图

从时间序列图可以看出,原序列是有明显上升趋势,是非平稳的序列,需要差分处理,一阶差分后的图像如下

一阶差分后时间序列图

可见差分后的时间序列近似平稳。

第二步: 计算自相关函数和偏相关函数并画图

在这里插入图片描述

一阶差分序列自相关函数图像

在这里插入图片描述

一阶差分序列偏相关函数图像

根据自相关函数和偏相关函数图,可以选择 AR(7) 模型,具体如何选取模型看这篇

在这里插入图片描述

得到模型表达式:
X t = − 5611.846 − 0.478 X t − 1 − 0.544 X t − 2 − 0.330 X t − 3 − 0.244 X t − 4 − 0.839 X t − 5 − 0.524 X t − 6 − 0.247 X t − 7 + ε t X_t=-5611.846-0.478X_{t-1}-0.544X_{t-2}-0.330X_{t-3}-0.244X_{t-4}-0.839X_{t-5}-0.524X_{t-6}-0.247X_{t-7}+\varepsilon_t Xt=5611.8460.478Xt10.544Xt20.330Xt30.244Xt40.839Xt50.524Xt60.247Xt7+εt

在这里插入图片描述
在这里插入图片描述

时间序列模型(ARIMA和ARMA)完整步骤详述

参考资料
孙祝岭.时间序列与多元统计分析[M] 上海:上海交通大学出版社,2016.

猜你喜欢

转载自blog.csdn.net/lhrfighting/article/details/117820402