过滤器

类:舰导弹

向前递归的状态空间模型

描述

例子

X=过滤器(Mdl,Y)返回过滤后的状态(X从指定的完全执行向前递归)状态空间模型Mdl。也就是说,过滤器应用标准卡尔曼滤波器使用Mdl和观察到的反应Y

例子

X=过滤器(Mdl,Y,名称,值)使用指定的一个或多个额外的选项名称,值对参数。例如,指定缩小的回归系数和预测数据的观察,或指定使用平方根滤波。

如果Mdl不完全指定,那么您必须指定未知参数作为已知的标量使用吗参数个数名称,值对参数。

(X,logL,输出]=过滤器(___)使用任何输入参数在前面语法另外返回loglikelihood值(logL)和一个输出结构阵列(输出)使用任何输入参数在前面的语法。输出包含:

输入参数

全部展开

标准,状态空间模型作为一个指定舰导弹模型对象返回的舰导弹估计

如果Mdl不完全指定的(即Mdl含有未知参数),然后指定使用的未知参数的值参数个数名称-值对的论点。否则,一个错误的软件问题。估计返回完全指定的状态空间模型。

Mdl不存储观察反应或预测数据。提供必要的数据无论使用适当的输入或名称-值对参数。

观察到的响应数据Mdl是配合,指定为一个数字矩阵或细胞数值向量的向量。

  • 如果Mdl是时不变的观测方程,然后呢Y是一个T——- - - - - -n矩阵,每一行对应一个周期,每一列对应一个特定的模型中观察。T样本大小和吗每个时期的观测数量。最后一行的Y包含最新的观测。

  • 如果Mdl是时变的观测方程,然后呢Y是一个T1细胞向量。每个元素的细胞向量对应一个时期和包含一个nt维的观测向量。相应的系数矩阵的维度Mdl.C {t}Mdl.D {t}矩阵必须是一致的吗Y {t}所有的时间。的最后一个单元格Y包含最新的观测。

元素表明失踪的观察。的细节卡尔曼滤波器提供失踪的观察,看看算法

名称-值对的观点

指定可选的逗号分隔条名称,值参数。的名字参数名称和吗价值相应的价值。的名字必须出现在引号。您可以指定几个名称和值对参数在任何顺序Name1, Value1,…,的家

例子:β,β,“预测”,Z指定的缩小观测回归组件组成的预测数据Z和系数矩阵β

回归系数对应的预测变量,指定为逗号分隔组成的“β”和一个d——- - - - - -n数字矩阵。d在预测变量的数量(看见吗预测),n是观察到的反应级数的数量(见Y)。

如果Mdl状态空间模型的估计,那么指定估计回归系数存储在吗estParams

状态空间模型中未知参数的值,指定为column-separated组成的“参数”和一个数字向量。

的元素参数个数对应于状态空间模型中的未知参数矩阵一个,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)。扩大后的观测方程

y t Z t β = C x t + D u t

即软件消去观察使用回归组件。β是定常的回归系数矢量软件与所有其他参数估计。

如果有n观察每一个时期,那么软件就退化预测系列每个观测到。

如果您指定预测,然后Mdl必须时不变。否则,该软件返回一个错误。

默认情况下,软件不包括回归状态空间模型的组件。

数据类型:

国旗平方根滤波方法,指定为逗号分隔组成的“SquareRoot”真正的。如果真正的,然后估计应用平方根滤波方法在实现卡尔曼滤波器。

如果你怀疑的过滤状态或观察预测协方差矩阵的特征值是接近于零,然后指定“SquareRoot”,真的。√过滤器是健壮的数值问题引起的有限精度的计算,但需要更多的计算资源。

例子:“SquareRoot”,真的

数据类型:逻辑

预测不确定性的阈值,指定为逗号分隔组成的“宽容”和一个负的标量。

如果预测不确定性为特定观察不到宽容在数值估算,那么相对应的软件删除不确定性观测前的预测协方差矩阵反演。

是最佳实践的集合宽容例如,数量小le-15评估期间,克服数值障碍。

例子:“宽容”,le-15

数据类型:

单变量的一系列多元国旗,指定为逗号分隔组成的“一元”真正的。单变量治疗一系列多元也被称为序贯滤波

单变量处理可以加速和提高卡尔曼滤波的数值稳定性。然而,所有观察创新必须是不相关的。也就是说,DtDt“必须对角线,Dt,t= 1,…,T是下列之一:

  • 矩阵D {t}在时变状态空间模型

  • 矩阵D在定常状态空间模型

例子:“一元”,真的

数据类型:逻辑

输出参数

全部展开

过滤后的状态,作为一个数字矩阵或返回一个细胞数值向量的向量。

如果Mdl是时不变,那么的行数的X是样品的尺寸,T的列数X的状态数,。最后一行的X包含最新的过滤状态。

如果Mdl是随时间变化的,那么X是一个细胞向量长度等于样本的大小。细胞tX包含一个向量的过滤状态的数量与长度等于时期t。的最后一个单元格X包含最新的过滤状态。

Loglikelihood函数值,作为一个标量返回。

失踪的观察不loglikelihood做出贡献。

过滤结果的时期,作为一个结构数组返回。

输出是一个T1结构,元素t对应于过滤的结果t

  • 如果单变量(默认情况下),下表列出了领域输出

    描述 估计的
    LogLikelihood 标量loglikelihood目标函数值 N /一个
    FilteredStates t1的向量过滤后的状态 E ( x t | y 1 , , y t )
    FilteredStatesCov t——- - - - - -tvariance-covariance矩阵的过滤状态 V 一个 r ( x t | y 1 , , y t )
    ForecastedStates t1的向量状态预测 E ( x t | y 1 , , y t 1 )
    ForecastedStatesCov t——- - - - - -tvariance-covariance矩阵的预测 V 一个 r ( x t | y 1 , , y t 1 )
    ForecastedObs ht1预测的观察向量 E ( y t | y 1 , , y t 1 )
    ForecastedObsCov ht——- - - - - -htvariance-covariance矩阵预测的观察 V 一个 r ( y t | y 1 , , t t 1 )
    KalmanGain t——- - - - - -nt调整卡尔曼增益矩阵 N /一个
    DataUsed ht1逻辑向量表示软件过滤器是否使用一个特定的观察。例如,如果观察在时间t是一个,然后元素DataUsed在时间t0 N /一个

  • 如果Univarite真正的,然后等领域输出在前面的表是一样的,除了以下修改。

    变化
    ForecastedObs 如果尺寸一样单变量= 0,但只有第一个元素是相等的
    ForecastedObsCov

    n1的向量预测观察差异。

    这个向量的第一个元素是等价的ForecastedObsCov (1, 1)单变量。其余的元素并不一定等同于相应的值ForecastObsCov单变量

    KalmanGain 如果尺寸一样单变量,虽然KalmanGain可能有不同的条目。

例子

全部展开

假设一个潜在的过程是一个AR (1)。随后,状态方程

x t = 0 5 x t - - - - - - 1 + u t ,

在哪里 u t 是高斯的意思是0和标准偏差1。

生成一个随机的一系列100观察 x t 系列,假设从1.5开始。

T = 100;ARMdl = arima (基于“增大化现实”技术的,0.5,“不变”0,“方差”1);x0 = 1.5;rng (1);%的再现性x =模拟(ARMdl T“Y0”,x0);

进一步假设的过程是受添加剂测量误差。随后,观测方程

y t = x t + ε t ,

在哪里 ε t 与平均0和标准偏差0.75高斯。在一起,潜在的过程和状态空间模型观测方程组成。

使用随机潜伏状态过程(x)和观测方程生成的观察。

y = x + 0.75 * randn (T, 1);

指定的四个系数矩阵。

一个= 0.5;B = 1;C = 1;D = 0.75;

指定使用状态空间模型的系数矩阵。

Mdl =舰导弹(A, B, C, D)
Mdl =类型:状态空间模型的地对地导弹状态向量与长度:1观察向量长度:1状态扰动向量长度:1创新观察向量长度:1样本容量支持模型:无限的状态变量:x1, x2,…金宝app国家干扰:u1, u2,……观察系列:y1, y2,……观察创新:e1, e2,…状态方程:x1 (t) = (0.50) x1 (t - 1) + u1 (t)观测方程:日元(t) = x1 (t) + (0.75) e1 (t)初始状态分布:初始状态意味着x1 0初始状态协方差矩阵x1 x1 1.33类型x1静止状态

Mdl是一个舰导弹模型。验证模型正确地指定使用在命令窗口中显示。软件推断过程是静止的状态。随后,软件设置初始状态均值和协方差的均值和方差平稳分布的AR(1)模型。

过滤时间1到100。情节真实状态值和过滤状态估计。

filteredX =过滤器(Mdl y);图的阴谋(1:T, x,“- k”1:T, filteredX“:r”,“线宽”2)标题({“国家价值观”})包含(“时间”)ylabel (“状态”)({传奇的真实状态值,的过滤状态值})

真正的价值观和滤波器估计大约是相同的。

假设之间的线性关系改变失业率和名义国民生产总值(nGNP)感兴趣的增长率。失业率进一步假设的第一个区别是一个ARMA(1,1)系列。象征性地,在状态空间形式,模型

( x 1 , t x 2 , t ] = ( ϕ θ 0 0 ] ( x 1 , t - - - - - - 1 x 2 , t - - - - - - 1 ] + ( 1 1 ] u 1 , t y t - - - - - - β Z t = x 1 , t + σ ε t ,

地点:

  • x 1 , t 失业率的变化在时间吗t

  • x 2 , t 马是一个虚拟的状态(1)的效果。

  • y 1 , t 观察到的变化在失业率被nGNP的增长率(放气 Z t )。

  • u 1 , t 是高斯的一系列状态扰动代表0和标准偏差1。

  • ε t 是观察的高斯系列创新有0和标准偏差意味着什么 σ

加载Nelson-Plosser数据集,其中包含的失业率和nGNP系列,等等。

负载Data_NelsonPlosser

预处理的数据以自然对数nGNP系列,每个系列的第一个区别。同时,删除开始从每个系列值。

isNaN =任何(ismissing(数据表),2);%国旗时期包含nangnpn = DataTable.GNPN (~ isNaN);u = DataTable.UR (~ isNaN);T =大小(gnpn, 1);%样本大小Z = [(t - 1, 1)的差异(日志(gnpn))];y = diff (u);

虽然这个例子就缺失值,软件可以容纳系列含有缺失值的卡尔曼滤波框架。

指定的系数矩阵。

一个=[南南;0 0];B = [1;1);C = 0 [1];D =南;

指定使用状态空间模型舰导弹

Mdl =舰导弹(A, B, C, D);

估计模型参数,并使用一组随机的初始参数值的优化。指定回归组件及其初值优化使用“预测”“Beta0”名称-值对参数,分别。限制的估计 σ 所有积极、实数。

params0 = (0.3 0.2 0.2);[EstMdl, estParams] =估计(Mdl y params0,“预测”,Z,“Beta0”(0.1 - 0.2),“磅”(负负0负无穷,无穷]);
方法:最大似然(fmincon)样本大小:61对数似然:-99.7245 Akaike信息标准:209.449贝叶斯信息准则:220.003 |多项式系数性病犯错t统计概率- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - c (1) c(2) | | -0.34098 0.29608 -1.15164 0.24948 1.05003 0.41377 2.53771 0.01116摄氏度(3)| 0.48592 0.36790 1.32079 0.18657 y < - z (1) | 1.36121 0.22338 6.09358 0 y < - z(2) | -24.46711 1.60018 -15.29024 0 | |最终状态性病Dev t统计概率x (1) | 1.01264 0.44690 2.26592 0.02346 0.58917 1.31912 0.18713 0.77718 (2) |

EstMdl是一个舰导弹模型,您可以访问其属性使用点符号。

过滤状态空间模型的估计。EstMdl不存储数据或回归系数,所以你必须通过他们在使用名称-值对的参数“预测”“β”,分别。情节估计、过滤状态。回想一下,第一个状态是失业率的变化,有助于建立第一个和第二个状态。

filteredX =过滤器(EstMdl y“预测”,Z,“β”,estParams (end-1:结束));(图绘制(日期(结束)- t - 1 + 1:结束),filteredX (: 1));包含(“时间”)ylabel (“失业率的变化”)标题(“过滤失业率的变化”)

提示

  • Mdl不存储的响应数据,预测数据和回归系数。提供必要的数据无论使用适当的输入或名称-值对参数。

  • 加快评估为低维、定常模型集“一元”,真的。使用这个规范,软件顺序更新而不是过滤过程中更新一次。

算法

  • 卡尔曼滤波器提供缺失的数据不更新过滤状态估计对应失踪的观察。换句话说,假设有一个失踪的观察时间t。然后,预估时间t基于前面的t- 1的观察和过滤状态t是等价的。

  • 对于显式定义的状态空间模型,过滤器适用于所有的预测反应级数。然而,每个反应系列都有自己的回归系数。

引用

[1]杜宾J。,S. J. Koopman.时间序列分析的状态空间方法。第二版》。牛津:牛津大学出版社,2012年。