Аналіз сингулярного спектру

Матеріал з testwiki
Версія від 12:56, 25 червня 2023, створена imported>BogdanShevchenko (оформлення)
(різн.) ← Попередня версія | Поточна версія (різн.) | Новіша версія → (різн.)
Перейти до навігації Перейти до пошуку
Розділення часового ряду на тренд, осцилюючі компоненти і шум

Аналіз сингулярного спектру (Шаблон:Lang-en, SSA), також «Гусениця» — метод аналізу часових рядів, що базується на перетворенні одновимірного часового ряду на багатовимірний і подальший його сингулярний розклад. При правильному використанні метод дозволяє розділити часовий ряд на тренд, періодичні компоненти і випадковий шум.

Опис базового методу

У найбільш розповсюдженому варіанті алгоритму, вхідними даними є одномірний часовий ряд FN, де N — довжина ряду. SSA складається з чотирьох етапів: 1. Перетворення одновимірних даних на багатовимірні, або вкладання (Шаблон:Lang-en). Оберемо число 2L<N, ширину вікнаШаблон:Sfn. Нехай K=NL+1. Побудуємо матрицю розміру L×K, наступним чином: перший стовпчик складають елементи ряду з f1 по fL. Другий — f2 по fL+1, і так до К-того стовпця, у який входять елементи від fK по fNШаблон:Sfn.

𝐗=[f1f2f3fKf2f3f4fK+1f3f4f5fK+2fLfL+1fL+2fN],

Матриця 𝐗 називається траєкторною матрицею. Усі елементи, що лежать на діагоналях, паралельних побічній є рівними, тобто така матриця є ганкелевою.

2. Сингулярний розклад траєкторної матриці. Нехай 𝐒=𝐗𝐗T, матриця розмірності L×L. Тоді, позначимо власні числа матриці 𝐒 як λ1,λ2,...,λL, а власні вектори як U1,U2,...,UL. Якщо d — це кількість ненульових власних чисел, то можна визначити d факторних векторів

Vi=𝐗TUiλi

Тоді траєкторну матрицю можна представити у вигляді

𝐗=𝐗1+𝐗2++𝐗d=i=1dλiUiViT

Сукупність деякого власного числа λi а також власного і факторного векторів що йому відповідають, називається власною трійкою (Шаблон:Lang-en)Шаблон:Sfn

3. Групування. Усі власні трійки розбиваються на m груп що не перетинаються, які позначаються як I1,I2,...,Im. Матриці що входять до кожної групи складаються: нехай I це деяка група, в яку входять p різних власних трійок, тоді

𝐗I=𝐗i1+𝐗i2+...+𝐗ip

Групування є найбільш нетривіальною частиною метода. Критерієм правильності його виконання є те, що результуючи матриці, що отримуються сумацією всіх матриць всередині групи, є близькими до ганкелевих, тобто, значення на їх діагоналях, паралельних побіжним є рівними або хоча б близькими. Складові часового ряда, які можливо виділити таким чином, називаються розділимимиШаблон:Sfn.

4. Усереднення, або ганкелізація. Оскільки рідко можливо створити справді ганкелеві матриці у попередньому етапі, у кожній з матриць 𝐗I, всі значення, що лежать на діагоналях, паралельних побічній, усереднюютьсяШаблон:Sfn:

x1,1~=x1,1;
x1,2~=x2,1~=x1,2+x2,12;
x1,3~=x2,2~=x3,1~=x1,3+x2,2+x3,13...

Отримана в результаті усереднення матриця буде ганкелевою, як і оригінальна траєкторна матриця 𝐗. Кожній з цих матриць можна поставити у відповідність деякий часовий ряд FN(i)~ (за тим самим принципом, як з часового ряду була отримана траєкторна матриця). Отримані m часових рядів у сумі будуть давати оригінальний часовий ряд:

FN=FN(1)~+FN(2)~+...+FN(m)~

Компоненти, які є результатом роботи алгоритму можуть бути розподілені на три типи: тренд (нестаціонарна частина серії, монотонно зростаюча або спадаюча компонента, іноді з окремими піками — загалом, межа між трендом і періодичними компонентами з дуже довгим періодом є розмитою), періодичні компоненти (такі компоненти не обов'язково є гармонійними коливаннями, і можуть мати довільну форму, а іноді — амплітудну або частотну модуляцію, тобто, їх розмах або період може повільно збільшуватися або зменшуватися з часом, в останньому випадку такі компоненти називають квазіперіодичними), і шум (аперіодичні, хаотичні, швидкозмінні компоненти, що мають близьку до нуля коваріацію)Шаблон:Sfn.

Перед використанням методу, для коректного порівняння різних компонент, дані зазвичай Шаблон:Не перекладено — віднімають середнє значення і ділять на середньоквадратичне відхиленняШаблон:Sfn.

Принцип роботи

Метод є ідейно близьким до методу головних компонент: у просторі траєкторних матриць він шукає ортогональний базис, за яким можна розкласти матрицю на незалежні компоненти. Сингулярний розклад дозволяє знайти такий базис, і крім того, має важливу особливість: серед всіх матриць рангу r (де r є меншим ніж ранг траєкторної матриці), матриця, що дорівнює сумі перших r матриць з сингулярного розкладу буде найближчою до оригінальної матриці (в сенсі, норма Фробеніуса різниць цих матриць буде найменшою)Шаблон:Sfn.

Розділюваність компонент

Розділюваність (Шаблон:Lang-en) є дуже важливою концепцією для розуміння ефективності методу. Тільки якщо компоненти ряду є розділюваними, SSA зможе їх коректно виділити. Існує два різних типи розділюваності, слабка і сильна. Нехай є ряд FN що складається з двох компонент, FN(1) і FN(2). Тоді ці компонентами називаються слабко розділюваними, якщо усі підряди довжини L першого ряду є ортогональними усім підрядам довжини L другого ряду, і те саме щодо підрядів довжини K (тобто NL1). Або, що те саме, кожен з стовпців траєкторної матриці першого ряду є ортогональним кожному стовпцю другого ряду (і те саме щодо рядків траєкторних матриць).

Додатковою умовою сильної розділюваності є те, що множини власних значень матриць 𝐒𝟏 і 𝐒𝟐 не перетинаються.

Якщо усі власні значення траєкторної матриці є унікальними (тобто, не повторюються), то визначення сильної і слабкої розділюваності є однаковимиШаблон:Sfn.

Існує необхідна, але не достатня умова розділюваності, яка називається w-ортогональність. Нехай L*=min(L,K),K*=max(L,K). Визначимо ваговий векторШаблон:Sfn

wi={i,if 1i<L*L*,if L*<iK*Ni,if K*<i

Якщо представити w як ряд, він буде мати трапецієвидну форму. Також, визначимо зважений добуток часових рядів як:

(F(1),F(2))w=i=1Nwifi(1)fi(2)

Ряди F(1) і F(2) називаються w-ортогональними, якщо (F(1),F(2))w=0.

Хоча w-ортогональність не є достатньою умовою для роздільності, вона є необхідною — якщо два ряди не w-ортогональні, тоді вони і не розділювані. При цьому, ця умова є обчислювано простою, тому вона досить широко застосовується.

Два гармонічні періодичні ряди є розділюваними, якщо їх періоди у ціле число разів менші за розмірності траєкторної матриці: T1=L/m1=K/p1;T2=L/m2=K/p2.

Зазвичай повна розділюваність є недосяжною, тому на практиці від даних очікується наближена розділюваність. Існує кілька метрик, якими можливо її виміряти:

  • Максимальна кореляція. Ортогональність двох векторів можна розуміти як нульову кореляцію між їх компонентами. Тому максимальне абсолютне значення кореляції серед усіх пар підрядів довжини L i K (де один член пари взятий з першого ряду, а другий — з другого) є мірою неортогональності (чим ближча вона до нуля, тим краще).
  • Зважена кореляція (Шаблон:Lang-en), яка є оцінкою близькості до w-ортогональності, і визначається як:
ρ12(w)=(F(1),F(2))w(F(1),F(1))w*(F(2),F(2))w

Чим ближчий він до нуля, тим більш близькими до ортогональності є два ряди.

Вибір параметрів моделі

Загалом, базовий SSA має лише два параметри. Перший — числовий, довжина вікна. Другий — методологічний, спосіб групування.

Довжину вікна зазвичай обирають достатньо великою, оскільки вона має бути більшою, ніж можливі періоди коливання компонентів ряду, проте не більшою ніж N/2. Нормальною практикою є L>N/4Шаблон:Sfn. Якщо ми очікуємо, що ряд містить компоненту деякого періоду, то є сенс взяти L кратним цьому періоду[1].

Пошук методу групування є більш широкою задачею. Існує кілька емпіричних вказівок на те, як групувати компоненти:

  • На діаграмі власних значень, (log(λi),i) компоненти що відносяться до шуму виглядають як довгий і плавно спадаючий хвіст. Такі компоненти зазвичай достатньо сильно w-корельовані між собоюШаблон:Sfn.
  • Періодичним компонентам часто відповідають два близьких власних значення, або одне значення, якщо це пилкоподібна компонента (кожне наступне значення змінює знак відносно попереднього)
  • Найбільшим власним значенням відповідають найбільш значущі компоненти — зазвичай це тренд.

Примітки

Шаблон:Reflist

Література