光滑的
类:dssm
反向散射状态空间模型的递归
描述
输入参数
Y
- - - - - -观察到的响应数据
数字矩阵|单元格数值向量的向量
观察到的响应数据,指定为一个数字矩阵或细胞数值向量的向量。
如果
Mdl
是时不变的观测方程,然后呢Y
是一个T——- - - - - -n矩阵,每一行对应一个周期,每一列对应一个特定的模型中观察。T样本大小和吗米每个时期的观测数量。最后一行的Y
包含最新的观测。如果
Mdl
是时变的观测方程,然后呢Y
是一个T1细胞向量。每个元素的细胞向量对应一个时期和包含一个nt维的观测向量。相应的系数矩阵的维度Mdl.C {t}
和Mdl.D {t}
矩阵必须是一致的吗Y {t}
所有的时间。的最后一个单元格Y
包含最新的观测。
南
元素表明失踪的观察。的细节卡尔曼滤波器提供失踪的观察,看看算法。
名称-值参数
指定可选的双参数作为Name1 = Value1,…,以=家
,在那里的名字
参数名称和吗价值
相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。
R2021a之前,用逗号来分隔每一个名称和值,并附上的名字
在报价。
例子:β,β,“预测”,Z
指定的缩小观测回归组件组成的预测数据Z
和系数矩阵β
。
参数个数
- - - - - -未知参数的值
数值向量
状态空间模型中未知参数的值,指定为逗号分隔组成的“参数”
和一个数字向量。
的元素参数个数
对应于状态空间模型中的未知参数矩阵一个
,B
,C
,D
,选择初始状态的意思Mean0
和协方差矩阵Cov0
。
如果你创建的
Mdl
显式(即通过指定矩阵没有parameter-to-matrix映射函数),然后软件地图的元素参数个数
来南
s矩阵和状态空间模型的初始状态值。软件搜索南
年代后列顺序一个
,B
,C
,D
,Mean0
,Cov0
。如果你创建的
Mdl
隐式(即通过指定的矩阵parameter-to-matrix映射函数),那么你必须设置状态空间模型初始参数值矩阵,初始状态值,和国家在parameter-to-matrix映射函数类型。
如果Mdl
包含未知参数,那么您必须指定它们的值。否则,该软件忽略的价值参数个数
。
数据类型:双
预测
- - - - - -状态空间模型预测变量观测方程
[]
(默认)|数字矩阵
状态空间模型预测变量的观测方程,指定为逗号分隔组成的“预测”
和一个T——- - - - - -d数字矩阵。T期和数量吗d是预测变量的数量。行t对应于在期间观察到的预测因子t(Zt)。扩大后的观测方程
即软件消去观察使用回归组件。β是定常的回归系数矢量软件与所有其他参数估计。
如果有n观察每一个时期,那么软件就退化预测系列每个观测到。
如果您指定预测
,然后Mdl
必须时不变。否则,该软件返回一个错误。
默认情况下,软件不包括回归状态空间模型的组件。
数据类型:双
SwitchTime
- - - - - -最后期限分散状态初始化
正整数
最后期限分散状态初始化指定为逗号分隔组成的“SwitchTime”
和一个正整数。也就是说,估计
用期1期的观察SwitchTime
presample来实现精确的初始卡尔曼滤波器(见分散卡尔曼滤波器和[1])。初始化后分散状态,估计
应用标准卡尔曼滤波器从时间的观察SwitchTime
+ 1T。
的默认值SwitchTime
是最后一期的估计精度矩阵是奇异的(即平滑状态。协方差矩阵的逆)。这个规范代表初始化扩散所需的最少数量的观察状态。因此,这是一个最佳实践是使用默认值。
如果你设置SwitchTime
比默认值,那么有效的样本容量减少。如果你设置SwitchTime
不到默认值,估计
可能没有足够的观测数据初始化扩散,这会导致一个错误或不当的值。
一般来说,估计、滤波和平滑状态空间模型与至少一个需要分散状态SwitchTime
至少有一个。默认的估计显示包含有效的样本大小。
数据类型:双
宽容
- - - - - -预测不确定阈值
0
(默认)|负的标量
预测不确定性的阈值,指定为逗号分隔组成的“宽容”
和一个负的标量。
如果预测不确定性为特定观察不到宽容
在数值估算,那么相对应的软件删除不确定性观测前的预测协方差矩阵反演。
是最佳实践的集合宽容
例如,数量小le-15
评估期间,克服数值障碍。
例子:“宽容”,le-15
数据类型:双
单变量
- - - - - -单变量处理多元系列的标志
假
(默认)|真正的
单变量的一系列多元国旗,指定为逗号分隔组成的“一元”
和真正的
或假
。单变量治疗一系列多元也被称为序贯滤波。
单变量处理可以加速和提高卡尔曼滤波的数值稳定性。然而,所有观察创新必须是不相关的。也就是说,DtDt“必须对角线,Dt,t= 1,…,T是下列之一:
矩阵
D {t}
在时变状态空间模型矩阵
D
在定常状态空间模型
例子:“一元”,真的
数据类型:逻辑
输出参数
logL
——Loglikelihood函数值
标量
Loglikelihood函数值,作为一个标量返回。
失踪前观察和观测SwitchTime
不会导致loglikelihood。
输出
——平滑结果
结构数组
平滑结果期间,作为一个结构数组返回。
输出
是一个T1结构,元素t对应的平滑递归时t。
如果
单变量
是假
(默认情况下),那么下面的表描述了领域输出
。场 描述 估计 LogLikelihood
标量loglikelihood目标函数值 N /一个 SmoothedStates
米t1的向量平滑状态 SmoothedStatesCov
米t——- - - - - -米tvariance-covariance矩阵平滑的状态 SmoothedStateDisturb
kt1的向量平滑、状态扰动 SmoothedStateDisturbCov
kt——- - - - - -kt干扰variance-covariance矩阵平滑的状态 SmoothedObsInnov
ht1的向量平滑观察创新 SmoothedObsInnovCov
ht——- - - - - -htvariance-covariance矩阵平滑,观察创新 KalmanGain
米t——- - - - - -nt调整卡尔曼增益矩阵 N /一个 DataUsed
ht1逻辑向量表示软件过滤器是否使用一个特定的观察。例如,如果观察我在时间t是一个 南
,然后元素我在DataUsed
在时间t是0
。N /一个 如果
Univarite
是真正的
,然后等领域输出
在前面的表是一样的,但值KalmanGain
可能会有所不同。
光滑的
垫第一SwitchTime
时间的领域输出
用空细胞。这些空细胞代表初始化分散状态所需的时间。
数据类型:结构体
例子
光滑的状态空间模型的定常扩散
假设一个潜在的过程是一个随机游走。状态方程是
在哪里 是高斯的意思是0和标准偏差1。
生成一个随机的一系列100观察 系列,假设从1.5开始。
T = 100;x0 = 1.5;rng (1);%的再现性u = randn (T, 1);x = cumsum ((x0; u));x = x(2:结束);
进一步假设的过程是受添加剂测量误差。观测方程
在哪里 与平均0和标准偏差0.75高斯。在一起,潜在的过程和状态空间模型观测方程组成。
使用随机潜伏状态过程(x
)和观测方程生成的观察。
y = x + 0.75 * randn (T, 1);
指定的四个系数矩阵。
= 1;B = 1;C = 1;D = 0.75;
创建使用状态空间模型扩散系数矩阵。指定初始状态分布分散。
Mdl = dssm (A, B, C, D,“StateType”,2)
类型:状态空间模型Mdl = dssm状态向量长度:1观察向量长度:1状态扰动向量长度:1创新观察向量长度:1样本容量支持模型:无限的状态变量:x1, x2,…金宝app国家干扰:u1, u2,……观察系列:y1, y2,……观察创新:e1, e2,…状态方程:x1 (t) = x1 (t - 1) + u1 (t)观测方程:日元(t) = x1 (t) + (0.75) e1 (t)初始状态分布:初始状态意味着x1 0 x1 x1初始状态协方差矩阵正态类型x1扩散
Mdl
是一个dssm
模型。验证模型正确地指定使用在命令窗口中显示。
平滑时间1到100。情节真实状态值和平滑状态估计。
SmoothedX =光滑(Mdl y);图的阴谋(1:T, x,“- k”1:T, SmoothedX“:r”,“线宽”2)标题({“国家价值观”})包含(“时间”)ylabel (“状态”)({传奇的真实状态值,“平滑状态值”})
真正的价值观和平滑估计大约是相同的。
光滑的状态分散包含回归状态空间模型组件
假设和失业率之间的线性关系名义国民生产总值(nGNP)是感兴趣的。进一步假设失业率是一个AR(1)系列。象征性地,在状态空间形式,模型
地点:
失业率在时间吗t。
观察到的变化在失业率被返回nGNP(放气 )。
是高斯系列的干扰有0和未知的标准差意味着什么 。
加载Nelson-Plosser数据集,其中包含的失业率和nGNP系列,等等。
负载Data_NelsonPlosser
预处理的数据以自然对数nGNP系列,和删除的开始南
从每个系列值。
isNaN =任何(ismissing(数据表),2);%国旗时期包含nangnpn = DataTable.GNPN (~ isNaN);y = diff (DataTable.UR (~ isNaN));T =大小(gnpn, 1);%的样本大小Z = price2ret (gnpn);
这个例子使用系列没有继续南
值。然而,使用卡尔曼滤波框架,软件可以容纳系列含有缺失值。
指定的系数矩阵。
一个=南;B =南;C = 1;
创建使用状态空间模型dssm
通过提供的系数矩阵和指定值来自分散分布状态。扩散规范表示时刻的初始分布一无所知。
StateType = 2;Mdl = dssm (A, B, C,“StateType”,StateType);
估计的参数。指定回归组件及其初值优化使用“预测”
和“Beta0”
名称-值对参数,分别。显示估计和优化诊断信息。限制的估计
所有积极、实数。
params0 = (0.3 - 0.2);%初始值选择任意Beta0 = 0.1;[EstMdl, estParams] =估计(Mdl y params0,“预测”,Z,“Beta0”Beta0,…“磅”,负0负);
方法:最大似然(fmincon)有效样本量:60对数似然:-110.477 Akaike信息标准:226.954贝叶斯信息准则:233.287 |多项式系数性病犯错t统计概率- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - c (1) | 0.59436 0.09408 6.31738 0 c (2) | 1.52554 0.10758 14.17991 0 y < - z(1) | -24.26161 1.55730 -15.57930 0 | |最终状态性病Dev t统计概率x(1) | 2.54764 0正0
EstMdl
是一个dssm
模型,您可以访问其属性使用点符号。
光滑的状态空间模型估计的扩散。EstMdl
不存储数据或回归系数,所以你必须通过他们在使用名称-值对的参数“预测”
和“β”
,分别。画出平滑状态。
SmoothedX =平滑(EstMdl y“预测”,Z,“β”estParams(结束));(图绘制(日期(结束)- t - 1 + 1:结束),SmoothedX);包含(“时间”)ylabel (“失业率的变化”)标题(失业率的平滑变化的)轴紧
提取其他的估计输出
状态空间模型估计扩散、光滑,然后提取其他的估计输出
输出参数。
考虑到状态空间模型扩散
状态变量 是一个AR(1)模型与自回归系数 。 是一个随机游走。的干扰 和 是独立的高斯随机变量与0和标准差意味着什么 和 ,分别。观察 是错误的 和 。
生成状态空间模型的数据。模拟数据,假设样本的大小 , , , , 。
rng (1);%的再现性T = 100;ARMdl = arima (基于“增大化现实”技术的,0.6,“不变”0,“方差”0.2 ^ 2);x1 =模拟(ARMdl T“Y0”2);u3 = 0.1 * randn (T, 1);x3 = cumsum ([2; u3]);x3 = x3(2:结束);y = x1 + x3;
指定状态空间模型的系数矩阵。表示未知参数,使用南
值。
= (NaN 0;0 1];B =[南0;0 NaN);C = [1];
创建一个分散状态空间模型,描述了模型。指定 和 有扩散的初始状态分布。
StateType = (2 - 2);Mdl = dssm (A, B, C,“StateType”,StateType);
估计未知参数Mdl
。为优化选择初始参数值。指定的标准偏差限制是积极的,但所有其他参数都不受约束的使用“磅”
名称-值对的论点。
params0 = (0.01 0.1 0.01);%初始值选择任意EstMdl =估计(Mdl y params0,“磅”,(从0 0]);
方法:最大似然(fmincon)有效样本大小:98对数似然:3.44283 Akaike信息标准:-0.885655贝叶斯信息准则:6.92986 |多项式系数性病犯错t统计概率- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - c(1) | 0.54134 0.20494 2.64145 0.00826摄氏度(2)0 c(3) | | 0.18439 0.03305 5.57897 0.11783 0.04347 2.71039 0.00672 | |最终状态性病Dev t统计概率x (1) x (2) | | 0.24884 0.17168 1.44943 0.14722 1.73762 0.17168 10.12121 0
参数是接近他们的真实值。
平稳的状态EstMdl
,并要求所有其他可用的输出。
[X, logL输出]=光滑(EstMdl y);
X
是一个T
2矩阵平滑状态,logL
是最后的优化对数似价值,输出
是一个结构数组包含各种估计卡尔曼滤波器要求。列表的字段输出
使用字段
。
字段(输出)
ans =9 x1细胞{' LogLikelihood} {‘SmoothedStates} {‘SmoothedStatesCov} {‘SmoothedStateDisturb} {‘SmoothedStateDisturbCov} {‘SmoothedObsInnov} {‘SmoothedObsInnovCov} {‘KalmanGain} {' DataUsed '}
转换输出
一个表。
OutputTbl = struct2table(输出);OutputTbl (1:10, 1:4)%显示四个变量的第一个10行
ans =10×4表_________________ LogLikelihood SmoothedStates SmoothedStatesCov SmoothedStateDisturb _________________ * * * ____________________ {0 x0双}{0 x0双}{0 x0双}{0 x0双}{0 x0双}{0 x0双}{0 x0双}{0 x0双}{[0.1827]}{2 x1双}{2 x2双}{2 x1双}{[0.0972]}{2 x1双}{2 x2双}{2 x1双}{[0.4472]}{2 x1双}{2 x2双}{2 x1双}{[0.2073]}{2 x1双}{2 x2双}{2 x1双}{[0.5167]}{2 x1双}{2 x2双}{2 x1双}{[0.2389]}{2 x1双}{2 x2双}{2 x1双}{[0.5064]}{2 x1双}{2 x2双}{2 x1双}{[-0.0105]}{2 x1双}{2 x2双}{2 x1双}
前两个表的行包含空的细胞或零。这些对应于初始化所需的观测分散卡尔曼滤波器。也就是说,SwitchTime
是2。
SwitchTime = 2;
画出平滑状态和个人Wald-type 95%置信区间。
CI =南(T、2、2);为j = (SwitchTime + 1): T CovX = OutputTbl.SmoothedStatesCov {};CI (j: 1) = X (j, 1) + 1.96 * sqrt (CovX (1,1)) * (1);CI (j: 2) = X (j, 2) + 1.96 * sqrt (CovX (2, 2)) * (1);结束图;阴谋(1:T X (: 1),“k”1:T, CI (:,: 1),“——r”);包含(“时间”);ylabel (“平滑状态”);标题(“估计状态1”)传说(“平滑”,“95%个人独联体”);网格在;
图;阴谋(1:T X (:, 2),“k”1:T, CI (:,:, 2),“——r”);包含(“时间”);ylabel (“平滑状态”);标题(“估计状态2”)传说(“平滑”,“95%个人独联体”);网格在;
提示
Mdl
不存储的响应数据,预测数据和回归系数。提供必要的数据无论使用适当的输入或名称-值对参数。这是一个最佳实践,允许
光滑的
确定的价值SwitchTime
。然而,在极少数情况下,你可能会经历在估计数值问题,过滤,或平滑分散状态空间模型。在这种情况下,试验各种尝试SwitchTime
规格,或者考虑不同的模型结构(例如,简化或reverify模型)。例如,分散状态空间模型转换为一个标准的使用状态空间模型舰导弹
。加快评估为低维、定常模型集
“一元”,真的
。使用这个规范,软件顺序更新而不是过滤过程中更新一次。
算法
的卡尔曼滤波器提供缺失的数据不更新过滤状态估计对应失踪的观察。换句话说,假设有一个失踪的观察时间t。然后,预估时间t基于前面的t- 1的观察和过滤状态t是等价的。
对于显式定义的状态空间模型,
过滤器
适用于所有的预测反应级数。然而,每个反应系列都有自己的回归系数。的分散卡尔曼滤波器需要presample数据。如果缺少观测时间序列,然后分散卡尔曼滤波器常数必须收集足够的观察来初始化分散状态。
对于分散状态空间模型,
过滤器
通常开关从分散卡尔曼滤波器的标准卡尔曼滤波器当累积的数量的观察和分散状态的数量是相等的。然而,如果一个分散了状态空间模型可识别性问题(例如,模型过于复杂,适合数据),然后过滤器
可能需要更多的观察来初始化分散状态。在极端的情况下,过滤器
需要整个样本。
引用
[1]杜宾J。,S. J. Koopman.时间序列分析的状态空间方法。第二版》。牛津:牛津大学出版社,2012年。
版本历史
介绍了R2015b
MATLAB命令
你点击一个链接对应MATLAB命令:
运行该命令通过输入MATLAB命令窗口。Web浏览器不支持MATLAB命令。金宝app
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。