Прервите идентифицируемость в моделях регрессии с ошибками ARIMA

Прервите идентифицируемость

Модель регрессии с ошибками ARIMA имеет следующую общую форму (t = 1..., T)

yt=c+Xtβ+uta(L)A(L)(1L)D(1Ls)ut=b(L)B(L)εt,(1)
где

  • t = 1..., T.

  • yt является рядом ответа.

  • Xt является строкой t X, который является матрицей конкатенированных векторов данных предиктора. Таким образом, Xt является наблюдением t каждого ряда предиктора.

  • c является прерыванием модели регрессии.

  • β является коэффициентом регрессии.

  • ut является рядом воздействия.

  • εt является инновационным рядом.

  • Ljyt=ytj.

  • a(L)=(1a1L...apLp), который является степенью p, несезонный авторегрессивный полином.

  • A(L)=(1A1L...ApsLps), который является степенью ps, сезонный авторегрессивный полином.

  • (1L)D, который является степенью D, несезонный полином интегрирования.

  • (1Ls), который является степенью s, сезонный полином интегрирования.

  • b(L)=(1+b1L+...+bqLq), который является степенью q, несезонный полином скользящего среднего значения.

  • B(L)=(1+B1L+...+BqsLqs), который является степенью qs, сезонный полином скользящего среднего значения.

  • Если вы указываете, что D = s = 0 (т.е. вы не указываете на сезонное или несезонное интегрирование), то каждый параметр идентифицируется. Другими словами, целевая функция вероятности чувствительна к изменению в параметре, учитывая данные.

  • Если вы указываете, что D> 0 или s> 0, и хотите оценить прерывание, c, то c не идентифицируется.

Можно показать, что это верно.

  • Рассмотрите уравнение 1. Решите для ut во втором уравнении и замените им в первое.

    yt=c+Xtβ+Η1(L)Ν(L)εt,

    где

    • Η(L)=a(L)(1L)DA(L)(1Ls).

    • Ν(L)=b(L)B(L).

  • Функция правдоподобия основана на распределении εt. Решите для εt.

    εt=Ν1(L)Η(L)yt+Ν1(L)Η(L)c+Ν1(L)Η(L)Xtβ.

  • Обратите внимание на то, что Lj c = c. Постоянный термин способствует вероятности можно следующим образом.

    Ν1(L)Η(L)c=Ν1(L)a(L)A(L)(1L)D(1Ls)c=Ν1(L)a(L)A(L)(1L)D(cc)=0

    или

    Ν1(L)Η(L)c=Ν1(L)a(L)A(L)(1Ls)(1L)Dc=Ν1(L)a(L)A(L)(1Ls)(1L)D1(1L)c=Ν1(L)a(L)A(L)(1Ls)(1L)D1(cc)=0.

Поэтому, когда ошибочная модель ARIMA интегрирована, целевая функция вероятности на основе распределения εt инвариантная к значению c.

В целом эффективная константа в эквивалентном представлении ARIMAX модели регрессии с ошибками ARIMA является функцией составных авторегрессивных коэффициентов и исходного прерывания c, и включает нелинейное ограничение. Это ограничение беспрепятственно включено для приложений, таких как симуляция Монте-Карло интегрированных моделей с ненулевыми прерываниями. Однако для оценки, модель ARIMAX не может идентифицировать константу в присутствии интегрированного полинома, и это приводит к побочным или необычным оценкам параметра.

Необходимо исключить прерывание из интегрированных моделей в большинстве приложений.

Прервите рисунок идентифицируемости

Как рисунок, рассмотрите модель регрессии с ARIMA (2,1,1) ошибки без предикторов

yt=0.5+ut(10.8L+0.4L2)(1L)ut=(1+0.3L)εt,(2)
или
yt=0.5+ut(11.8L+1.2L20.4L3)ut=(1+0.3L)εt.(3)

Можно переписать уравнение 3 замены использования и некоторая манипуляция

yt=(11.8+1.20.4)0.5+1.8yt11.2yt2+0.4yt3+εt+0.3εt1.

Обратите внимание на то, что

(11.8+1.20.4)0.5=0(0.5)=0.

Поэтому модель регрессии с ARIMA (2,1,1) ошибки в уравнении 3 имеет представление модели ARIMA (2,1,1)

yt=1.8yt11.2yt2+0.4yt3+εt+0.3εt1.

Вы видите, что константа не присутствует в модели (который подразумевает, что ее значение 0), даже при том, что значение модели регрессии с ошибочным прерыванием ARIMA 0.5.

Можно также моделировать это поведение. Запустите путем определения модели регрессии с ARIMA (2,1,1) ошибки в уравнении 3.

Mdl = regARIMA('D',1,'AR',{0.8 -0.4},'MA',0.3,...
    'Intercept',0.5,'Variance', 0.2);

Моделируйте 1 000 наблюдений.

rng(1);
T = 1000;            
y = simulate(Mdl, T);

Соответствуйте Mdl к данным.

ToEstMdl = regARIMA('ARLags',1:2,'MALags',1,'D',1);...
    % "Empty" model to pass into estimate
[EstMdl,EstParamCov] = estimate(ToEstMdl,y,'Display','params');
Warning: When ARIMA error model is integrated, the intercept is unidentifiable and cannot be estimated; a NaN is returned.
 
    ARIMA(2,1,1) Error Model (Gaussian Distribution):
 
                  Value      StandardError    TStatistic      PValue   
                 ________    _____________    __________    ___________

    Intercept         NaN            NaN           NaN              NaN
    AR{1}         0.89647       0.048507        18.481        2.921e-76
    AR{2}        -0.45101       0.038916        -11.59       4.6576e-31
    MA{1}         0.18804       0.054505          3.45       0.00056068
    Variance      0.19789      0.0083512        23.696      3.9373e-124

estimate выводит предупреждение, чтобы сообщить вам, что прерывание не идентифицируется, и устанавливает свою оценку, стандартную погрешность и t - статистическая величина к NaN.

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

c = linspace(Mdl.Intercept - 50,...
    Mdl.Intercept + 50,100); % Grid of intercepts
logL = nan(numel(c),1); % For preallocation

for i = 1:numel(logL)
    EstMdl.Intercept = c(i);
    [~,~,~,logL(i)] = infer(EstMdl,y);
end

figure
plot(c,logL)
title('Profile Log-Likelihood with Respect to the Intercept')
xlabel('Intercept')
ylabel('Loglikelihood')

loglikelihood не переключает сетку значений прерывания. Небольшое колебание является результатом числовой стандартной программы, используемой infer.

Похожие темы