Суперклассы:
Создайте модель пространства состояний
ssm создает стандартный, линейный объект модели пространства состояний с независимыми нарушениями порядка Гауссова состояния и инновациями наблюдений.
Вы можете:
Задайте инвариантную по времени или изменяющуюся по времени модель.
Задайте, являются ли состояния стационарными, статическими или нестационарными.
Задайте матрицы перехода, возмущения состояния, чувствительности к измерениям или инновационных наблюдений:
Явно путем предоставления матриц
Неявно путем предоставления функции, которая преобразует параметры в матрицы, то есть функцию отображения параметра в матрицу
Как только вы задали модель:
Если он содержит неизвестные параметры, передайте модель и данные в estimate, который оценивает параметры.
Если состояние и матрицы наблюдений не содержат неизвестных параметров (для примера - оценочная ssm модель), затем можно передать его в:
ssm поддерживает регрессию экзогенных предикторов. Чтобы включить регрессионный компонент, который отклоняет наблюдения, смотрите estimate, filter, forecast, и smooth.
создает модель пространства состояний (Mdl = ssm(A,B,C)Mdl) с использованием матрицы переходов между состояниями A, матрица возмущения-загрузки B, и матрица чувствительности к измерениям C.
создает модель пространства состояний, используя матрицу переходов Mdl = ssm(A,B,C,D)A, матрица возмущения-загрузки BМатрица чувствительности к измерениям C, и матрица инноваций-наблюдений D.
использует любой из входных параметров в предыдущих синтаксисах и дополнительные опции, которые вы задаете одним или несколькими Mdl = ssm(___,Name,Value)Name,Value аргументы в виде пар.
Name может также быть именем свойства и Value - соответствующее значение. Name должны находиться внутри одинарных кавычек (''). Можно задать несколько аргументы пары "имя-значение" в любом порядке как Name1,Value1,...,NameN,ValueN.
создает модель пространства состояний с помощью функции отображения параметра в матрицу (Mdl = ssm(ParamMap)ParamMap) что вы пишете. Функция преобразует вектор параметров в матрицы A, B, и C. Опционально ParamMap можно сопоставить параметры с D, Mean0, или Cov0. Чтобы задать типы состояний, функция может вернуться StateType. Чтобы включить регрессионный компонент в уравнение наблюдения, ParamMap может также возвращать дефлированные данные о наблюдении.
преобразует объект модели рассеянного пространства состояний (Mdl = ssm(DSSMMdl)DSSMMdl) объекту модели пространства состояний (Mdl). ssm устанавливает все начальные отклонения диффузных состояний в SSMMdl.Cov0 на 1e07.
Значение. Чтобы узнать, как классы значений влияют на операции копирования, см. раздел «Копирование объектов».
Задайте ParamMap в более общей или сложной настройке, где, например:
Начальные значения состояния являются параметрами.
В изменяющихся во времени моделях необходимо использовать одни и те же параметры в течение нескольких периодов.
Вы хотите наложить ограничения на параметры.
Значения по умолчанию для Mean0 и Cov0:
Если вы явным образом задаете модель пространства состояний (то есть предоставляете матрицы коэффициентов A, B, C, и опционально D), затем:
Для стационарных состояний программное обеспечение генерирует начальное значение с помощью стационарного распределения. Если вы предоставляете все значения в матрицах коэффициентов (то есть ваша модель не имеет неизвестных параметров), то ssm генерирует начальные значения. В противном случае программное обеспечение генерирует начальные значения во время оценки.
Для состояний, которые всегда являются константой 1, ssm устанавливает Mean0 по 1 и Cov0 на 0.
Для диффузных состояний программное обеспечение устанавливает Mean0 в 0 и Cov0 на 1e7 по умолчанию.
Если вы неявно создали модель пространства состояний (то есть вы предоставляете вектор параметра функции отображения матриц коэффициентов ParamMap), затем программное обеспечение генерирует любые начальные значения во время оценки.
Для статических состояний, которые не равны 1 на протяжении всей выборки, программное обеспечение не может присвоить значение вырожденному, начальному распределению состояния. Поэтому установите статические состояния на 2 использование аргумента пары "имя-значение" StateType. Впоследствии программное обеспечение обрабатывает статические состояния как нестационарные и присваивает статическому состоянию диффузное начальное распределение.
Лучшая практика задать StateType для каждого состояния. По умолчанию программное обеспечение генерирует StateTypeно это поведение может быть неточным. Для примера программное обеспечение не может различать постоянное состояние 1 и статическое состояние.
Программное обеспечение не может вывести StateType из данных, потому что данные теоретически получают из уравнения наблюдения. Реализации уравнения состояния ненаблюдаемы.
ssm модели не хранят наблюдаемые отклики или данные предиктора. Поставляйте данные по мере необходимости с помощью соответствующих входов или аргументов пары "имя-значение".
Предположим, что вы хотите создать модель пространства состояний с помощью функции отображения параметра в матрицу с этой сигнатурой:
[A,B,C,D,Mean0,Cov0,StateType,DeflateY] = paramMap(params,Y,Z)
Mdl = ssm(@(params)paramMap(params,Y,Z))
Y и данные предиктора Z не являются входными параметрами в анонимной функции. Если Y и Z существует в рабочем пространстве MATLAB перед созданием Mdl, затем программное обеспечение устанавливает ссылку на них. В противном случае, если вы передаете Mdl на estimateпрограмма выдает ошибку.Ссылка на данные, установленные анонимной функцией, переопределяет все другие соответствующие входные параметры значения estimate. Это различие особенно важно при проведении анализа окна качения. Для получения дополнительной информации смотрите Анализ окон Timeseries моделей.
Если состояния наблюдаемы, и уравнение состояния напоминает:
Модель ARIMA, тогда можно задать arima вместо этого моделируйте.
Регрессионная модель с ошибками ARIMA, тогда можно задать regARIMA вместо этого моделируйте.
Модель условного отклонения, затем можно задать garch, egarch, или gjr вместо этого моделируйте.
Модель VAR, тогда можно оценить такую модель используя varm и estimate.
Чтобы не навязывать предварительных знаний начальным значениям состояний диффузии и реализовать диффузный фильтр Калмана, создайте dssm объект модели вместо ssm объект модели.
[1] Дурбин Дж., и С. Дж. Копман. Анализ временных рядов по методам пространства состояний. 2nd ed. Oxford: Oxford University Press, 2012.