Jednotka 8 / 11

Analýza časových radov: Stacionarita, ARIMA a predpovedanie

zisky:

  • Schopnosť porozumieť pojmom trend, sezónnosť, stacionárnosť a jednotkový koreň a využívať umelú inteligenciu s presnými údajmi na modelovanie a prognózovanie časových radov.
  • Schopnosť interpretovať ARIMA/sezónne modely a predpovedať neistotu (interval spoľahlivosti, zvyšková analýza) a vyhnúť sa falošnej regresii
  • Schopnosť rozlíšiť, že predikcia umelej inteligencie je založená na minulých vzorcoch a že odborný úsudok prichádza do popredia v obdobiach štrukturálnych zlomov a kríz.

Veľa z údajov, ktoré sú chlebom a maslom pre ekonómov a finančných analytikov, sú časové rady: hodnoty tej istej premennej merané v pravidelných intervaloch v priebehu času (mesačná inflácia, denná cena akcií, štvrťročné HDP). Časové rady sa zásadne líšia od bežných prierezových údajov, pretože pozorovania nie sú nezávislé: dnešná hodnota závisí od včerajška. Táto závislosť je zároveň príležitosťou (môžeme predpovedať budúcnosť) aj nebezpečenstvom (bežná regresia tu ľahko zavádza). V tejto časti uvidíme, ako umelá inteligencia (AI) zrýchľuje modelovanie a predpovedanie časových radov, ale prečo si najnebezpečnejšia pasca – falošná regresia – vyžaduje pozornosť.

Základné pojmy

Časový rad vo všeobecnosti obsahuje tri zložky: trend (dlhodobý vzostupný/klesajúci trend), sezónnosť (pravidelný model, ktorý sa opakuje počas roka, napr. zvýšený cestovný ruch v lete) a cyklus/hluk (zvyšková volatilita). Pred modelovaním je najdôležitejšou vlastnosťou série stacionárnosť.

Stacionárny rad je rad, ktorého štatistické vlastnosti (priemer, rozptyl) zostávajú v čase konštantné. Nestacionárny rad obsahuje trend, jeho rozptyl rastie alebo má jednotkový koreň. Jednotkový koreň je štruktúra, v ktorej si rad permanentne „pamätá“ šoky a nevracia sa k svojmu priemeru; Takáto séria sa správa ako náhodná prechádzka. Prečo je to dôležité? Pretože regresia medzi dvoma nestacionárnymi sériami môže produkovať vysoké R-kvadratické a významné koeficienty, aj keď v skutočnosti neexistuje žiadny vzťah – nazýva sa to falošná regresia. Iba spoločný trend spôsobuje, že tieto dve série sú „príbuzné“.

Upozornenie: Dve rastúce série (napr. populácia jednej krajiny a predaj zmrzliny inej krajiny) môžu byť vo vysokej korelácii; pretože obe sa časom zvyšujú. Toto nie je vzťah, ale ilúzia spoločného trendu. Pred spustením regresie v časovom rade nezabudnite skontrolovať stacionaritu.

Postupný pracovný postup časových radov

1. Vizualizujte. Nakreslite sériu: existuje trend, sezónnosť, mení sa rozptyl v čase, existuje štrukturálny zlom (náhla zmena úrovne)?

2. Otestujte stacionárnosť. Test ADF (Augmented Dickey-Fuller) a koreňová/stacionarita testovacej jednotky KPSS. Tieto dve sa navzájom dopĺňajú: v ADF je nulová hypotéza „existuje jednotkový koreň“, v KPSS je „stacionárna“. Bezpečnejšie je použiť obe spolu.

3. Stagnovať. Ak je séria nestacionárna, je zvyčajne diferencovaná (rozdiel po sebe nasledujúcich pozorovaní; tým sa odstráni trend). Pri jednorazovom odlíšení sa séria „integrovaného prvého rádu“ (I(1)) ustáli. Log transformácia tiež pomáha, ak rozptyl rastie.

4. Zostavte model. Najbežnejším rámcom je ARIMA (AutoRegressive Integrated Moving Average): Kombinuje komponenty AR (závislosť série od vlastných minulých hodnôt), I (stupeň diferencovania), MA (efekt minulých chýb). Ak je sezónnosť, používa sa SARIMA. AI generuje kód pre nástroje automatického výberu, ako je auto.arima; Ale neprijímajte slepo automatický výber.

5. Skontrolujte zvyšky. Zvyšky dobrého modelu by mali byť biely šum: žiadny vzor, ​​žiadna autokorelácia. Test Ljung-Box to testuje. Ak vo zvyškoch stále existuje vzor, ​​model je neúplný.

6. Predvídajte a prejavujte neistotu. Predpoveď nie je jednoriadková; vždy uvedené s intervalom spoľahlivosti/odhadu. Rozsah sa rozširuje s predlžujúcim sa horizontom – je to znak poctivosti, nie chyby.

Kointegrácia: reálny vzťah s nestacionárnymi sériami

Dve nestacionárne série nedávajú vždy falošné vzťahy. Ak medzi nimi existuje skutočná dlhodobá rovnováha (pohybujú sa spolu), nazýva sa to kointegrácia a možno ju modelovať pomocou modelu korekcie chýb (ECM). Riešením teda nie je „odlišnosť a zahodenie informácií“; je najprv otestovať kointegráciu. Toto rozlíšenie odlišuje falošnú regresiu od skutočnej dlhodobej korelácie a je teoretickou úvahou, o ktorej AI nemôže rozhodnúť sama.

porovnávacia tabuľka

Stav

symptóm

správny prístup

stacionárne série

Konštantný priemer/rozptyl

Priame OBLÚKOVANIE

S trendom (koreň jednotky)

Neustále stúpanie, ADF nemá zmysel

Rozdiel, potom model

Dve nestacionárne série

Vysoké R² môže byť falošné

Po prvé, kointegračný test

sezónne

Ročný opakujúci sa vzor

SARIMA / sezónny rozdiel

štrukturálny zlom

Náhla zmena úrovne/sklonu

Zlomový test, znalecký posudok

Štyri kopírovateľné výzvy

1. Diagnóza stacionárnosti:

Vaša úloha: asistent časových radov. Chcem kód R, údaje nezdieľam. 'series' je mesačný časový rad (objekt ts). Úloha: (1) nakreslite sériu a grafy autokorelácie (ACF/PACF), (2) aplikujte testy ADF a KPSS, (3) vysvetlite, ako spoločne interpretovať výsledky. Urobím rozhodnutie prijať rozdiel; Predložíte diagnózu.

2. Stavba modelu (pod dohľadom):

Moja séria sa na prvý rozdiel javí ako nehybná. Navrhnite model s auto.arima, ale: (1) vysvetlite vybrané (p, d, q) objednávky a PREČO boli zvolené, (2) pridajte kód na testovanie, či sú zvyšky bielym šumom pomocou Ljung-Box, (3) pripomeňte mi, aby som slepo neprijímal automatický výber.

3. Falošné varovanie o regresii:

Chcem nastaviť regresiu medzi mojimi dvoma časovými radmi (X, Y), ale obe sú detrendované. Napíšte kód pracovného toku, ktorý kontroluje riziko falošnej regresie: najprv otestujte stacionárnosť oboch, potom použite kointegračný test (Engle-Granger alebo Johansen). Skôr ako spustím lm() priamo, zastavte ma a vysvetlite, prečo je to nebezpečné.

4. Predpoveď a neistota:

Napíšte kód, ktorý vytvorí 12-mesačnú predpoveď s modelom ARIMA, ktorý som vytvoril; Nakreslite odhad s jeho 80 % a 95 % intervalom spoľahlivosti. Pod graf pridajte poznámku, že predpoveď je založená na minulých vzorcoch a môže sa stať neplatnou v prípade štrukturálneho zlomu/krízy.

Slabá výzva / Silná výzva

Slabá výzva:

Nájdite vzťah týchto dvoch sérií s regresiou a predpovedajte budúci rok.

Toto tvrdenie je pozvánkou do falošnej regresnej pasce: ak je regresia nastavená bez kontroly stacionárnosti, objaví sa vysoký R-štvorec, ale nezmyselný „vzťah“ a neopodstatnený odhad.

Výkonná výzva:

Vaša úloha: starostlivý asistent časových radov. Postupujte krok za krokom: (1) otestujte stacionárnosť sérií aj správy, (2) ak nie sú stacionárne, NEVYKONÁVAJTE priamu regresiu, najskôr otestujte kointegráciu, (3) ak vytvárate predpoveď, nezabudnite pridať interval spoľahlivosti a napíšte varovanie pred štrukturálnym zlomom. Nechajte rozhodnutie na mne na každom kroku; automatický postup.

Rozdiel: silný dopyt vyžaduje stacionárnosť a kointegráciu pred regresiou, čo predstavuje odhad s neistotou.

tri mini prípady

Prípad 1 – Falošná regresia. Analytik zistil R²=0,91, p<0,001 medzi dvoma stúpajúcimi radmi (obrat jedného sektora a spotreba energie inej krajiny) a napísal "silný vzťah". Keď jeho konzultant požiadal o test stacionárnosti, bolo vidieť, že obaja mali jednotkové korene, a keď sa vzali ich rozdiely, vzťah (r = 0,04) úplne zmizol. Vysoký štvorec R bol len ilúziou spoločného trendu. Poučenie: regresia časových radov je nespoľahlivá bez testovania stacionarity.

Prípad 2 – Slepá dôvera v automatický model. Študent použil model vybraný auto.arima bez toho, aby ho preskúmal; vo svojej analýze už nezaznamenal výraznú sezónnosť. Modelka systematicky podceňovala letné mesiace. Ljung-Boxov test ukázal autokoreláciu v rezíduách. Správny spôsob: bolo pridať sezónnu zložku (SARIMA). Ponaučenie: automatický výber je začiatok, nie posledné slovo; Zvyšky sa musia kontrolovať.

Prípad 3 – Predpokladaný kolaps pri štrukturálnom zlome. Jeden model predpovedal dopyt v roku 2020 s údajmi z roku 2019; interval spoľahlivosti bol úzky, odhad bol spoľahlivý. Veľký šok (pandémia) v roku 2020 túto predpoveď úplne zmaril, pretože model poznal iba minulý vzor. Ponaučenie: predpovedanie časových radov predpokladá, že minulosť bude podobná budúcnosti; V čase krízy/zlomu prichádza do popredia odborný úsudok.

Časté chyby

  • Stanovenie regresie bez kontroly stacionárnosti. Falošná regresia vytvára vysoký R-kvadrát, ale nevýznamný vzťah; Najskôr aplikujte ADF/KPSS.
  • Rozlišovanie a preskakovanie kointegrácie. Ak existuje skutočný dlhodobý vzťah, slepé preberanie rozdielu zahodí informácie; Najprv otestujte kointegráciu.
  • Používanie automatického modelu bez jeho kontroly. auto.arima je dobrý začiatok, ale nespoľahlivý bez kontroly zvyškov (Ljung-Box).
  • Prezentácia odhadu ako jeden riadok. Odhad bez intervalu spoľahlivosti vytvára falošnú presnosť; Vždy prejavujte neistotu.
  • Ignorovanie štrukturálneho zlomu. Kríza/zmena režimu narúša predchádzajúci vzor; Modelka to nemôže vedieť, je potrebný odborný posudok.
Tip: Pred napísaním zistenia časového radu sa znova pozrite na surový graf radu. Jasný trend alebo zlom, ktorý vidíte na vlastné oči, je najsilnejším varovaním, na ktoré by vás žiaden test nemal prinútiť zabudnúť.

V súhrne

Pri analýze časových radov nie sú pozorovania nezávislé; To dáva predikčnú silu a vytvára úskalia, ako je falošná regresia. Pred modelovaním otestujte stacionárnosť (ADF/KPSS); namiesto priameho stanovenia regresie medzi nestacionárnymi sériami testujte kointegráciu; Skontrolujte zvyšky modelu ARIMA/SARIMA, kým sa neobjaví biely šum; Odhad vždy prezentujte s intervalom spoľahlivosti. AI generuje kód pre všetky tieto kroky, ale odborník riadi automatický výber modelu, rozhodnutie o kointegrácii a interpretáciu štrukturálnych zlomov. Predpoveď je založená na minulosti; V čase krízy má posledné slovo ľudský úsudok.

Aplikačná úloha

Vyberte si časový rad (mesačný alebo štvrťročný). Pred AI si vyžiadajte a spustite diagnostiku stacionárnosti (graf, ACF/PACF, ADF, KPSS) a klasifikujte sériu ako stacionárnu/nestacionárnu. V prípade potreby rozlíšte, nastavte model ARIMA/SARIMA a skontrolujte zvyšky pomocou Ljung-Boxu. Vytvorte predpoveď na 6-12 období a vykreslite ju s intervalom spoľahlivosti. Nakoniec v odseku zvážte, ako môže byť vaša predpoveď nesprávna, ak by došlo k štrukturálnemu zlomu vo vašich údajoch.

kontrolný zoznam

  • [ ] Nakreslil som sériu a vizuálne som preskúmal trendy, sezónnosť a prestávky.
  • [ ] Stacionaritu som testoval s ADF a KPSS; Dostal som požadovaný rozdiel.
  • [ ] Vyhol som sa priamej regresii a testoval som kointegráciu medzi nestacionárnymi sériami.
  • [ ] Skontroloval som zvyšky modelu (Ljung-Box) a potvrdil som, že ide o biely šum.
  • [ ] Uviedol som odhad s intervalom spoľahlivosti; Nedal som to ako jeden riadok.
  • [ ] Všimol som si limity predikcie v prípade štrukturálneho zlomu/krízy.