1.3: Усунення компонентів тренду
- Page ID
- 97241
У цьому розділі розроблено три різні методи оцінки тенденції моделі часових рядів. Передбачається, що має сенс постулювати модель (1.1.1) з\(s_t=0\) для всіх\(t\in T\), тобто
\[X_t=m_t+Y_t, t\in T \tag{1.3.1} \label{Eq131} \]
де (без втрати спільності)\(E[Y_t]=0\). Зокрема, обговорюються три різні методи: (1) оцінка найменших квадратів\(m_t\), (2) згладжування за допомогою ковзних середніх і (3) різниця.
Метод 1 (Оцінка найменших квадратів) Часто корисно припустити, що компонент тренду може бути змодельований відповідним чином поліномом,
\[ m_t=b_0+b_1t+\ldots+b_pt^p, \qquad p\in\mathbb{N}_0. \nonumber \]
При цьому невідомі параметри\(b_0,\ldots,b_p\) можна оцінити методом найменших квадратів. У поєднанні вони дають оцінену поліноміальну тенденцію
\[ \hat{m}_t=\hat{b}_0+\hat{b}_1t+\ldots+\hat{b}_pt^p, \qquad t\in T, \nonumber \]
де\(\hat{b}_0,\ldots,\hat{b}_p\) позначають відповідні оцінки найменших квадратів. Зверніть увагу, що замовлення\(p\) не оцінюється. Його повинен вибрати статистик - наприклад, оглянувши графік часових рядів. Залишки\(\hat{Y}_t\) можна отримати як
\[ \hat{Y}_t=X_t-\hat{m}_t=X_t-\hat{b}_0-\hat{b}_1t-\ldots-\hat{b}_pt^p, \qquad t\in T. \nonumber \]
Про те, як оцінити правильність посадки приталеного тренда, буде предметом розділу 1.5 нижче.
Приклад 1.3.1 (Рівень озера Гурон). Ліва панель малюнка 1.7 містить часові ряди середньорічних рівнів води в футах (зменшені на 570) озера Гурон з 1875 по 1972 рік. Реалізація процесу
\ [
x_t=\ mbox {(Середній рівень води озера Гурон за рік $1874+t$)} -570,
\ qquad t=1,\ ldots,98.
\ nonumber\] Здається,
існує лінійне зниження рівня води, і тому доцільно пристосувати поліном порядку один до даних. Оцінювання найменших квадратів оцінювачів надає нам значення
\[ \hat{b}_0=10.202 \qquad\mbox{and}\qquad \hat{b}_1=-0.0242 \nonumber \]
для перехоплення і нахилу відповідно. Отримані\(\hat{y}_t=\hat{Y}_t(\omega)\) спостережувані залишки наносяться проти часу в правій панелі малюнка 1.7. У даних не залишилося явної тенденції. З іншого боку, сюжет не сильно підтримує стаціонарність залишків. Додатково в даних є докази залежності.
Щоб відтворити аналіз в R, припустимо, що дані зберігаються в файлі lake.dat. Потім скористайтеся наступними командами.
> озеро = читання.таблиця (» lake.dat «)
> озеро = ts (озеро, початок = 1875)
> t = 1: довжина (озеро)
> lsfit = lm (озеро $^\ mathrm {\ sim} $t)
> ділянка (t, озеро, xlab ="», ylab = "»)
> рядки (lsfit {$\} fit)
Функція lm підходить до лінійної моделі або лінії регресії до даних озера Гурон. Для побудови як вихідного набору даних, так і встановленої лінії регресії в одному графіку, ви можете спочатку побудувати рівні води, а потім використовувати функцію ліній для накладання прилягання. До залишків, що відповідають лінійній моделі, можна отримати доступ за допомогою команди lsfit$resid.
\ end {exmp}
Метод 2 (Згладжування за допомогою ковзних середніх)\((X_t\colon t\in\mathbb{Z})\) Дозволяти бути стохастичним процесом, що слідує за моделлю\(\ref{Eq131}\). Виберіть\(q\in\mathbb{N}_0\) і визначте двосторонню ковзну середню
\ begin {рівняння}\ label {
eq:wt} w_t=\ frac {1} {2q+1}\ sum_ {j=-q} ^qx_ {t+j},\ qquad t\ in\ mathbb {Z}. \ tag {1.3.2}\ end {equation}
Випадкові величини\(W_t\) можуть бути використані для оцінки компонента\(m_t\) тренду наступним чином. Спочатку зауважте, що
\ [
w_t=\ frac {1} {2q+1}\ sum_ {j=-q} ^qm_ {t+j} +\ frac {1} {2q+1}\ sum_ {j=-q} ^qy_ {t+j}\ приблизно m_t,
\ nonumber\]
припускаючи, що тенденція локально приблизно лінійна і що середнє значення\(Y_t\) над інтервалом\([t-q,t+q]\) близький до нуля. Тому\(m_t\) можна оцінити по
\[ \hat{m}_t=W_t,\qquad t=q+1,\ldots,n-q. \nonumber \]
Зверніть увагу, що немає можливості оцінити перший\(q\) і останній терміни\(n-q\) дрейфу через двосторонній характер ковзних середніх. На відміну від цього, можна також визначити односторонні ковзні середні, дозволяючи
\[ \hat{m}_1=X_1,\qquad \hat{m}_t=aX_t+(1-a)\hat{m}_{t-1},\quad t=2,\ldots,n. \nonumber \]






-
Малюнок 1.8: Двостороння ковзна середня фільтрує W t для даних озера Гурон (верхня панель) та їх залишки (нижня панель) з пропускною здатністю q = 2 (зліва), q = 10 (середня) і q = 35 (праворуч).
Рисунок 1.8 містить оцінки на\(\hat{m}_t\) основі двосторонніх ковзних середніх для даних озера Гурон Приклад 1.3.1. для вибраних варіантів\(q\) (верхня панель) та відповідних оціночних залишків (нижня панель).
Фільтри ковзних середніх для цього прикладу можуть бути створені в R наступним чином:
> t = 1: довжина (озеро)
> ma2 = фільтр (озеро, сторони = 2, реп (1,5) /5)
> ma10 = фільтр (озеро, сторони = 2, реп (1,21) /21)
> ma35 = фільтр (озеро, сторони = 2, реп (1,71) /71)
> ділянка (t, ma2, xlab = "», ylab = "», тип = "l»)
> лінії (t, ma10); лінії (t, ma35)
У ньому сторони визначають, чи буде використовуватися одно- або двосторонній фільтр. Словосполучення rep (1,5) створює вектор довжиною 5, при цьому кожен запис дорівнює 1.
Більш загальні варіанти плавних ковзних середніх можна отримати наступним чином. Зверніть увагу, що у випадку двосторонньої версії\(W_t\) кожна змінна\(X_{t-q},\ldots,X_{t+q}\) отримує «вагу»\(a_j=(2q+1)^{-1}\). Таким чином, сума всіх ваг дорівнює одиниці. Те ж саме справедливо і для односторонніх ковзних середніх з вагами\(a\) і\(1-a\). Як правило, можна, отже, визначити більш плавний, дозволяючи
\[\hat{m}_t=\sum_{j=-q}^qa_jX_{t+j}, \qquad t=q+1,\ldots,n-q, \tag{1.3.3} \label{Eq133} \]
де\(a_{-q}+\ldots+a_q=1\). Ці загальні ковзні середні (двосторонні та односторонні) прийнято називати лінійними фільтрами. Існує незліченна кількість варіантів для ваг. Той, що тут\(a_j=(2q+1)^{-1}\), має ту перевагу, що лінійні тенденції проходять неспотворенно. У наступному прикладі введено фільтр, який пропускає кубічні тренди без спотворень.
Приклад 1.3.2 (15-бальне ковзне середнє Спенсера). Припустимо, що фільтр на дисплеї\(\ref{Eq133}\) визначається вагами\(|j|>7\), що задовольняють\(a_j=0\) if,\(a_j=a_{-j}\) і
\ [
(a_0, a_1,\ ldots, a_7) =\ frac {1} {320} (74,67,46,21,3, -5, -6, -3).
\ nonumber\]
Потім відповідні фільтри проходять кубічні тренди\(m_t=b_0+b_1t+b_2t^2+b_3t^3\) без спотворень. Щоб побачити це, зауважте, що
\ begin {align*}
\ sum_ {j=-7} ^7a_j=1\ qquad\ mbox {і}
\ qquad\ sum_ {j=-7} ^7j^ra_j=0,\ qquad r=1,2,3.
\ end {align*}
Тепер застосуйте пропозицію 1.3.1 нижче, щоб прийти до висновку. Припускаючи, що спостереження знаходяться в даних, використовуйте команди R
> а = c (-3, -6, -5, 3, 21, 46, 67, 74, 67, 46, 21, 3, -5, -6, -3) /320
> s15 = фільтр (дані, сторони = 2, а)
застосувати 15-бальний ковзний середній фільтр Спенсера. У цьому прикладі також пояснюється, як вказати загальний індивідуальний фільтр для даного набору даних.
Пропозиція 1.3.1. Лінійний фільтр (1.3.3) проходить многочлен ступеня\(p\) тоді і тільки тоді, коли
\ [
\ sum_ {j} a_j=1\ qquad\ mbox {і}\ qquad\ sum_ {j} j^ra_j=0,\ qquad r=1,\ ldots, p.
\ nonumber\]
Доказ. Досить показати, що\(\sum_ja_j(t+j)^r=t^r\) для\(r=0,\ldots,p\). Використовуючи біноміальну теорему, запишіть
\ begin {align*}
\ sum_ja_j (t+j) ^r
&=\ sum_ja_j\ sum_ {k=0} ^r {r\ виберіть k} t^kj^ {r-k}\\ [.2см]
&=\ sum_ {k=0} ^r {r\ виберіть k} t^k\ left (\ sum_ {k=0} ja_jj^ {r-k}\ праворуч)\\ [.2см]
&=t^r
\ кінець {вирівняти *}
для будь-якого,\(r=0,\ldots,p\) якщо і тільки якщо дотримуються вищевказані умови.


-
Малюнок 1.9: Графіки часових рядів спостережуваних послідовностей (x t) на лівій панелі та (2 x t) у правій панелі відмінні дані озера Гурон, описані в прикладі 1.3.1.
Спосіб 3 (Диференціювання) Третя можливість видалення термінів дрейфу із заданого часового ряду є різниця. Для цього введіть оператор різниці\(\nabla\) як
\ [
\ nabla x_t=x_t_x_ {t-1} =( 1-B) x_t,\ qquad t\ in T,
\ nonumber\]
де\(B\) позначає оператор зворотного зсуву\(BX_t=X_{t-1}\). \(\nabla\)Повторне застосування визначається інтуїтивно зрозумілим способом:
\ [
\ nabla^2x_T=\ nabla (\ nabla x_t) =\ nabla (x_T-x_ {t-1}) =x_T-2x_ {t-1} +X_ {t-2}
\ nonumber\]
і, рекурсивно, уявлення слідують також для вищих сил\(\nabla\). Припустимо, що оператор різниці застосовується до лінійного тренду\(m_t=b_0+b_1t\), то
\ [\ nabla m_t=m_t_m_ {t-1} =b_0+b_1t-b_0-b_1 (t-1) =b_1
\ nonumber\]
який є константою. Індуктивно це призводить до висновку, що для полінома дрейф ступеня\(p\), а саме,\(\nabla^pm_t=p!b_p\) і\(m_t=\sum_{j=0}^pb_jt^j\), таким чином, постійний. Застосовуючи цю техніку до стохастичного процесу форми (1.3.1) з поліноміальним дрейфом\(m_t\), виходить потім
\ [
\ nabla^px_t=P! b_p+\ nabla^p y_t,\ qquad t\ in T
\ nonumber\]
Це стаціонарний процес із середнім значенням\(p!b_p\). Графіки на малюнку 1.9 містять перше і друге відмінності для даних озера Гурон. У R вони можуть бути отримані з команд
> d1 = diff (озеро)
> d2 = diff (d1)
> пар (mrow = c (1,2))
> plot.ts (d1, xlab= "», ylab= "»)
> plot.ts (d2, xlab = "», ylab= "»)
Наступний приклад показує, що оператор різниці також може бути застосований до випадкової ходьби для створення стаціонарних даних.
Приклад 1.3.3. \((S_t\colon t\in\mathbb{N}_0)\)Дозволяти випадкова прогулянка Приклад 1.2.3. Якщо оператор різниці\(\nabla\) застосовується до цього стохастичного процесу, то
\ [
\ nabla S_t=S_t_s_ {t-1} =z_t,\ qquad t\ in\ mathbb {N}.
\ nonumber\]
Іншими словами, не\(\nabla\) робить нічого іншого, крім відновлення вихідної послідовності білого шуму, яка була використана для побудови випадкової прогулянки.
