Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Применение временных рядов для анализа больших данных. Учебное пособие по курсу «Математические методы анализа больших данных»

.pdf
Скачиваний:
1
Добавлен:
12.08.2026
Размер:
1 Мб
Скачать

3.2. Процедуры IMSL спектрального и кросс-спектрального анализа

ПРОЦЕДУРЫ ОЦЕНКИ МОДЕЛЕЙ ВРЕМЕННЫХ РЯДОВ

4.1. Процедура ARMME

Процедура ARMME определяет авторегрессионные параметры ARMAпроцесса, используя расширенные YuleWalkerуравнения, заданные K = MAXLAG автоковариациями ( ) для k = 1; 2; ...; K. Положим, что временной ряд { } генерируется ARMA(p,q)моделью

W

=

0

+ W

+

+ W

+ A A

A

,

t

 

1 t1

 

p tp

t

1

t1

 

q tq

 

 

 

 

 

 

t 0; 1; 2; K; K ,

 

 

 

 

 

где p = NPAR и q = NPMA. Поскольку зависит только от обновлений, которые получены к моменту времени t, то авторегрессионный параметр p связан с автоковариациями лагов

k = q +1; q + 2;

; q + p

набором уравнений

 

 

 

 

 

(q +1)

= (q)+ (q 1)+

+ (q p +1),

 

 

1

2

p

 

 

(q + 2) = (q +1)+ (q)+

+ (q p + 2),

 

1

2

p

 

 

(q + p) = (q + p 1)+ (q + p 2)+

+

(q).

 

1

2

 

p

 

Эта общая система линейных уравнений называется расширенными YuleWalkerуравнениями. Для q = 0 система соответствует YuleWalkerуравнениям. Эквивалентная матричная версия дается

 

Σφ = σ,

где

 

 

 

φ = ( 1, 2 ,

, p )T ,

ij = ( q + i j ),

i, j =1;2; ; p,

i

= (q + i),

i =1;2; ; p.

Общая константа 0 определяется как

71

4. Процедуры оценки моделей временных рядов

 

 

 

 

 

 

p = 0

 

0

 

 

p

 

 

 

=

 

 

 

 

1i

p 0,

 

 

 

 

i=1

 

 

где – среднее

.

 

 

 

 

 

 

 

 

 

 

 

 

Практически, автоковариационная функция оценивается автоковариациями ̂( ) выборки для k = 1; 2; ...; K. Решение расширенных YuleWalkerуравнений, используя эти моменты выборки, производит метод моментов оценки авторегрессионных параметров. Общая константа тогда может быть оценена заданной оценкой . Заметим, что расширенные YuleWalkerуравнения могут быть аналогично определены в терминах автокорреляций вместо автоковариаций.

4.2. Процедура MAMME

Процедура MAMME оценивает, основываясь на системе нелинейных уравнений, параметры скользящего среднего ARMA-процесса, заданного K = maxlag автоковариациями ( ) для k = 1; 2; ...; K и p = npar авто-

регрессионными параметрами

для i = 1; 2; ...; p.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Положим, что временной

ряд { }

генерируется ARMA(p,q)-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

моделью:

 

 

 

 

 

 

 

 

 

 

 

 

 

(B)W =

0

+

(B)A ,

t 0; 1; 2;

 

; K ,

 

 

 

t

 

 

 

 

t

 

 

 

 

где p = NPAR и q = NPMA.

 

 

 

 

 

 

 

Пусть W = (B)W

.

 

 

 

 

 

 

 

t

 

 

 

t

0

 

 

 

 

 

 

Тогда автоковариации производного процесса скользящего средне-

го = ( )

 

даются

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(k )

 

 

 

 

p = 0

 

 

(k ) =

 

p

 

p

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

j

 

 

 

0

 

 

 

 

 

 

 

 

( k + i j )

p 1,

 

1 ,

 

 

 

i=0

j=0

 

 

 

 

 

 

 

где ( ) означает автоковариационную функцию оригинального процесса Wt. Итерационная процедура для определения параметров скользящего среднего основана на отношении

72

4.3. Процедура nspe

 

 

(1+ 12 +

+ q2 ) A2

 

k = 0

(k ) =

 

 

 

+ qk q ) A2

 

 

 

(k

+ 1 k+1 +

k 1.

 

 

 

 

 

 

 

 

 

Пусть = (

0

, , . . . ,

 

)

и = ( , , . . . , ) , где

 

1

 

 

0 1

 

 

и  

 

 

 

 

 

 

 

 

 

 

 

 

A

 

 

 

j

=

 

 

 

 

 

 

 

 

 

 

 

 

 

 

j

= ∑

 

+

( ),

j = 0;1;

=0

 

 

 

 

 

Тогда значение на ( + 1)

 

j = 0

 

0

j =1; 2;

;q

 

 

 

;q.

 

итерации определяется как

 

(i+1)

 

(i)

(T

(i)

)

1

(i)

.

τ

= τ

f

 

 

 

 

Процедура оценивания начинается с начального значения

 

(0)

= (

T

τ

(0),0, ,0)

 

и заканчивается на итерации , когда или ( )меньше, чем RELERR, или равно MAXIT. Параметры скользящего среднего определяются из финальной оценки установкой = − / для j = 1; 2; ...; q. Дисперсия случайных шоков определяется в соответствии с

 

 

 

p

 

 

 

 

 

 

 

2

(0)

 

(i )

q = 0

 

 

i

 

A

=

 

i=1

 

 

 

 

2

 

 

q 0 .

 

 

0

 

 

 

 

 

 

 

На практике оцениваются и автоковариации и авторегрессионные параметры. Решение системы нелинейных уравнений, используя эти моменты выборки, производит метод моментов оценки параметров скользящего среднего и дисперсии случайных шоков. Заметим, что автокорреляции ( ) могут быть использованы вместо автоковариаций ( ), чтобы вычислить ′( ) для k = 1; 2; ...; K.

4.3. Процедура nspe

Процедура ARMA-процесса, t = 1; 2; ...; n.

nspe вычисляет предварительные оценки параметров заданного выборкой n = NOBS наблюдений { } для

73

4. Процедуры оценки моделей временных рядов

Положим, что временной ряд { } генерируется ARMA(p,q)-мо- делью в форме:

(B)W

=

0

+ (B)A

,

t

 

t

 

где B – оператор смещения назад,

t 0; 1; 2;

,

(B) =1B B

2

B

p

,

 

 

 

 

 

 

1

2

 

p

 

,

 

(B ) =1B B

 

B

 

 

 

2

 

 

q

 

 

1

2

 

 

q

 

 

 

p = NPAR и q = NPMA.

Пусть ̂= WMEAN является оценкой среднего временного ряда

{ }, где

 

 

known

 

1

 

 

ˆ =

n

 

 

 

t

unknown .

 

 

W

n t=1

 

Автоковариационная функция ( ) оценивается как

 

 

1

nk

 

 

 

 

 

(k ) =

 

(W

)(W

),

ˆ

 

 

t

ˆ

t+k

ˆ

 

 

n k

 

 

 

 

 

 

 

t=1

 

 

 

 

k = 0;1;

; K,

где = + . Заметим, что ̂(0) есть оценка дисперсии выборки.

Чтобы для данной выборки ковариаций вычислить методом моментов, используя расширенные уравнения Юла – Уолкера, оценки авторегрессионных параметров используется процедура ARMME

 

 

 

 

 

 

Σφ = σ,

 

 

 

 

где

 

 

 

 

(

 

 

 

 

 

 

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ˆ = ˆ , ˆ

 

,

, ˆ

 

T

,

 

 

 

 

 

 

 

p

 

 

 

 

 

 

 

 

1

2

 

 

 

 

 

ˆ

 

= ˆ

(

q + i j

)

,

 

 

 

 

 

 

ij

 

i, j =1;2;

; p,

 

 

 

 

 

 

 

 

 

 

 

= (q + i),

 

 

 

 

 

 

 

 

 

i =1;2;

; p.

 

 

 

ˆ

i

 

ˆ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Общая константа 0

определяется как

 

 

 

 

ˆ

 

 

 

p =

ˆ0

 

 

p

 

 

=

 

 

 

 

ˆ

1

ˆi

p

 

 

 

i=1

 

 

0

0 .

74

4.4. Процедура KALMN

Параметры скользящего среднего оцениваются, используя проце-

дуру MAMME. Пусть

 

 

 

W

= (B)W

.

t

t

0

 

Тогда автоковариации производного процесса скользящего среднего = ( ) даются

 

(k )

 

 

 

 

 

p = 0

 

 

 

ˆ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ˆ (k ) =

p

 

p

 

 

 

 

 

 

 

 

 

i

 

j

 

( k + i j )

p 1,

0

1.

 

 

 

 

 

 

 

 

 

 

 

ˆ

ˆ

 

ˆ

 

ˆ

 

 

i=0

j=0

 

 

 

 

 

 

 

 

Итерационная процедура для определения параметров скользящего среднего основана на отношении

(k ) = (1+ 12 +

+ q2 ) A2

k = 0

(k + 1 k +1 +

+ qk q ) A2

k 1 ,

 

 

 

 

где ( ) означает автоковариационную функцию оригинального процесса Wt.

Пусть = ( 0, 1, . . . , , ) и = ( 0, 1, . . . , , ) , где

 

 

 

 

 

 

 

j

 

 

 

 

 

 

 

 

 

 

 

qj

 

 

 

и

f

j

=

 

i+ j

ˆ ( j ),

 

 

 

 

i

 

 

 

 

 

 

i=0

 

 

 

 

A

 

 

 

j = 0

=

 

 

 

 

 

 

 

 

j = 1;2; ; q

 

j

0

 

 

 

 

j = 0;1;

 

 

;q.

 

Тогда значение на ( + 1) −итерации определяется как

(

)

 

(i+1) = (i) − T (i)

1

f (i).

 

Процедура оценивания начинается с начального значения

(0) = ( 0 ,0, ,0)T

и заканчивается на итерации i, когда или ( )меньше, чем RELERR, или i равно MAXIT. Параметры скользящего среднего получаются из фи-

75

4. Процедуры оценки моделей временных рядов

нальной оценки установкой = − / для j = 1; 2; ...; q. Дисперсия случайных шоков оценивается как

 

 

 

p

 

 

 

 

 

 

 

2

ˆ (0)

 

ˆ ˆ (i )

q = 0

 

 

i

 

ˆ A

=

 

i=1

 

 

 

 

2

 

 

q 0 .

 

 

0

 

 

 

 

 

 

 

4.4. Процедура KALMN

Процедура KALMN основана на рекурсивном алгоритме Калмана (Kalman, 1960), который известен как фильтр Калмана. Нижеследующая модель известна как модель пространства состояний. Модель специфицируется этап за этапом, где этапы обычно соответствуют точкам времени, в которых становятся доступными наблюдения. Процедура KALMN не требует массивных вычислений и объёмов памяти, что существенно, раз она должна обрабатывать не все данные в конце каждого этапа для того, чтобы оценивать вектор состояния. Это достигается использованием результатов предшествующих вычислений и хранением в памяти только тех, которые существенны для обработки будущих наблюдений.

Здесь используется нотация, следуя Салласу и Харвиллу (Sallas, Harville, 1981). Пусть (вводится в Y) – тл × 1 вектор наблюдений, которые становятся доступными в момент времени k. Индекс k используется здесь вместо t, более общепринятого во временных рядах, чтобы подчеркнуть, что модель выражена на этапах k = 1, 2, ..., K, и эти этапы не должны соответствовать равным интервалам времени. Фактически, они могут соответствовать любым моментам времени. Уравнение наблюдений для модели пространства состояний:

 

y

k

= Z b + e

,

k =1,2,K.

 

 

 

 

k

k

k

 

 

 

 

Здесь,

– известная

 

× -матрица

и

− × 1-вектор состоя-

 

 

 

 

 

 

 

 

 

 

ния. Вектор состояния может изменяться со временем в соответствии с уравнением состояния

bk+1 = Tk+1bk + wk+1, k =1,2,K,

начиная с

b1 = m1 + w1.

76

4.4. Процедура KALMN

Изменение в векторе состояния от момента времени до + 1 объясняется частично матрицей перехода +1 (вводится в T), которая считается известной.

Примем, что q-мерный вектор (k = 1, 2, ..., K) является независимо распределенным многомерным нормальным со средним вектором 0 и ковариационной матрицей 2( ), что -мерный вектор(k = 1, 2, ..., K) является независимо распределенным многомерным

нормальным со средним вектором 0 и ковариационной матрицей, 2( )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

и что и

независимы друг от друга. Здесь,

– средний для

и

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

1

считается известным,

 

2 – неизвестный положительный

скаляр.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+1

(вводится в Q) и (вводится в R) считаются известными.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

̂

 

 

оценку реализации вектора состояния

, давае-

 

Обозначим

 

 

 

 

|

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

мую наблюдениями

,

, . . . , .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Матрица среднеквадратических ошибок для

 

̂

 

по определению

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

|

 

 

 

 

 

 

равна

 

 

 

 

 

(

 

 

k )(

 

 

 

k )

 

 

 

 

 

 

 

 

 

 

 

 

2

 

k j

 

 

k j

 

k j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ˆ

 

ˆ

 

T

 

 

 

 

 

 

 

 

 

 

C

= E

 

 

 

b

 

 

b

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

На момент -го вызова, мы имеем

̂

 

 

и

 

 

 

,

которые были

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

| −1

 

 

| −1

 

 

 

 

 

вычислены из ( − 1)-го вызова (вводятся в B и COVB соответственно).

Процедура KALMN вычисляет отфильтрованную оценку

̂

 

вместе с

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

|

 

 

 

. Эти оценки даны уравнениями обновления:

 

 

 

 

 

 

 

 

 

 

|

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ˆ

 

 

 

 

ˆ

 

 

+

 

 

 

 

k k

=

k k1

 

 

 

 

 

 

 

 

 

 

 

 

C

k

 

k

= C

k

 

k 1

C

k

 

 

 

 

 

 

 

 

 

 

ˆ

 

 

 

 

и

H

k

 

= R

 

где vk = yk Zk k k1

 

 

 

 

 

 

 

 

 

k

 

 

C

 

 

Z

T

H

1

 

 

,

 

 

 

 

k

 

k

 

v

 

 

 

k k1

 

 

 

 

 

 

 

k

 

 

 

 

 

 

Z

T

H

1

Z

 

C

 

 

 

 

,

 

k 1

k

k

k

k

 

k 1

 

 

 

 

 

 

 

 

 

 

 

 

 

+ Z

C

 

 

 

 

Z

T

.

 

 

 

 

 

k k 1

k

 

 

 

 

 

 

 

k

 

 

 

 

 

 

 

 

 

 

Здесь, (хранится в V) – прогноз ошибки на шаг вперед и 2 – ковариационная матрица для . хранится в COVV. «Пусковые значения», необходимые при первом вызове KALMN, ̂1|0 = 1 и 1|0 = 1 вводятся через B и COVB, соответственно. Вычисления для k-го вызова завершаются KALMN-вычислением на шаг вперед оценки ̂ +1| вместе с+1| , даваемые уравнениями прогноза:

77

4. Процедуры оценки моделей временных рядов

 

 

ˆ

= T

 

ˆ

 

,

 

 

 

 

k+1 k

+1

 

k k

 

 

 

 

 

k

 

 

 

C

 

= T

C

 

T

T

 

+ Q

.

k +1 k

k k

 

 

 

 

k

+1

k +1

 

k +1

 

Если и отфильтрованные оценки, и оценки на шаг вперед необходимы пользователю в каждой точке времени, KALMN может вызываться дважды в каждой точке времени – первый раз с IT = 1 и IQ = 1, чтобы

 

 

̂

и

, и

второй раз с NY = 0 чтобы произвести

̂

произвести

 

 

 

|

 

|

 

 

 

 

 

 

 

+1|

и

 

(С IT = 1 и IQ = 1 уравнения прогноза пропускаются. С NY = 0,

+1|

 

 

 

 

 

 

 

 

 

 

 

уравнения обновления пропускаются).

 

 

 

 

 

Часто необходима оценка вектора состояния более, чем на шаг впе-

ред, т.е., оценка

̂

нужна для > + 1. В этом случае KALMN вызыва-

 

 

 

 

|

 

 

 

 

 

 

 

 

 

ется, чтобы вычислить

̂

 

. Последующие вызовы KALMN с NY = 0

 

 

 

 

 

 

 

+1|

 

 

 

 

 

 

позволят вычислить

̂

 

̂

 

,…,

̂

. Вычисления для

̂

и

 

 

,

 

 

 

 

 

 

+2|

+3|

 

|

 

|

|

используют ковариационную матрицу ошибок в уравнении наблюдения и уравнении состояния как известную с точностью до неизвестного положительного скалярного множителя 2.

Оценка максимального правдоподобия 2, основанная на наблюдениях 1, 2, . . . , , дается

 

m

 

где N =

k

 

n

,

 

k =1

 

 

 

 

 

2

= SS

 

N ,

 

 

 

 

 

 

 

m

 

 

 

 

 

SS

 

T

1

 

 

 

 

= vk

Hk

vk .

 

 

 

 

k =1

 

 

 

 

 

Если 2 известна, и могут быть введены как ковариационные матрицы точно. В более раннем обсуждении предлагалось упростить заданием 2 = 1.

На практике матрицы , и обычно не известны полностью. Они могут быть известными функциями неизвестного параметра – вектора . В этом случае KALMN может быть использована в сопряжении с программой оптимизации (см. процедуру UMINF, IMSL MATH/ LIBRARY), чтобы получить оценку максимального правдоподобия .

Натуральный логарифм функции правдоподобия для

,

, . . . ,

 

 

 

 

 

 

1

2

 

отличается не более чем аддитивной константой от

 

 

 

L( , 2 , y1, y2 , , ym )= −

 

 

 

m

m

 

 

1

N ln 2

1

ln (det (Hk ))

1

vkT Hk1vk

2

2

2

 

 

 

 

k =1

k =1

 

 

78

4.4. Процедура KALMN

Здесь =1 ln (det ( )) (хранится в ALNDET) – натуральный логарифм определителя , где 2 – ковариационная матрица наблюдений.

Минимизация −2 ( , 2, 1, 2, . . . , ) по всем и 2 обеспечивает оценки максимального правдоподобия. Эквивалентно, минимизация

−2 ( , 1, 2, . . . , ), где

c (

 

 

 

m )

 

 

SS

 

 

 

m

 

(

 

(

 

k ))

1

2

 

2

 

 

 

 

 

2

 

 

 

 

L , y

, y

, , y

 

= − 1

N ln

 

N

 

 

1

 

ln

 

det

 

H

 

 

 

 

 

 

 

 

 

 

 

 

k =1

 

 

 

 

 

 

обеспечивает оценки максимального правдоподобия ̂ и ̂2 = ( )/ .

Минимизация

−2

( ,

, , . . . , )

вместо −2 ( , 2,

, , . . . , )

 

 

 

 

 

1

 

2

 

1

2

 

снижает размерность задачи минимизации на единицу.

 

 

 

Обе задачи оптимизации эквивалентны, поскольку ̂2 = ( )/

минимизирует −2 ( , 2,

, , . . . , )

для всех , следовательно, 2 в

 

 

 

 

 

 

1

2

 

 

 

 

( , 2,

, , . . . , )

может быть заменён ̂2( ), чтобы дать функцию,

 

 

1

2

 

 

 

 

 

 

 

 

которая

отличается

не

более

чем

на аддитивную константу

от

( , , , . . . , ).

 

 

 

 

 

 

 

 

1

2

 

 

 

 

 

 

 

 

В более раннем обсуждении принималось, чтобы была несингулярна. Если сингулярна, используется модификация для сингулярных распределений описанных Рао (Rao, 1973).

Необходимые изменения в предыдущей дискуссии:

1.Заменить обобщённой обратной.

2.Заменить ( ) произведением ненулевых собственных чисел .

3.Заменить =1 ( ).

Оценки максимального правдоподобия параметров в фильтре Калмана обсуждаются Салласом и Харвиллом (Sallas, Harville, 1988).

79

Введение

КОНТРОЛЬНЫЕ ЗАДАНИЯ

Для изучения технологий анализа временных рядов предлагается выполнение следующих контрольных заданий:

По выборке значений временного ряда оценить параметры линейного и квадратичного трендов и выполнить прогнозирование.

Применить процедуры рекуррентного и свёрточного экспоненциального сглаживания к значениям временного ряда и выполнить прогнозирование.

По выборке значений временного ряда построить периодограмму

иоценить период циклической составляющей.

Выделить из временного ряда циклическую составляющую и выполнить прогнозирование.

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

По выборке значений временного ряда построить частную автокорреляционную функцию и оценить порядки модели Бокса-Дженкинса.

Оценить параметр модели Бокса-Дженкинса, наиболее адекватного временному ряду, близкому к стационарному.

Выполнить прогнозирование значений временного ряда по модели Бокса-Дженкинса.

80

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]