时变扩散状态空间预测模型

此示例演示如何从已知模型生成数据,将漫反射状态空间模型拟合到数据,然后从拟合模型预测状态和观测状态。

假设一个潜在过程包括AR(2)和MA(1)模型。有50个周期,MA(1)过程在最后25个周期中退出模型。因此,前25个周期的状态方程是

{2,t-1},
;\end{array}$$

在过去的25个时期里

$${x{1,t}}=0.7{x{1,t-1}-0.2{x{1,t-2}+{u{1,t}$$

哪里$u{1,t}$$u{2,t}$均数为0,标准差为1的高斯分布。

假设序列分别从1.5和1开始,从$x{1,t}$$x{2,t}$

T=50;ARMdl=arima('AR',{0.7,-0.2},'恒定',0,'差异',1);MAMdl=阿里马(“妈妈”,0.6分,'恒定',0,'差异',1);x0=[1.51;1.51];rng(1);x=[模拟(ARMdl,T,'Y0',x0(:,1)),...[模拟(MAMdl,T/2,'Y0',x0(:,2));nan(T/2,1)]];

模拟MA(1)数据的最后25个值是价值观。

潜在过程的测量使用

$${y{t}=2\左({x{1,t}}+{x{2,t}}}\right)+{\varepsilon}$$

前25节课,以及

$${y{t}=2{x{1,t}+{\varepsilon}$$

在过去的25个时期里$\varepsilon_t美元$是高斯分布,平均值为0,标准差为1。

使用随机潜态过程()以及生成观测值的观测方程。

y=2*nansum(x')'+randn(T,1);

潜过程和观测方程共同构成了状态空间模型。如果系数是未知参数,则状态空间模型为

&;0\
;0&;0&;0&{θ1}xA;0&;0&;0&;0&;0
;\{array}\right]\ left[{\begin{array}{*{20}{c}}
;{u{1,t}}}}
;{u{2,t}}}}
;\结束{array}\right]\\&#x a;{yút}=a({xú1,t}}+{xú3,t})+{\varepsilon{t}
;\结束{array}$$

前25节课,

#xA;{x{1,t-1}}}\
;{x{2,t-1}}}\
;{x{3,t-1}}}}\
;{x{4,t-{\varepsilon{t}
;\end{array}$$

第26期,以及

xA;{x{2,t-1}}}
;\35xA;\end{array}$$

在过去的24个时期。

编写一个函数,指定参数映射到状态空间模型矩阵、初始状态值和状态类型。

%版权所有2015 The MathWorks,Inc。功能[A,B,C,D,Mean0,Cov0,StateType]=diffusear2maparamap(params,T)%diffusear2maparamap时变扩散状态空间模型参数%映射函数%%此函数将向量参数映射到状态空间矩阵(A,B,%C和D)以及状态类型(state type)。从第1期到第2期%状态模型为AR(2)和MA(1)模型,观测模型为%两种状态的总和。从T/2+1到T期间,状态模型是%只有AR(2)模型。AR(2)模型为扩散模型。1;0]};C3={params(5)*[10]};A=[repmat(A1,T/2,1);A2;repmat(A3,(T-2)/2,1) ];B=[repmat(B1,T/2,1);B2;repmat(B3,(T-2)/2,1)];C=[repmat(C1,T/2,1);repmat(C3,T/2,1)];D=1;结束

将此代码另存为名为漫射AR2maparamap在您的MATLAB®路径上。

通过传递函数创建漫反射状态空间模型漫射AR2maparamap作为函数句柄决策支持系统.

Mdl=dssm(@(params)diffusear2maparamap(params,T));

决策支持系统隐式创建漫反射状态空间模型。通常,无法验证隐式创建的漫反射状态空间模型。

要估计参数,通过观察到的响应(是的)到估计. 为未知参数指定任意一组正初始值。

params0=0.1*个(5,1);EstMdl=估计值(Mdl,y,params0);
方法:最大似然(fminunc)有效样本量:48对数似然:-110.313 Akaike信息准则:230.626贝叶斯信息准则:240.186 | Coeff-Std-Err-t-Stat Prob---------------------------------c(1)| 0.44041 0.27687 1.59069 0.11168 c(2)| 0.03949 0.29585 0.13349 0.89380 c(3)| 0.78364 1.49223 0.525150.59948 c(4)| 1.64260 0.66736 2.46133 0.01384 c(5)| 1.90409 0.49374 3.85648 0.00012 | |最终状态标准偏差t统计探针x(1)|-0.81932 0.46706-1.75420 0.07940 x(2)|-0.29909 0.45939-0.65107 0.51500

EstMdl是一个决策支持系统包含估计系数的模型。状态空间模型的似然曲面可能包含局部极大值。因此,尝试几个初始参数值,或者考虑使用精炼.

预测未来五个时期的观测和状态。此外,获得预测的可变性度量。

numPeriods=5;[fY,yMSE,FX,XMSE]=预测(EstMdl,numPeriods,y);

预测使用EstMdl.A{end}, ...,EstMdl.D{end}以预测扩散状态空间模型。财政年度yMSE公司裸体-预测观测值的by-1数值向量和预测观测值的方差。外汇圣诞节裸体-状态预测的by-2矩阵和状态预测的方差。列表示状态,行表示周期。对于所有输出参数,最后一行对应于最新预测。

绘制观测、真实状态、预测观测和状态预测。

图;绘图(T-10:T,x(T-10:T,1),'-k',T+1:T+numPeriods,外汇(:,1),'-r',...T-10:T,y(T-10:T),'--g',T+1:T+numPeriods,财政年度,'--b',...T: T+1,[y(T),fY(1);x(T,1),FX(1,1)]',':k','线宽',2);标签('期间')伊拉贝尔('状态和观察')传说({'真实状态值','状态预测',...'观察到的响应','预测响应'});

另见

||

相关实例

更多关于