filter
Forward recursion of diffuse state-space models
Description
returns filtered states (X
= filter(Mdl
,Y
)X
)
by performing forward recursion of the fully specified diffuse state-space
model Mdl
. That is, filter
applies
the diffuse Kalman filter using Mdl
and
the observed responses Y
.
uses
additional options specified by one or more X
= filter(Mdl
,Y
,Name,Value
)Name,Value
pair
arguments. For example, specify the regression coefficients and predictor
data to deflate the observations, or specify to use the univariate
treatment of a multivariate model.
If Mdl
is not fully specified, then you must
specify the unknown parameters as known scalars using the '
Params
'
Name,Value
pair
argument.
[
additionally returns the loglikelihood
value (X
,logL
,Output
]
= filter(___)logL
) and an output structure array (Output
)
using any of the input arguments in the previous syntaxes. Output
contains:
Filtered and forecasted states
Estimated covariance matrices of the filtered and forecasted states
Loglikelihood value
Forecasted observations and its estimated covariance matrix
Adjusted Kalman gain
Vector indicating which data the software used to filter
Input Arguments
Output Arguments
Examples
Tips
Mdl
does not store the response data, predictor data, and the regression coefficients. Supply the data wherever necessary using the appropriate input or name-value pair arguments.It is a best practice to allow
filter
to determine the value ofSwitchTime
. However, in rare cases, you might experience numerical issues during estimation, filtering, or smoothing diffuse state-space models. For such cases, try experimenting with variousSwitchTime
specifications, or consider a different model structure (e.g., simplify or reverify the model). For example, convert the diffuse state-space model to a standard state-space model usingssm
.To accelerate estimation for low-dimensional, time-invariant models, set
'Univariate',true
. Using this specification, the software sequentially updates rather then updating all at once during the filtering process.
Algorithms
The Kalman filter accommodates missing data by not updating filtered state estimates corresponding to missing observations. In other words, suppose there is a missing observation at period t. Then, the state forecast for period t based on the previous t – 1 observations and filtered state for period t are equivalent.
For explicitly defined state-space models,
filter
applies all predictors to each response series. However, each response series has its own set of regression coefficients.The diffuse Kalman filter requires presample data. If missing observations begin the time series, then the diffuse Kalman filter must gather enough nonmissing observations to initialize the diffuse states.
For diffuse state-space models,
filter
usually switches from the diffuse Kalman filter to the standard Kalman filter when the number of cumulative observations and the number of diffuse states are equal. However, if a diffuse state-space model has identifiability issues (e.g., the model is too complex to fit to the data), thenfilter
might require more observations to initialize the diffuse states. In extreme cases,filter
requires the entire sample.
References
[1] Durbin J., and S. J. Koopman. Time Series Analysis by State Space Methods. 2nd ed. Oxford: Oxford University Press, 2012.
Version History
Introduced in R2015b