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

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

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

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

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

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

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

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

Рассмотрите AR (2) процесс заданный

X(n)+1.5X(n-1)+0.75X(n-2)=ε(n),

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

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

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

freqz(1,A)

Figure contains 2 axes objects. Axes object 1 contains an object of type line. Axes object 2 contains an object of type line.

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

Графически исследуйте корреляцию в x путем создания графиков рассеивания X(n+1) по сравнению с. X(1) для n=2,3,4,5.

figure
for k = 1:4
    subplot(2,2,k)
    plot(x(1:end-k),x(k+1:end),'*')
    xlabel('X_1')
    ylabel(['X_' int2str(k+1)])
    grid
end

Figure contains 4 axes objects. Axes object 1 contains an object of type line. Axes object 2 contains an object of type line. Axes object 3 contains an object of type line. Axes object 4 contains an object of type line.

В графике рассеивания вы видите линейное соотношение между X(1) и X(2) и между X(1) и X(3), но не между X(1) и также X(4) или X(5).

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

Отрицательная корреляция между X(1) и X(2) и положительная корреляция между X(1) и X(3) объяснены поведением 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

Figure contains an axes object. The axes object with title Sample Autocorrelation Sequence contains an object of type stem.

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

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

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

Постройте частичную последовательность автокорреляции наряду с доверительными интервалами 95% большой выборки. Если данные сгенерированы авторегрессивным процессом порядка p, значения демонстрационной частичной последовательности автокорреляции для задержек, больше, чем p следуйте за a N(0,1/N) распределение, где N длина временных рядов. Для 95%-го доверительного интервала критическое значение 2erf-1(0.95)1.96 и доверительный интервал Δ=0±1.96/N.

stem(pacf,'filled')
xlabel('Lag')
ylabel('Partial ACF')
title('Partial Autocorrelation Sequence')
xlim([1 15])

conf = sqrt(2)*erfinv(0.95)/sqrt(1000);
hold on
plot(xlim,[1 1]'*[-conf conf],'r')
hold off
grid

Figure contains an axes object. The axes object with title Partial Autocorrelation Sequence contains 3 objects of type stem, line.

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

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

Смотрите также

|