Выбор порядка AR с частичной последовательностью автокорреляции

В этом примере показано, как оценить порядок авторегрессивной модели с помощью частичной последовательности автокорреляции. Для этих процессов можно использовать частичную последовательность автокорреляции, чтобы помочь с выбором порядка модели. Для стационарных временных рядов со значениями частичная последовательность автокорреляции в задержке является корреляцией между и после регрессирования и на прошедших наблюдениях. Для процесса скользящего среднего значения можно использовать последовательность автокорреляции, чтобы оценить порядок. Однако для авторегрессивного (AR) или авторегрессивное скользящее среднее значение (ARMA) процесс, последовательность автокорреляции не помогает в выборе порядка. Рассмотрите AR (2) процесс заданный

где Гауссов белый шумовой процесс. Следующий пример:

  • Симулирует реализацию AR (2) процесс

  • Графически исследует корреляцию между изолированными значениями временных рядов

  • Исследует демонстрационную последовательность автокорреляции временных рядов

  • Подбирает модель AR (15) к временным рядам путем решения уравнений Уокера Рождества (aryule)

  • Использует отражательные коэффициенты, возвращенные aryule вычислить частичную последовательность автокорреляции

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

Симулируйте ряд с 1000 шагами расчета от AR (2) процесс, заданный разностным уравнением. Установите генератор случайных чисел на настройки по умолчанию для восстанавливаемых результатов.

A = [1 1.5 0.75];
rng default
x = filter(1,A,randn(1000,1));

Просмотрите частотную характеристику AR (2) процесс.

freqz(1,A)

AR (2) процесс действует как фильтр highpass в этом случае.

Графически исследуйте корреляцию в x путем создания графиков рассеивания по сравнению с для.

x12 = x(1:end-1);
x21 = x(2:end);
subplot(2,2,1)
plot(x12,x21,'*')
xlabel('X_1')
ylabel('X_2')
grid

x13 = x(1:end-2);
x31 = x(3:end);
subplot(2,2,2)
plot(x13,x31,'*')
xlabel('X_1')
ylabel('X_3')
grid

x14 = x(1:end-3);
x41 = x(4:end);
subplot(2,2,3)
plot(x14,x41,'*')
xlabel('X_1')
ylabel('X_4')
grid

x15 = x(1:end-4);
x51 = x(5:end);
subplot(2,2,4)
plot(x15,x51,'*')
xlabel('X_1')
ylabel('X_5')
grid

В графике рассеивания вы видите, что существует линейное соотношение между и и между и, но не между и или или.

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

Отрицательная корреляция между и и положительная корреляция между и объяснены поведением highpass-фильтра AR (2) процесс.

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

[xc,lags] = xcorr(x,50,'coeff');

figure
stem(lags(51:end),xc(51:end),'filled')
xlabel('Lag')
ylabel('ACF')
title('Sample Autocorrelation Sequence')
grid

Демонстрационная последовательность автокорреляции показывает отрицательную величину в задержке 1 и положительное значение в задержке 2. На основе графика рассеивания это - ожидаемый результат. Однако вы не можете определить из демонстрационной последовательности автокорреляции, какой порядок подходит для модели AR.

Подбирайте модель AR (15) с помощью aryule. Возвратите отражательные коэффициенты. Отрицание отражательных коэффициентов является частичной последовательностью автокорреляции.

[arcoefs,E,K] = aryule(x,15);
pacf = -K;

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

stem(pacf,'filled')
xlabel('Lag')
ylabel('Partial ACF')
title('Partial Autocorrelation Sequence')
xlim([1 15])
uconf = 1.96/sqrt(1000);
lconf = -uconf;
hold on
plot([1 15],[1 1]'*[lconf uconf],'r')
grid

Единственные значения частичной последовательности автокорреляции вне 95% доверительных границ происходят в задержках 1 и 2. Это указывает, что правильный порядок модели для процесса AR равняется 2.

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