Временные базовые разделы для оценки модели ARIMA

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

Три временных базовых раздела для одномерных авторегрессионных интегрированных моделей скользящего среднего значения (ARIMA) являются предварительными выборками, оценочными и прогнозными периодами.

  • Период предварительной выборки - содержит данные, используемые для инициализации отстающих значений в модели. Авторегрессивная интегрированная модель ARIMA скользящего среднего значения (p, D, q) (p s, <reservedrangesplaceholder10> <reservedrangesplaceholder9>, <reservedrangesplaceholder8> <reservedrangesplaceholder7>) модель s требует предтипового периода, содержащего, по крайней мере p + D + <reservedrangesplaceholder3> <reservedrangesplaceholder2> + s наблюдения (см. свойство P arima объект модели). Например, если Вы планируете соответствовать модели ARIMA (4,1,1), условное ожидаемое значение Δ <reservedrangesplaceholder19> <reservedrangesplaceholder18>, учитывая его историю, содержит Δ <reservedrangesplaceholder17> <reservedrangesplaceholder16> - 1 = <reservedrangesplaceholder15> <reservedrangesplaceholder14> - 1 - <reservedrangesplaceholder13> <reservedrangesplaceholder12> - 2 через Δ <reservedrangesplaceholder11> <reservedrangesplaceholder10> - 4 = <reservedrangesplaceholder9> <reservedrangesplaceholder8> - 4 - <reservedrangesplaceholder7> <reservedrangesplaceholder6> - 5. Условное ожидаемое значение Β y 6 является функцией от y 5 до y 1, и, следовательно, вклад правдоподобия É y 6 требует этих наблюдений. Кроме того, данные не существуют для вкладов вероятности Δ <reservedrangesplaceholder1> 1 через Δ <reservedrangesplaceholder0> 5. Поэтому оценка модели требует периода предварительного образца, по меньшей мере, пяти временных точек.

  • Период оценки - содержит наблюдения, к которым модель явно подходит. Количество наблюдений в выборке оценки effective sample size. Для идентифицируемости параметра эффективным размером выборки должно быть, по крайней мере, количество оцениваемых параметров.

  • Период прогноза - дополнительный период, в течение которого генерируются прогнозы, известный как forecast horizon. Этот раздел содержит данные holdout для валидации предсказуемости модели.

Предположим y t является рядом откликов и X t является 3-D экзогенным рядом. Рассмотрите подбор кривой SARIMAX (p, D, q) (p s, <reservedrangesplaceholder8> <reservedrangesplaceholder7>, <reservedrangesplaceholder6> <reservedrangesplaceholder5>) модель s <reservedrangesplaceholder3> <reservedrangesplaceholder2> к данным ответа в векторе <reservedrangesplaceholder1>-by-1 y и экзогенные данные в матрице T -by-3 X. Кроме того, вы хотите, чтобы прогнозируемый горизонт имел K длины (то есть вы хотите продержаться K наблюдениях в конце выборки, чтобы сравнить с прогнозами из подобранной модели).

Этот рисунок показывает разбиения основы времени для оценки модели. В рисунке, J = p + D + <reservedrangesplaceholder2> <reservedrangesplaceholder1> + s.

Time base partitions for model estimation

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

Portions of the arrays that correspond to input arguments of estimate

  • Y - необходимый вход для определения данных отклика, к которым подходит модель.

  • 'Y0' является необязательным аргументом пары "имя-значение" для определения предварительных данных отклика. Y0 должно иметь не менее J строк. Чтобы инициализировать модель, estimate использует только последние наблюдения J Y0 ((end - J + 1): конец).

    estimate также принимает предварительные примеры инноваций и условных отклонений, когда вы задаете 'E0' и 'V0' Аргументы пары "имя-значение". Эти серии не включены в рисунки, но на них распространяются те же принципы.

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

Для модели без экзогенного регрессионного компонента, если вы не задаете Y0, estimate backcasts модель для необходимых предварительных наблюдений. estimate впоследствии подгоняет модель ко всем заданным данным отклика Y. Хотя estimate backcasts для предварительной выборки по умолчанию, можно извлечь предварительную выборку из данных и указать его с помощью 'Y0' аргумент пары "имя-значение", чтобы убедиться, что estimate инициализирует и подбирает модель к вашим спецификациям.

Если вы задаете 'X', применяются следующие условия:

  • estimate синхронизирует X и y относительно последнего наблюдения в массивах (T - K на предыдущем рисунке) и применяет только необходимое количество наблюдений к регрессионному компоненту. Это действие подразумевает, что X может иметь больше строк, чем Y.

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

  • Если вы задаете 'Y0', estimate использует только последние экзогенные наблюдения, необходимые для подгонки модели (наблюдения J + 1 до T - K на предыдущем рисунке). estimate игнорирует предварительные экзогенные данные.

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

Данные временных рядов разбиений для оценки

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

Загрузка и предварительная обработка данных

Загрузите данные.

load Data_Airline

Переменная DataTable - расписание, содержащее временные ряды PSSG.

Постройте график временных рядов.

plot(DataTable.Time,DataTable.PSSG)
xlabel('Time (months)')
ylabel('Passenger Counts')

Figure contains an axes. The axes contains an object of type line.

Серия демонстрирует сезонность и экспоненциальный тренд.

Определите, имеют ли данные отсутствующие значения.

anymissing = sum(ismissing(DataTable))
anymissing = 0

Отсутствующих наблюдений нет.

Стабилизируйте ряд путем применения преобразования журнала.

StblTT = varfun(@log,DataTable);

Основа времени разбиения

Рассмотрим SARIMA(0,1,1)×(0,1,1)12 модель для журнала ежемесячных подсчётов пассажиров с 1949 по 1960 год. Модель требует p+D+ps+s=0+1+0+12=13 Примитивные отклики. Система координат arima шаблон модели для оценки хранит необходимое количество откликов presample в свойстве P.

Создайте SARIMA(0,1,1)×(0,1,1)12 шаблон модели для оценки. Задайте, что константа модели 0. Проверьте необходимое количество наблюдений предварительного образца путем отображения значения P использование записи через точку.

Mdl = arima('Constant',0,'D',1,'MALags',1,'SMALags',12,...
    'Seasonality',12);
Mdl.P
ans = 13

Рассмотрим прогнозный горизонт в два года (24 месяца). Разделите данные отклика на предварительно выбранные, оценочные и прогнозные переменные выборки.

fh = 24;                % Forecast horizon
T = size(StblTT,1);     % Total sample size
eT = T - Mdl.P - fh;    % Effective sample size

idxpre = 1:Mdl.P;
idxest = (Mdl.P + 1):(T - fh);
idxfor = (T - fh + 1):T;

y0 = StblTT.log_PSSG(idxpre);  % Presample responses
y = StblTT.log_PSSG(idxest);   % Estimation sample responses
yf = StblTT.log_PSSG(idxfor);  % Forecast sample responses

Оценка модели

Подбор модели к оценочной выборке. Задайте предварительную выборку при помощи 'Y0' аргумент пары "имя-значение".

EstMdl = estimate(Mdl,y,'Y0',y0);
 
    ARIMA(0,1,1) Model Seasonally Integrated with Seasonal MA(12) (Gaussian Distribution):
 
                  Value      StandardError    TStatistic      PValue  
                _________    _____________    __________    __________

    Constant            0              0           NaN             NaN
    MA{1}        -0.31781       0.087289       -3.6408      0.00027175
    SMA{12}      -0.56707        0.10111       -5.6083      2.0434e-08
    Variance    0.0014446     0.00018295        7.8962      2.8763e-15

EstMdl является полностью заданным arima модель, представляющая предполагаемую модель SARIMA

(1-L)(1-L12)yt=(1-0.18L)(1-0.18L12)εt,

где εt является Гауссовым со средним значением 0 и отклонением 0,0019.

Потому что константа 0 в шаблоне модели, estimate рассматривает его как ограничение равенства во время оптимизации. Поэтому выводы о константе нерелевантны.

Прогнозировать модель можно с помощью forecast функция arima путем определения EstMdl и горизонт прогноза fh. Чтобы инициализировать модель для прогнозирования, задайте данные отклика выборки оценки y при помощи 'Y0' аргумент пары "имя-значение".

См. также

Объекты

Функции

Похожие темы