状态空间模型

Posted by yuchen on May 10, 2016
SSG模型.html

状态空间模型(State-Space Model)


1 时间序列

时间序列是指同一种现象在不同时间上的相继观察值排列而成的一组数字序列。统计学上,一个时间序列即是一个随机过程的实现。时间序列按其统计特性可以分为平稳时间序列和非平稳时间序列两类。在实际生活中遇到的序列,大多数是不平稳的。

说明:如果一个序列的平均值和方差始终为常数,则它是平稳的。在估计时间序列模型之前需把不平稳的时间序列转化为平稳序列。判断一个时间序列的平稳性可通过数据图和自相关函数图,如果数据图呈现线性或二次趋势形状,则该时间序列是不平稳的;如果自相关函数在前面少数几个值后下降趋向于0,则序列是平稳的。如果在前几个值后,自相关函数没有下降趋向于0,而是逐次减少,且值的大小超出固定的随机期间,则序列不平稳。


2 状态空间模型

如前所述,在现实生活中,数据的出现大多数是以非平稳形式,这涉及到动态数据所构成的时间序列的分解。分解时间序列的目的旨在估计和抽取确定性成分Tt(长期趋势),St(季节项),Ct(循环项),以使残量It(随机项)是一平稳过程。进而求得关于随机项的合适概率模型,分析它的性质,并连同Tt,St,Ct达到拟合和预报的目的。状态空间模型即可对时间序列进行分解,将Tt,St,Ct及It从时间序列中分离出来。


2.1 时间序列的状态空间描述

一般的,一个时间序列{yt}可以直接或经过函数变换后分解为如下的加法模型或乘法模型形式:

时间序列分解

其中,(Tt)表长期趋势,( St)是季节项,(Ct)是循环项,(It)表不规则项,对于趋势明显为指数增长,且季节波动幅度也随时间增加的序列,一般采用乘法模型。

对于一般定常(非时变)的动态系统,假定其具有n维量测向量{yt}和m维状态向量{xt},量测向量是通过某些物理手段可以观测到的变量,而状态向量是用来描述系统动态特征的变量,一般是无法观测到的变量,只有状态向量和量测向量结合起来,才能对系统的动态特征做完整而充分的描述。状态空间模型即可实现这种动态描述。


2.2 状态空间模型

SSM

状态方程描述动态系统的状态从前一时刻到当前时刻的变化规律,而量测方程描述观测值和系统的状态之间的变化关系.Φ称为状态转移矩阵,A为量测矩阵,wt是状态噪声,vt是量测噪声(一般可设为正态白噪声)。

假定A和Φ中都是不随时间改变的常系数矩阵,状态空间有以下特点:

  • 状态空间模型不仅能反映系统内部状态,而且能揭示系统内部状态与外部的输入和输出变量的联系;
  • 状态空间模型将多个变量时间序列处理为向量时间序列,这种从变量到向量的转变更适合解决多输入输出变量情况下的建模问题。
  • 状态空间模型能够用现在和过去的最小信息形式描述系统的状态,因此,它不需要大量的历史数据资料,既省时又省力。

(3)和(4)式中的有关量可以分解为组合形式:

分量

下标j=1,2,3分别对应于趋势项、循环项、季节项。即:

  • Φ1,A1,X1t,w1t均对应于趋势项;
  • Φ2,A2,X2t,w2t均对应于循环项;
  • Φ3,A3,X3t,w3t均对应于季节项。
  • Φj,Aj,Xjt,wjt均可由对应项的相应模型求出,且都为矩阵形式。

只要确定出趋势项(趋势差分数k)、循环项(循环项AR模型的阶数p)、季节项(季节阶数L,d),就可以方便的写出相应的状态空间模型。k=2,p=2,d=1时,例子如下:

状态方程
量测方程
若采用月度数据(L=12),上式中状态向量Xr的维数m=15;若采用季度数据(L=4) 则Xt是m=7维向量。相应的噪声方差矩阵如下:
超参数
(5)式是状态空间模型的待估参数,一般称为超参数。α2ϵ,α2η,α2ζ分别是趋势、循环、季节各部分的状态噪声方差,α1,...,αp是拟合循环项的自回归模型参数。
这些超参数需要使用极大似然估计或EM算法等方法得到。

剩下的工作是要得到状态向量序列{Xt}。如果估计出{Xt},则时间序列{yt}的分解就完成了。这可以通过Kalman滤波等方法对非平稳时间序列进行外推、内插及平滑,计算出每个时刻的状态向量。


3 思路总结

状态空间模型方法基本思路:首先将时间序列转化为状态空间,同时对模型的未知参数进行极大似然估计,然后采用Kalman滤波等方法对非平稳时间序列进行外推、内插及平滑,计算出每个时刻的状态向量。


本文总阅读量