Альтернативные представления модели ARIMA

Преобразование модели regARIMA в ARIMAX

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

Если вы более заинтересованы в сохранении обычной интерпретации коэффициента регрессии как меры чувствительности, то есть эффекты единичного изменения переменной предиктора на ответ, то используйте регрессионую модель с ошибками ARIMA. Коэффициенты регрессии в моделях ARIMAX не обладают этой интерпретацией из-за динамической зависимости от отклика [1].

Предположим, что у вас есть оценки параметров из регрессионной модели с ошибками ARIMA, и вы хотите увидеть, как структура модели сравнивается с моделью ARIMAX. Или, предположим, вы хотите получить некоторое представление об основополагающей связи между этими двумя моделями.

Модель ARIMAX является (t = 1,..., T):

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

  • yt - одномерный ряд откликов.

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

  • β - коэффициент регрессии.

  • c является регрессионной моделью точки пересечения.

  • Η(L)=ϕ(L)(1L)DΦ(L)(1Ls)=1η1Lη2L2...ηPLP, который является полиномом оператора степени P задержки, который захватывает комбинированный эффект сезонных и несезонных авторегрессивных полиномов и сезонных и несезонных полиномов интегрирования. Для получения дополнительной информации о обозначении см. «Мультипликативная модель ARIMA».

  • Ν(L)=θ(L)Θ(L)=1+ν1L+ν2L2+...+νQLQ, который является полиномом оператора степени Q lag, который захватывает комбинированный эффект сезонных и несезонных полиномов скользящего среднего.

  • εt - это инновационный процесс белого шума.

Регрессионная модель с ошибками ARIMA является (t = 1,..., T)

yt=c+Xtβ+utA(L)ut=B(L)εt,(2)
где

  • ut - это безусловный процесс нарушений порядка.

  • A(L)=ϕ(L)(1L)DΦ(L)(1Ls)=1a1La2L2...aPLP, который является полиномом оператора степени P задержки, который захватывает комбинированный эффект сезонных и несезонных авторегрессивных полиномов и сезонных и несезонных полиномов интегрирования.

  • B(L)=θ(L)Θ(L)=1+b1L+b2L2+...+bQLQ, который является полиномом оператора степени Q lag, который захватывает комбинированный эффект сезонных и несезонных полиномов скользящего среднего.

Значения переменных, заданные в Уравнении 2, не обязательно эквивалентны значениям переменных в Уравнении 1, хотя обозначение может быть аналогичной.

Иллюстрация преобразования regARIMA в модель ARIMAX

Рассмотрим уравнение 2, регрессионую модель с ошибками ARIMA. Используйте следующие операции, чтобы преобразовать регрессионую модель с ошибками ARIMA в ее соответствующую модель ARIMAX.

  1. Решите для ut.

    yt=c+Xtβ+utut=B(L)A(L)εt.

  2. Замените ut в регрессионное уравнение.

    yt=c+Xtβ+B(L)A(L)εtA(L)yt=A(L)c+A(L)Xtβ+B(L)εt.

  3. Решите для yt.

    yt=A(L)c+A(L)Xtβ+k=1Pakytk+B(L)εt=A(L)c+ZtΓ+k=1Pakytk+B(L)εt.(3)
    В уравнении 3,

    • A (<reservedrangesplaceholder6>) c = (1 - <reservedrangesplaceholder4> 1 - <reservedrangesplaceholder3> 2-...-<reservedrangesplaceholder2> P) <reservedrangesplaceholder1>. То есть константа в модели ARIMAX является точкой пересечения в регрессионой модели с ошибками ARIMA с нелинейным ограничением. Хотя и такие приложения, как simulate, обработайте это ограничение, estimate невозможно включить такое ограничение. В последнем случае модели эквивалентны, когда вы фиксируете точку пересечения и константу к 0.

    • В термине A (<reservedrangesplaceholder6>) Xtβ, полином оператора задержки A (<reservedrangesplaceholder3>) фильтрует вектор <reservedrangesplaceholder2>-by-1 Xtβ, который является линейной комбинацией предсказателей, нагруженных коэффициентами регрессии. Этот процесс фильтрации требует P предварительных наблюдений ряда предикторов.

    • arima Создает матричную Zt следующим образом:

      • Каждый столбец Zt соответствует каждому термину в A (L).

      • Первый столбец Zt является вектором Xtβ.

      • Второй столбец Zt является последовательностью d 2 NaNs (d 2 - это степень второго члена в A (L)), за которой следует продуктLdjXtβ. То есть программное обеспечение присоединяет d 2 NaNs в начале столбца T -by-1, присоединяет Xtβ после NaNs, но обрезает конец этого продукта путем d 2 наблюдений.

      • j-й столбец Zt является последовательностью dj NaNs (dj - степень j-го члена в A (L)), далее - продуктLdjXtβ. То есть программное обеспечение присоединяет dj NaNs в начале столбца T -by-1, присоединяет Xtβ после NaNs, но обрезает конец этого продукта путем dj наблюдений.

      .

    • Γ = [1 <reservedrangesplaceholder2> 1 <reservedrangesplaceholder1> 2 ... –a P] '.

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

  4. Переписать уравнение 3,

    yt=(1k=1Pak)c+Xtβk=1PakXtkβ+k=1Pakytk+εt+k=1Qεtk.

Для примера рассмотрим следующую регрессионую модель, ошибками которой являются ARMA (2,1):

yt=0.2+0.5Xt+ut(10.8L+0.4L2)ut=(1+0.3L)εt.(4)
Эквивалентная модель ARMAX:

yt=0.12+(0.50.4L+0.2L2)Xt+0.8yt10.4yt2+(1+0.3L)εt=0.12+ZtΓ+0.8yt10.4yt2+(1+0.3L)εt,

или

(10.8L+0.4L2)yt=0.12+ZtΓ+(1+0.3L)εt,

где Γ = [1 -0,8 0,4] 'и

Zt=0.5[x1NaNNaNx2x1NaNx3x2x1xTxT1xT2].

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

Можно проиллюстрировать это далее посредством симуляции и оценки.

  1. Задайте регрессионую модель с ошибками ARIMA в уравнении 4.

    MdlregARIMA0 = regARIMA('Intercept',0.2,'AR',{0.8 -0.4},...
                   'MA',0.3,'Beta',[0.3 -0.2],'Variance',0.2);
  2. Сгенерируйте предварительные наблюдения и данные предиктора.

    rng(1);   % For reproducibility
    T = 100;
    maxPQ = max(MdlregARIMA0.P,MdlregARIMA0.Q);
    numObs  = T + maxPQ;...
        % Adjust number of observations to account for presample
    XregARIMA = randn(numObs,2); % Simulate predictor data
    u0 = randn(maxPQ,1);  % Presample unconditional disturbances u(t)
    e0 = randn(maxPQ,1);  % Presample innovations e(t)
  3. Моделируйте данные из Mdl1.

  4. Преобразование Mdl1 в модель ARIMAX.

    [MdlARIMAX0,XARIMAX] = arima(MdlregARIMA0,'X',XregARIMA);
    MdlARIMAX0
    MdlARIMAX0 = 
      arima with properties:
    
         Description: "ARIMAX(2,0,1) Model (Gaussian Distribution)"
        Distribution: Name = "Gaussian"
                   P: 2
                   D: 0
                   Q: 1
            Constant: 0.12
                  AR: {0.8 -0.4} at lags [1 2]
                 SAR: {}
                  MA: {0.3} at lag [1]
                 SMA: {}
         Seasonality: 0
                Beta: [1 -0.8 0.4]
            Variance: 0.2
    
  5. Сгенерируйте ответы presample для модели ARIMAX, чтобы гарантировать согласованность с Mdl1. Моделируйте данные из Mdl2.

    y0 = MdlregARIMA0.Intercept + XregARIMA(1:maxPQ,:)*MdlregARIMA0.Beta' + u0;
    rng(100)
    y2 = simulate(MdlARIMAX0,T,'Y0',y0,'E0',e0,'X',XARIMAX);
    
    figure
    plot(y1,'LineWidth',3)
    hold on
    plot(y2,'r:','LineWidth',2.5)
    hold off
    title('{\bf Simulated Paths}')
    legend('regARIMA Model','ARIMAX Model','Location','Best')

    Figure contains an axes. The axes with title {\bf Simulated Paths} contains 2 objects of type line. These objects represent regARIMA Model, ARIMAX Model.

    Моделируемые пути эквивалентны, потому что arima конвертер применяет нелинейное ограничение, когда он преобразует точку пересечения регрессионой модели в константу модели ARIMAX.

  6. Подбор регрессионной модели с ошибками ARIMA к моделируемым данным.

    MdlregARIMA = regARIMA('ARLags',[1 2],'MALags',1);
    EstMdlregARIMA = estimate(MdlregARIMA,y1,'E0',e0,'U0',u0,'X',XregARIMA);
     
        Regression with ARMA(2,1) Error Model (Gaussian Distribution):
     
                      Value      StandardError    TStatistic      PValue  
                     ________    _____________    __________    __________
    
        Intercept     0.14074        0.1014         1.3879         0.16518
        AR{1}         0.83061        0.1375         6.0407      1.5349e-09
        AR{2}        -0.45402        0.1164        -3.9007      9.5927e-05
        MA{1}         0.42803       0.15145         2.8262       0.0047109
        Beta(1)       0.29552      0.022938         12.883       5.597e-38
        Beta(2)      -0.17601      0.030607        -5.7506      8.8941e-09
        Variance      0.18231      0.027765         6.5663      5.1569e-11
    
  7. Подбор модели ARIMAX к моделируемым данным.

    MdlARIMAX = arima('ARLags',[1 2],'MALags',1);
    EstMdlARIMAX = estimate(MdlARIMAX,y2,'E0',e0,'Y0',...
        y0,'X',XARIMAX);
     
        ARIMAX(2,0,1) Model (Gaussian Distribution):
     
                     Value      StandardError    TStatistic      PValue  
                    ________    _____________    __________    __________
    
        Constant    0.084996      0.064217         1.3236         0.18564
        AR{1}        0.83136       0.13634         6.0975      1.0775e-09
        AR{2}       -0.45599       0.11788        -3.8683       0.0001096
        MA{1}          0.426       0.15753         2.7043       0.0068446
        Beta(1)        1.053       0.13685         7.6949      1.4166e-14
        Beta(2)      -0.6904       0.19262        -3.5843      0.00033796
        Beta(3)      0.45399       0.15352         2.9572       0.0031047
        Variance     0.18112      0.028836          6.281      3.3634e-10
    
  8. Преобразование EstMdl1 в модель ARIMAX.

    Предполагаемая константа модели ARIMAX не эквивалентна константе модели ARIMAX, преобразованной из регрессионной модели с ошибками ARIMA. Другими словами, EstMdl2.Constant = 0.0849961 и ConvertedMdl2.Constant = 0.087737. Это потому, что estimate не применяет нелинейное ограничение, которое arima converter enforces. В результате другие оценки также не являются эквивалентными, хотя и близкими.

Ссылки

[1] Hyndman, R. J. (2010, October). Модель ARIMAX Muddle. Роб Дж. Хиндман. Получено 4 мая 2017 из https://robjhyndman.com/hyndsight/arimax/.

См. также

| |

Похожие темы

Для просмотра документации необходимо авторизоваться на сайте