filter

Класс: dssm

Передайте рекурсию рассеянных моделей в пространстве состояний

Описание

пример

X = filter(Mdl,Y) возвращает отфильтрованные состояния (X) путем выполнения прямой рекурсии полностью заданной рассеянной модели в пространстве состояний Mdl. Таким образом, filter применяет рассеянный Фильтр Калмана с помощью Mdl и наблюдаемые ответы Y.

пример

X = filter(Mdl,Y,Name,Value) дополнительные опции использования заданы одним или несколькими Name,Value парные аргументы. Например, задайте коэффициенты регрессии и данные о предикторе, чтобы выкачать наблюдения или задать, чтобы использовать одномерную обработку многомерной модели.

Если Mdl не полностью задан, затем необходимо задать неизвестные параметры как известные скаляры с помощью 'Params' Name,Value парный аргумент.

пример

[X,logL,Output] = filter(___) дополнительно возвращает значение логарифмической правдоподобности (logL) и массив структуры output (Output) использование любого из входных параметров в предыдущих синтаксисах. Output содержит:

  • Фильтрованные и предсказанные состояния

  • Предполагаемые ковариационные матрицы отфильтрованных и предсказанных состояний

  • Значение логарифмической правдоподобности

  • Предсказанные наблюдения и его предполагаемая ковариационная матрица

  • Настроенное усиление Кальмана

  • Вектор, указывающий, который раньше фильтровали данные программное обеспечение

Входные параметры

развернуть все

Рассеянная модель в пространстве состояний в виде dssm объект модели возвращен dssm или estimate.

Если Mdl не полностью задан (то есть, Mdl содержит неизвестные параметры), затем задайте значения для неизвестных параметров с помощью 'Params' аргумент пары "имя-значение". В противном случае программное обеспечение выдает ошибку. estimate возвращает полностью заданные модели в пространстве состояний.

Mdl не хранит наблюдаемые ответы или данные о предикторе. Снабдите данными везде, где необходимое использование соответствующего входа или аргументов пары "имя-значение".

Наблюдаемые данные об ответе в виде числовой матрицы или вектора ячейки из числовых векторов.

  • Если Mdl независимо от времени относительно уравнения наблюдения, затем Y T-by-n матрица, где каждая строка соответствует периоду, и каждый столбец соответствует конкретному наблюдению в модели. T является объемом выборки, и m является количеством наблюдений на период. Последняя строка Y содержит последние наблюдения.

  • Если Mdl время, варьируясь относительно уравнения наблюдения, затем Y T-by-1 вектор ячейки. Каждый элемент вектора ячейки соответствует периоду и содержит nt - размерный вектор из наблюдений в течение того периода. Соответствующие размерности содействующих матриц в Mdl.C{t} и Mdl.D{t} должно быть сопоставимо с матрицей в Y{t} в течение всех периодов. Последняя ячейка Y содержит последние наблюдения.

NaN элементы указывают на недостающие наблюдения. Для получения дополнительной информации о том, как Фильтр Калмана вмещает недостающие наблюдения, см. Алгоритмы.

Аргументы name-value

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'Beta',beta,'Predictors',Z задает, чтобы выкачать наблюдения компонентом регрессии, состоявшим из данных о предикторе Z и матрица коэффициентов beta.

Коэффициенты регрессии, соответствующие переменным предикторам в виде разделенной запятой пары, состоящей из 'Beta' и d-by-n числовая матрица. d является количеством переменных предикторов (см. Predictors) и n является количеством наблюдаемого ряда ответа (см. Y).

Если Mdl предполагаемая модель в пространстве состояний, затем задайте предполагаемые коэффициенты регрессии, сохраненные в estParams.

Значения для неизвестных параметров в модели в пространстве состояний в виде разделенной запятой пары, состоящей из 'Params' и числовой вектор.

Элементы Params соответствуйте неизвестным параметрам в матрицах модели в пространстве состояний ABC, и D, и, опционально, начальное состояние означает Mean0 и ковариационная матрица Cov0.

  • Если вы создали Mdl явным образом (то есть, путем определения матриц без функции отображения параметра к матрице), затем программное обеспечение сопоставляет элементы Params к NaNs в матрицах модели в пространстве состояний и значениях начального состояния. Программное обеспечение ищет NaNs по столбцам выполняющий приказ ABCD, Mean0, и Cov0.

  • Если вы создали Mdl неявно (то есть, путем определения матриц с функцией отображения параметра к матрице), затем необходимо установить начальные значения параметров для матриц модели в пространстве состояний, значений начального состояния и типов состояния в функции отображения параметра к матрице.

Если Mdl содержит неизвестные параметры, затем необходимо задать их значения. В противном случае программное обеспечение игнорирует значение Params.

Типы данных: double

Переменные предикторы в уравнении наблюдения модели в пространстве состояний в виде разделенной запятой пары, состоящей из 'Predictors' и T-by-d числовая матрица. T является количеством периодов, и d является количеством переменных предикторов. Строка t соответствует наблюдаемым предикторам в период t (Zt). Расширенное уравнение наблюдения

ytZtβ=Cxt+Dut.

Таким образом, программное обеспечение выкачивает наблюдения с помощью компонента регрессии. β является независимым от времени вектором из коэффициентов регрессии, которые программное обеспечение оценивает всеми другими параметрами.

Если существуют наблюдения n на период, то регрессы программного обеспечения весь ряд предиктора на каждое наблюдение.

Если вы задаете Predictors, затем Mdl должно быть независимо от времени. В противном случае программное обеспечение возвращает ошибку.

По умолчанию программное обеспечение исключает компонент регрессии из модели в пространстве состояний.

Типы данных: double

Итоговый период для рассеянной инициализации состояния в виде разделенной запятой пары, состоящей из 'SwitchTime' и положительное целое число. Таким образом, estimate использует наблюдения с периода 1 к периоду SwitchTime как предварительная выборка, чтобы реализовать exact initial Kalman filter (см. Рассеянный Фильтр Калмана и [1]). После инициализации рассеянных состояний, estimate применяет стандартный Фильтр Калмана к наблюдениям с периодов SwitchTime + 1 к T.

Значение по умолчанию для SwitchTime последний период, в который предполагаемая сглаживавшая матрица точности состояния сингулярна (i.e., инверсия ковариационной матрицы). Эта спецификация представляет наименьшее количество количества наблюдений, требуемых инициализировать рассеянные состояния. Поэтому это - лучшая практика, чтобы использовать значение по умолчанию.

Если вы устанавливаете SwitchTime к значению, больше, чем значение по умолчанию, затем эффективные уменьшения объема выборки. Если вы устанавливаете SwitchTime к значению, которое является меньше, чем значение по умолчанию, затем estimate не может иметь достаточных наблюдений, чтобы инициализировать рассеянные состояния, которые могут привести к ошибке или неподходящим значениям.

В общем случае оценка, фильтруя и сглаживая модели в пространстве состояний по крайней мере с одним рассеянным состоянием требует SwitchTime быть по крайней мере одним. Отображение оценки по умолчанию содержит эффективный объем выборки.

Типы данных: double

Предскажите порог неопределенности в виде разделенной запятой пары, состоящей из 'Tolerance' и неотрицательный скаляр.

Если неопределенность прогноза для конкретного наблюдения меньше Tolerance во время числовой оценки затем программное обеспечение удаляет неопределенность, соответствующую наблюдению от ковариационной матрицы прогноза перед ее инверсией.

Это - лучшая практика, чтобы установить Tolerance к небольшому числу, например, le-15, преодолеть числовые препятствия во время оценки.

Пример: 'Tolerance',le-15

Типы данных: double

Одномерная обработка многомерного ряда отмечает в виде разделенной запятой пары, состоящей из 'Univariate' и true или false. Одномерная обработка многомерного ряда также известна как sequential filtering.

Одномерная обработка может ускорить и улучшить числовую устойчивость Фильтра Калмана. Однако все инновации наблюдения должны быть некоррелироваными. Таким образом, Dt, Dt' должен быть диагональным, где Dt, t = 1..., T, является одним из следующего:

  • Матричный D{t} в изменяющейся во времени модели в пространстве состояний

  • Матричный D в независимой от времени модели в пространстве состояний

Пример: 'Univariate',true

Типы данных: логический

Выходные аргументы

развернуть все

Фильтрованные состояния, возвращенные как числовая матрица или вектор ячейки из числовых векторов.

Если Mdl независимо от времени, затем количество строк X объем выборки, T и количество столбцов X количество состояний, m. Последняя строка X содержит последние отфильтрованные состояния.

Если Mdl время, варьируясь, затем X вектор ячейки с длиной, равной объему выборки. Ячейка t X содержит вектор из отфильтрованных состояний с длиной, равной количеству состояний в период t. Последняя ячейка X содержит последние отфильтрованные состояния.

filter заполняет первый SwitchTime периоды X с нулями или пустыми ячейками. Нули или пустые ячейки представляют периоды, требуемые инициализировать рассеянные состояния.

Значение функции логарифмической правдоподобности, возвращенное как скаляр.

Недостающие наблюдения и наблюдения перед SwitchTime не способствуйте логарифмической правдоподобности.

Фильтрация результатов периодом, возвращенным как массив структур.

Output T-by-1 структура, где элемент t соответствует результату фильтрации во время t.

  • Если Univariate false (это по умолчанию), затем следующая таблица обрисовывает в общих чертах поля Output.

    Поле ОписаниеОценка
    LogLikelihoodСкалярное значение целевой функции логарифмической правдоподобностиN/A
    FilteredStatesmt-by-1 вектор из отфильтрованных состоянийE(xt|y1,...,yt)
    FilteredStatesCovmt-by-mt ковариационная матрица отклонения отфильтрованных состоянийVar(xt|y1,...,yt)
    ForecastedStatesmt-by-1 вектор из прогнозов состоянияE(xt|y1,...,yt1)
    ForecastedStatesCovmt-by-mt ковариационная матрица отклонения прогнозов состоянияVar(xt|y1,...,yt1)
    ForecastedObsht-by-1 предсказанный вектор наблюденияE(yt|y1,...,yt1)
    ForecastedObsCovht-by-ht ковариационная матрица отклонения предсказанных наблюденийVar(yt|y1,...,tt1)
    KalmanGainmt-by-nt настроил матрицу усиления КальманаN/A
    DataUsedht-by-1 логический вектор, указывающий, ли фильтры программного обеспечения с помощью конкретного наблюдения. Например, если наблюдением i во время t является NaN, затем элемент i в DataUsed во время t является 0.N/A

  • Если Univarite true, затем поля Output эквивалентны в предыдущей таблице, за исключением следующих поправок.

    Поле Изменения
    ForecastedObsТе же размерности, как будто Univariate = 0, но только первые элементы равны
    ForecastedObsCov

    n-by-1 вектор из предсказанных отклонений наблюдения.

    Первый элемент этого вектора эквивалентен ForecastedObsCov(1,1) когда Univariate false. Остальная часть элементов не обязательно эквивалентна их соответствующим значениям в ForecastObsCov когда Univariate.

    KalmanGainТе же размерности, как будто Univariate false, хотя KalmanGain может иметь различные записи.

filter заполняет первый SwitchTime периоды полей Output с пустыми ячейками. Эти пустые ячейки представляют периоды, требуемые инициализировать рассеянные состояния.

Примеры

развернуть все

Предположим, что скрытый процесс является случайным обходом. Уравнение состояния

xt=xt-1+ut,

где ut является Гауссовым со средним значением 0 и стандартным отклонением 1.

Сгенерируйте случайную последовательность 100 наблюдений от xt, предположение, что ряд запускается в 1,5.

T = 100;
x0 = 1.5;
rng(1); % For reproducibility
u = randn(T,1);
x = cumsum([x0;u]);
x = x(2:end);

Предположим далее, что скрытый процесс подвергается аддитивной погрешности измерения. Уравнение наблюдения

yt=xt+εt,

где εt является Гауссовым со средним значением 0 и стандартным отклонением 0.75. Вместе, скрытые уравнения процесса и наблюдения составляют модель в пространстве состояний.

Используйте случайный скрытый процесс состояния (x) и уравнение наблюдения, чтобы сгенерировать наблюдения.

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

Задайте четыре содействующих матрицы.

A = 1;
B = 1;
C = 1;
D = 0.75;

Создайте рассеянную модель в пространстве состояний с помощью содействующих матриц. Укажите, что распределение начального состояния является рассеянным.

Mdl = dssm(A,B,C,D,'StateType',2)
Mdl = 
State-space model type: dssm

State vector length: 1
Observation vector length: 1
State disturbance vector length: 1
Observation innovation vector length: 1
Sample size supported by model: Unlimited

State variables: x1, x2,...
State disturbances: u1, u2,...
Observation series: y1, y2,...
Observation innovations: e1, e2,...

State equation:
x1(t) = x1(t-1) + u1(t)

Observation equation:
y1(t) = x1(t) + (0.75)e1(t)

Initial state distribution:

Initial state means
 x1 
  0 

Initial state covariance matrix
     x1  
 x1  Inf 

State types
    x1   
 Diffuse 

Mdl dssm модель. Проверьте, что модель правильно задана с помощью отображения в Командном окне.

Отфильтруйте состояния в течение периодов 1 - 100. Постройте истинные значения состояния и отфильтрованные оценки состояния.

filteredX = filter(Mdl,y);

figure
plot(1:T,x,'-k',1:T,filteredX,':r','LineWidth',2)
title({'State Values'})
xlabel('Period')
ylabel('State')
legend({'True state values','Filtered state values'})

Figure contains an axes object. The axes object with title State Values contains 2 objects of type line. These objects represent True state values, Filtered state values.

Истинные значения и оценки фильтра являются приблизительно тем же самым, за исключением первого отфильтрованного состояния, которое является нулем.

Предположим, что линейное соотношение между уровнем безработицы и номинальным валовым национальным продуктом (nGNP) представляет интерес. Предположим далее, что уровень безработицы является серией AR (1). Символически, и в форме пространства состояний, модель

xt=ϕxt-1+σutyt-βZt=xt,

где:

  • xt уровень безработицы во время t.

  • yt наблюдаемое изменение в уровне безработицы, выкачиваемом возвратом nGNP (Zt).

  • ut серия Gaussian воздействий состояния, имеющих среднее значение 0 и неизвестное стандартное отклонение σ.

Загрузите набор данных Нельсона-Плоссера, который содержит уровень безработицы и nGNP ряд, среди прочего.

load Data_NelsonPlosser

Предварительно обработайте данные путем взятия натурального логарифма nGNP ряда и удаления стартового NaN значения от каждого ряда.

isNaN = any(ismissing(DataTable),2);       % Flag periods containing NaNs
gnpn = DataTable.GNPN(~isNaN);
y = diff(DataTable.UR(~isNaN));
T = size(gnpn,1);                          % The sample size
Z = price2ret(gnpn);

Этот пример продолжает использовать ряд без NaN значения. Однако с помощью среды Фильтра Калмана, программное обеспечение может вместить ряд, содержащий отсутствующие значения.

Задайте содействующие матрицы.

A = NaN;
B = NaN;
C = 1;

Создайте модель в пространстве состояний с помощью dssm путем предоставления содействующих матриц и указывания, что значения состояния прибывают из рассеянного распределения. Рассеянная спецификация указывает на полное незнание о моментах начального распределения.

StateType = 2;
Mdl = dssm(A,B,C,'StateType',StateType);

Оцените параметры. Задайте компонент регрессии и его начальное значение для оптимизации с помощью 'Predictors' и 'Beta0' аргументы пары "имя-значение", соответственно. Отобразите оценки и всю информацию о диагностике оптимизации. Ограничьте оценку σ ко всем положительным, вещественным числам.

params0 = [0.3 0.2]; % Initial values chosen arbitrarily
Beta0 = 0.1;
[EstMdl,estParams] = estimate(Mdl,y,params0,'Predictors',Z,'Beta0',Beta0,...
    'lb',[-Inf 0 -Inf]);
Method: Maximum likelihood (fmincon)
Effective Sample size:             60
Logarithmic  likelihood:     -110.477
Akaike   info criterion:      226.954
Bayesian info criterion:      233.287
           |      Coeff       Std Err    t Stat    Prob 
--------------------------------------------------------
 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     
           |                                            
           |    Final State   Std Dev     t Stat   Prob 
 x(1)      |   2.54764        0           Inf     0     

EstMdl ssm модель, и можно получить доступ к ее свойствам с помощью записи через точку.

Отфильтруйте предполагаемую рассеянную модель в пространстве состояний. EstMdl не хранит данные или коэффициенты регрессии, таким образом, необходимо передать в них в использовании аргументов пары "имя-значение" 'Predictors' и 'Beta', соответственно. Постройте предполагаемые, отфильтрованные состояния.

filteredX = filter(EstMdl,y,'Predictors',Z,'Beta',estParams(end));

figure
plot(dates(end-(T-1)+1:end),filteredX);
xlabel('Period')
ylabel('Change in the unemployment rate')
title('Filtered Change in the Unemployment Rate')
axis tight

Figure contains an axes object. The axes object with title Filtered Change in the Unemployment Rate contains an object of type line.

Оцените рассеянную модель в пространстве состояний, отфильтруйте состояния, и затем извлеките другие оценки из Output выходной аргумент.

Рассмотрите рассеянную модель в пространстве состояний

[x1,tx2,t]=[ϕ001][x1,t-1x2,t-1]+[σ100σ2][u1,tu2,t]yt=[11][x1,tx2,t]

Переменная состояния x1,t модель AR (1) с авторегрессивным коэффициентом ϕ. x2,t случайный обход. Воздействия u1,t и u2,t независимые Гауссовы случайные переменные со средним значением 0 и стандартными отклонениями σ1 и σ2, соответственно. Наблюдение yt безошибочная сумма x1,t и x2,t.

Сгенерируйте данные из модели в пространстве состояний. Чтобы симулировать данные, предположите что объем выборки T=100, ϕ=0.6, σ1=0.2, σ2=0.1, и x1,0=x2,0=2.

rng(1); % For reproducibility
T = 100;
ARMdl = arima('AR',0.6,'Constant',0,'Variance',0.2^2);
x1 = simulate(ARMdl,T,'Y0',2);
u3 = 0.1*randn(T,1);
x3 = cumsum([2;u3]);
x3 = x3(2:end);
y = x1 + x3;

Задайте содействующие матрицы модели в пространстве состояний. Чтобы указать на неизвестные параметры, используйте NaN значения.

A = [NaN 0; 0 1];
B = [NaN 0; 0 NaN];
C = [1 1];

Создайте рассеянную модель в пространстве состояний, которая описывает модель выше. Задайте это x1,t и x2,t имейте рассеянные распределения начального состояния.

StateType = [2 2];
Mdl = dssm(A,B,C,'StateType',StateType);

Оцените неизвестные параметры Mdl. Выберите начальные значения параметров для оптимизации. Укажите, что стандартные отклонения ограничиваются быть положительными, но все другие параметры являются неограниченным использованием 'lb' аргумент пары "имя-значение".

params0 = [0.01 0.1 0.01]; % Initial values chosen arbitrarily
EstMdl = estimate(Mdl,y,params0,'lb',[-Inf 0 0]);
Method: Maximum likelihood (fmincon)
Effective Sample size:             98
Logarithmic  likelihood:      3.44283
Akaike   info criterion:    -0.885655
Bayesian info criterion:      6.92986
      |     Coeff      Std Err   t Stat     Prob  
--------------------------------------------------
 c(1) | 0.54134       0.20494    2.64145  0.00826 
 c(2) | 0.18439       0.03305    5.57897   0      
 c(3) | 0.11783       0.04347    2.71039  0.00672 
      |                                           
      |  Final State   Std Dev    t Stat    Prob  
 x(1) | 0.24884       0.17168    1.44943  0.14722 
 x(2) | 1.73762       0.17168   10.12121   0      

Параметры близко к их истинным значениям.

Отфильтруйте состояния EstMdl, и запросите весь другой доступный выход.

[X,logL,Output] = filter(EstMdl,y);

X T- 2 матрицы отфильтрованных состояний, logL оптимизированное значение логарифмической правдоподобности финала и Output массив структур, содержащий различные оценки, что Фильтр Калмана требует. Перечислите поля output использование fields.

fields(Output)
ans = 9x1 cell
    {'LogLikelihood'      }
    {'FilteredStates'     }
    {'FilteredStatesCov'  }
    {'ForecastedStates'   }
    {'ForecastedStatesCov'}
    {'ForecastedObs'      }
    {'ForecastedObsCov'   }
    {'KalmanGain'         }
    {'DataUsed'           }

Преобразуйте Output к таблице.

OutputTbl = struct2table(Output);
OutputTbl(1:10,1:5) % Display first ten rows of first five variables
ans=10×5 table
    LogLikelihood    FilteredStates    FilteredStatesCov    ForecastedStates    ForecastedStatesCov
    _____________    ______________    _________________    ________________    ___________________

    {0x0 double}      {0x0 double}       {0x0 double}         {0x0 double}         {0x0 double}    
    {0x0 double}      {0x0 double}       {0x0 double}         {0x0 double}         {0x0 double}    
    {[  0.1827]}      {2x1 double}       {2x2 double}         {2x1 double}         {2x2 double}    
    {[  0.0972]}      {2x1 double}       {2x2 double}         {2x1 double}         {2x2 double}    
    {[  0.4472]}      {2x1 double}       {2x2 double}         {2x1 double}         {2x2 double}    
    {[  0.2073]}      {2x1 double}       {2x2 double}         {2x1 double}         {2x2 double}    
    {[  0.5167]}      {2x1 double}       {2x2 double}         {2x1 double}         {2x2 double}    
    {[  0.2389]}      {2x1 double}       {2x2 double}         {2x1 double}         {2x2 double}    
    {[  0.5064]}      {2x1 double}       {2x2 double}         {2x1 double}         {2x2 double}    
    {[ -0.0105]}      {2x1 double}       {2x2 double}         {2x1 double}         {2x2 double}    

Первые две строки таблицы содержат пустые ячейки или нули. Они соответствуют наблюдениям, требуемым инициализировать рассеянный Фильтр Калмана. Таким образом, SwitchTime 2.

SwitchTime = 2;

Постройте отфильтрованные и предсказанные состояния.

ForeX = cell2mat(OutputTbl.ForecastedStates')'; % Orient forecasted states
ForeX = [zeros(SwitchTime,2);ForeX]; % Include zeros for initialization

figure;
plot(1:T,X(:,1),'r',1:T,ForeX(:,1),'b');
xlabel('Period');
ylabel('State estimate');
title('State 1 Estimates')
legend('Filtered','Forecasted');
grid on;

Figure contains an axes object. The axes object with title State 1 Estimates contains 2 objects of type line. These objects represent Filtered, Forecasted.

figure;
plot(1:T,X(:,2),'r',1:T,ForeX(:,2),'b');
xlabel('Period');
ylabel('State estimate');
title('State 2 Estimates')
legend('Filtered','Forecasted');
grid on;

Figure contains an axes object. The axes object with title State 2 Estimates contains 2 objects of type line. These objects represent Filtered, Forecasted.

Советы

  • Mdl не хранит данные об ответе, данные о предикторе и коэффициенты регрессии. Снабдите данными везде, где необходимое использование соответствующего входа или аргументов пары "имя-значение".

  • Это - лучшая практика, чтобы позволить filter определить значение SwitchTime. Однако в редких случаях, вы можете испытать числовые проблемы во время оценки, фильтрации или сглаживания рассеянных моделей в пространстве состояний. Для таких случаев попытайтесь экспериментировать с различным SwitchTime технические требования, или рассматривают различную структуру модели (например, упростите или повторно проверьте модель). Например, преобразуйте рассеянную модель в пространстве состояний в стандартную модель в пространстве состояний с помощью ssm.

  • Чтобы ускорить оценку для низко-размерных, независимых от времени моделей, установите 'Univariate',true. Используя эту спецификацию, программное обеспечение последовательно обновляет скорее затем обновление целиком во время процесса фильтрации.

Алгоритмы

  • Фильтр Калмана хранит недостающие данные, не обновляя отфильтрованное оценочное соответствие состояния недостающим наблюдениям. Другими словами, предположите, что существует недостающее наблюдение в период t. Затем прогноз состояния для периода t на основе предыдущего t – 1 наблюдение и отфильтрованное состояние в течение периода t эквивалентен.

  • Для явным образом заданных моделей в пространстве состояний, filter применяет все предикторы к каждому ряду ответа. Однако каждый ряд ответа имеет свой собственный набор коэффициентов регрессии.

  • Рассеянный Фильтр Калмана требует преддемонстрационных данных. Если недостающие наблюдения начинают временные ряды, то рассеянный Фильтр Калмана должен собрать достаточно ненедостающих наблюдений, чтобы инициализировать рассеянные состояния.

  • Для рассеянных моделей в пространстве состояний, filter обычно переключатели от рассеянного Фильтра Калмана до стандартного Фильтра Калмана, когда количество совокупных наблюдений и количество рассеянных состояний равны. Однако, если рассеянная модель в пространстве состояний имеет проблемы идентифицируемости (e.g., модель является слишком комплексной, чтобы соответствовать к данным), затем filter может потребовать, чтобы больше наблюдений инициализировало рассеянные состояния. В крайних случаях, filter требует целой выборки.

Ссылки

[1] Дербин Дж. и С. Дж. Купмен. Анализ Временных рядов Методами Пространства состояний. 2-й редактор Оксфорд: Издательство Оксфордского университета, 2012.

Введенный в R2015b