您好,欢迎访问三七文档
当前位置:首页 > 财经/贸易 > 资产评估/会计 > 第二十二章 状态空间模型和卡尔曼滤波.
-1-第二十二章状态空间模型和卡尔曼滤波StateSpaceModelsandKalmanFilter上世纪60年代初,由于工程控制领域的需要,产生了卡尔曼滤波(KalmanFiltering)。进入70年代初,人们明确提出了状态空间模型的标准形式,并开始将其应用到经济领域。80年代以后,状态空间模型已成为一种有力的建模工具。许多时间序列模型,包括典型的线性回归模型和ARIMA模型都能作为特例写成状态空间的形式,并估计参数值。在计量经济学文献中,状态空间模型被用来估计不可观测的时间变量:理性预期,测量误差,长期收入,不可观测因素(趋势和循环要素)。状态空间模型在经济计量学领域其他方面的大量应用请参见Hamilton(1994)和Harvey(1989)。在一般的统计模型中出现的变量都是可以观测到的,这些模型以反映过去经济变动的时间序列数据为基础,利用回归分析或时间序列分析等方法估计参数,进而预测未来的值。状态空间模型的特点是提出了“状态”这一概念。-2-而实际上,无论是工程控制问题中出现的某些状态(如导弹轨迹的控制问题)还是经济系统所存在的某些状态都是一种不可观测的变量,正是这种观测不到的变量反映了系统所具有的真实状态,所以被称为状态向量。这种含有不可观测变量的模型被称为UC模型(UnobservableComponentModel),UC模型通过通常的回归方程式来估计是不可能的,必须利用状态空间模型来求解。状态空间模型建立了可观测变量和系统内部状态之间的关系,从而可以通过估计各种不同的状态向量达到分析和观测的目的。EViews状态空间对象对单方程或多方程动态系统提供了一个直接的、易于使用的界面来建立、估计及分析方程结果。它提供了大量的建立、平滑、滤波及预测工具,帮助我们利用状态空间形式来分析动态系统。利用状态空间形式表示动态系统主要有两个优点:第一,状态空间模型将不可观测的变量(状态变量)并入可观测模型并与其一起得到估计结果;其次,状态空间模型是利用强有效的递归算法——卡尔曼滤波来估计的。卡尔曼滤波可以用来估计单变量和多变量的ARMA模型、MIMIC(多指标和多因果)模型、马尔可夫转换模型以及变参数模型。-3-§22.1状态空间模型理论及方法在本节中,我们仅就如何定义并预测一个线性状态空间模型做以简要的讨论,更为详细的内容可以查询Hamilton(1994)、Harvey(1993)。一、模型表示维向量的动态线性状态空间表示可通过下面的方程组给出:(22.1)(22.2)式中,为维不可观测的状态向量,是服从于零均值正态分布的扰动向量。不可观测的状态向量假定服从于一阶向量自回归过程。我们将第一个方程称为“信号”或“量测”方程,第二个方程称为“状态”或“转移”方程。扰动向量假定为序列不相关的,同一时刻的协方差矩阵为:(22.3)tttttεαZcytytαttv,εttv,εtttttttQGGHvεΩvar1m1ktttttvαTdα1-4-,,和被称为系统矩阵或向量。下面通过依赖于未知参数的系统矩阵给出方程(22.1)—(22.3)的一般化定义。参数的估计在“参数估计”中讨论。[例1]一阶移动平均模型MA(1)(22.4)通过定义状态向量可以写成状态空间形式量测方程(22.5)状态方程(22.6)这种形式的特点是不存在量测方程噪声。tQθ},G,Q,H,T,Z,d{cΣttttttttθtT1,,ttα),(y011ttty),(tttθytttεθα100101ttTZ,ttd,ctH-5-对于任何特殊的统计模型,状态向量的定义是由结构确定的。它的元素一般包含具有实际解释意义的成分,例如趋势或季节要素。状态空间模型的目标是,所建立的状态向量包含了系统在时刻t的所有有关信息,同时又使用尽可能少的元素。所以如果状态空间模型的状态向量具有最小维数,则称为最小实现(MinimalRealization)。对一个好的状态空间模型,最小实现是一个基本准则。然而对于任一特殊问题的状态空间模型的表示形式却不是惟一的,这一点很容易验证。考虑通过定义一个任意的非奇异矩阵B,得到,为新的状态向量。用B矩阵左乘状态方程(22.2),得到(22.7)式中,,。相应的量测方程是(22.8)式中。ttttBααTBTBtt11BZZttttBddttBvvtttttεαZcytttttvαTdα1-6-[例2]对二阶自回归模型AR(2)(22.9)考虑两个可能的状态空间形式()是(22.10)(22.11)换一种形式(22.12)[例3]由于各种各样的外界冲击和政策变化等因素的影响,经济结构不断发生变化,用OLS等固定参数模型表现不出来这种经济结构的变化,因此,需要考虑采用变参数模型(Time-varyingParameterModel)。下面利用状态空间模型来构造变参数模型。,T,t,εyyytttt12211km12,tttttεαyyα010112112tttttεαyyα01011211ttα,y]01[ttα),(y01-7-量测方程:(22.13)状态方程:(22.14)~(22.15)在(22.13)式中,变参数是不可观测变量,必须利用可观测变量和来估计。对应于(22.1)中的状态向量,另外,。在(22.14)式中假定参数的变动服从于AR(1)模型(也可以简单地扩展为AR(p)模型)。系统矩阵,,,可以依赖于一个未知参数的集合。状态空间模型的一个主要的任务就是估计这些参数,如例1和例2中MA(1)和AR(2)模型的MA和AR参数是未知的。为了和模型中的其它参数,如或相区别.ZtHtTtQt,tctdttttxy),(ttvTtQσN,,1,00,002tyttxttttxZttttv1tT-8-这些参数将通过向量表示,并被称为超参数(Hyperparameters)。超参数确定了模型的随机性质,而在和中出现的参数仅影响确定性的可观测变量和状态的期望值。在状态空间模型中可以引入外生变量做为解释变量,也可以引入的延迟变量,这些都可以放到中去。如果或是未知参数的一个线性函数,这些参数也可以作为状态变量的一部分元素。二、滤波考虑状态向量在时刻s的条件分布,我们可以定义条件分布的均值和方差矩阵:(22.16)(22.17)期望算子的下标表示条件分布期望作用的期间。令则可得到一个重要的条件分布,即可以得到状态向量的向前一步均值和向前一步方差。)(αEatsst]))([(sttsttsstEPt1tst1tt1ttPtytctdtctdtc-9-当给定和时,的条件分布的均值和估计误差的协方差矩阵由下式给定,即:(22.18)(22.19)上面的两个方程称为预测方程(PredictionEquations)。当得到新的观测值,就能够修正的估计,更新方程(UpdatingEquations)是:(22.20)(22.21)(22.22)上述的(22.18)~(22.22)一起构成Kalman滤波的公式。给出一步向前状态条件均值,我们还可以得到的一步向前(线性)最小均方误差估计:1tα1tPtαtttttdT11ttttttQTPTP11tα1tt1111ttttttttttPZFZPPPtyty)(1111ttttttttttttcαZyFZPααttttttHZPZF1-10-(22.23)一步向前预测误差可以通过下面的公式得到:(22.24)预测误差的方差被定义为;(22.25)卡尔曼滤波是在给出新的信息条件下更新状态向量的向前一步预测均值和方差的连续递归算法,具体的递归步骤如上所示。只要给出状态向量初值和协方差矩阵的初值,以及系统矩阵的值和的观测值,就可以利用卡尔曼滤波计算出状态向量和最小均方误差矩阵的估计,同期的或“滤波”的状态向量和方差为,向前一步预测、预测误差、预测误差方差为。1111)()(~tttttttttttaZcαyEyEy11~~tttttyytttttttttHZPZF111)~var(tty},{11ttttPa},{ttPa},~,~{111ttttttFy-11-三、平滑假设对一段期间为T的时间序列观测数据,使用期间T的所有信息,对期间内状态向量的估计过程,我们称之为固定期间平滑。存在着多种形式的平滑方法(如:固定点平滑、固定延迟平滑等等),在这里我们使用固定期间平滑方法。平滑使用所有的样本信息得到状态向量的平滑估计为状态向量方差的平滑估计为。矩阵也被解释为状态平滑估计的均方误差。四、预测对状态空间模型有很多种预测方法。这些方法的不同点主要在于使用什么样的信息和怎样使用信息。我们将主要讲解EViews支持的三种预测方法。1、n步向前预测前面我们考察了一步向前预测的概念。现在,我们来考察多步向前预测的概念,在这里,我们利用给定期间内的可利用信息,对表达式(22.16)—(22.17)进行少量的变动,就可以得到n步向前状态条件均值和方差:)(ˆtTTttEa)(αVtTtvartVtαˆ-12-(22.29)(22.30)n步向前预测:(22.31)相应的n步向前预测的最小均方误差矩阵为:(22.32)对于n=1,2,…,同前面一样,在时刻t的可利用信息的基础上,仍然可以被解释为的最小均方误差估计,是误差协方差矩阵的最小均方估计值。n步向前预测可以通过少量地改变卡尔曼递归算法计算出来(Harvey1989)。对于在s=t+n期间的预测,使用时刻t的信息,利用状态向量和状态协方差阵的预测值只需初始化时刻t+1的卡尔曼滤波,并且使用期内信息向期外n–1期滤波。对每一期s预测样本进行重复操作,s=t+1,…,t+n*。)(ntttntEa]))([(tntnttntntttntaaEPtntttntttntaZcyEy)(~tnttntnttnttntHZPZyMSEF)~(tntantαtntP-13-2、动态预测动态预测的概念和其他EViews估计对象的概念相似。在动态预测中,我们从时刻t的预测样本开始,对于预测间隔的每一期n=1,…,n*计算完整的一组n期向前预测。这样,如果我们希望从第t期开始动态地预测到第t+n*期,则对第t+1期我们计算一步向前预测,对第t+2期计算2步向前预测,持续下去,直到对第t+n*期计算n*步向前预测。这表明对n步向前预测,我们只需初始化时刻t+1的卡尔曼滤波,并且运用期内信息对期外进行滤波。然而对于动态预测,要求计算所有的预测值,因为从预测期开始信息系统没有被更新。3、平滑预测相应地,我们可以计算平滑预测,就是使用预测样本的所有可利用信息,计算平滑值(例如)。这些向前预测值可以通过初始化预测期间的初始状态求得,使用所有相关的信号数据对整个预测期间进行卡尔曼平滑滤波。这个技术对于设置信号的信息被用来对全部预测样本插值时是很有用的。*ntnta-14-我们解释一下上面描述的预测方法。对于传统的n步向前预测和动态预测,在预测窗口的开始处,通常利用一步向前预测的状态向量和方差初始化状态向量。对于平滑预测,一般使用状态向量和方差的相应的平滑值进行预测的初始化。对某些情况,预测滤波和平滑可以选择初始值的不同设置。EViews的预测程序提供了可控的初始设置(在“状态空间”过程中叙述)。然而,如果选择了不同的设置,根据可利用信息,预测的解释将发
本文标题:第二十二章 状态空间模型和卡尔曼滤波.
链接地址:https://www.777doc.com/doc-3449603 .html