exponenta event banner

фильтр

Класс: 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 содержит:

  • Отфильтрованные и прогнозируемые состояния

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

  • Стоимость средств к существованию

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

  • Скорректированный прирост Калмана

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

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

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

Модель диффузного состояния-пространства, заданная как dssm объект модели, возвращенный dssm или estimate.

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

Mdl не хранит наблюдаемые ответы или данные предиктора. При необходимости введите данные с помощью соответствующих аргументов пары «ввод-значение».

Наблюдаемые данные ответа, на которые 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 должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

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

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

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

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

Элементы Params соответствуют неизвестным параметрам в матрицах модели state-space A, B, C, и Dи, необязательно, начальное состояние означает Mean0 и ковариационная матрица Cov0.

  • При создании Mdl явно (то есть путем указания матриц без функции преобразования параметра в матрицу), то программное обеспечение отображает элементы Params кому NaNs в матрицах модели state-space и исходных значениях состояний. Программное обеспечение выполняет поиск NaNs по столбцам после заказа A, B, C, D, Mean0, и Cov0.

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

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

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

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

yt Ztβ = Cxt + Dut.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • Матрица D в инвариантной по времени модели «состояние-пространство»

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

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

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

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

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

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

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

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

Значение функции Loglikelizence, возвращаемое как скаляр.

Отсутствующие наблюдения и наблюдения до SwitchTime не вносить свой вклад в обеспечение средств к существованию.

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

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

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

    ОбластьОписаниеОценка
    LogLikelihoodЗначение целевой функции скалярного логарифмированияН/Д
    FilteredStatesвектор отфильтрованных состояний mt-by-1E (xt 'y1,..., yt)
    FilteredStatesCovматрица дисперсии-ковариации mt-by-mt отфильтрованных состоянийВар (xt 'y1,..., yt)
    ForecastedStatesвектор прогнозов состояния mt-by-1E (xt 'y1,..., yt − 1)
    ForecastedStatesCovматрица дисперсии-ковариации mt-by-mt прогнозов состоянияВар (xt 'y1,..., yt − 1)
    ForecastedObsпредсказанный вектор наблюдения ht-by-1E (yt 'y1,..., yt − 1)
    ForecastedObsCovматрица дисперсии и ковариации прогнозируемых наблюденийВар (yt 'y1,..., tt − 1)
    KalmanGainmt-by-nt  скорректированная матрица усиления КалманаН/Д
    DataUsedлогический вектор ht-by-1, указывающий, фильтрует ли программное обеспечение с использованием конкретного наблюдения. Например, если наблюдение i в момент времени t является NaN, затем элемент i в DataUsed в момент времени t = 0.Н/Д

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

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

    n-на-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. The axes with title State Values contains 2 objects of type line. These objects represent True state values, Filtered state values.

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

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

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

где:

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

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

  • ut - гауссова серия возмущений состояния, имеющих среднее значение 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. The axes 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 и стандартными отклонениями start1 и start2 соответственно. Наблюдение yt представляет собой безошибочную сумму x1, t и x2, t.

Создание данных из модели пространства состояний. Чтобы смоделировать данные, предположим, что размер выборки T = 100,

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;

Задайте матрицы коэффициентов модели state-space. Для указания неизвестных параметров используйте 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. The axes 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. The axes 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 обычно переключается с диффузного фильтра Калмана на стандартный фильтр Калмана, когда количество кумулятивных наблюдений и количество диффузных состояний равны. Однако, если модель диффузного состояния-пространства имеет проблемы идентифицируемости (например, модель слишком сложна, чтобы соответствовать данным), то filter может потребовать дополнительных наблюдений для инициализации диффузных состояний. В крайних случаях, filter требуется весь образец.

Ссылки

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

Представлен в R2015b