Eenheid 4 / 11

Tijdreeksanalyse en ondersteuning voor prognoses

Winst:

  • Tijdreeksconcepten zoals trend, seizoensinvloeden, cyclus en stationariteit begrijpen met behulp van kunstmatige intelligentie en een reeks correct kunnen ontleden
  • Mogelijkheid om ARIMA, ETS en eenvoudige benchmarkmodellen als code in kunstmatige intelligentie te installeren, voorspellingen te doen en deze te evalueren met backtesting
  • In staat zijn de kwetsbaarheid van de voorspelling te begrijpen in het licht van de onzekerheidsmarge, de modellimiet en de structurele breuk, en te volhouden dat de verantwoordelijkheid voor de voorspelling bij de econoom blijft liggen.

De taal van de economie is tijd. Inflatie, groei, werkloosheid, wisselkoersen – het zijn allemaal reeksen die in de loop van de tijd verlopen, en een van de dingen die de econoom het vaakst wordt gevraagd is: "Wat gebeurt er daarna?" is de vraag. In deze unit zullen we kunstmatige intelligentie gebruiken om tijdreeksconcepten te begrijpen, modelcode te bouwen en voorspellingen te doen. Maar laten we het raamwerk vanaf het allereerste begin verduidelijken: een voorspelling is geen profetie, maar een voorwaardelijke voorspelling onder onzekerheid, en de verantwoordelijkheid ligt bij de econoom. AI kan u binnen enkele minuten ARIMA-code schrijven; Maar het is de mens die beslist of die voorspelling redelijk is of niet, en of deze zal instorten als er sprake is van een structurele breuk.

Onderdelen van een tijdreeks

Het helpt om elke economische reeks te bedenken door deze in vier delen op te delen:

  • Trend (tendens). Regie op lange termijn; zoals het groeipad van de economie.
  • Seizoensgebondenheid. Patroon dat zich het hele jaar door regelmatig herhaalt; Het toerisme neemt toe in de zomer, de detailhandel neemt toe in december.
  • Cyclus (conjunctuur). Langer dan het seizoen, onregelmatige ups en downs; periodes van expansie en krimp.
  • Onregelmatig/ruis. Onverklaarbare, willekeurige fluctuaties.

Voordat een reeks kan worden geschat, moeten deze componenten worden ontbonden. Omdat naar de rauwe serie kijken en zeggen "het valt" misleidend kan zijn: misschien zit je gewoon in een seizoensdal.

Er is ook het concept van stationariteit: de statistische eigenschappen (gemiddelde, variantie) van een reeks veranderen niet in de loop van de tijd. De meeste economische reeksen zijn niet stationair (constant groeiend); Veel modellen vereisen differentiatie (de ene periode van de andere aftrekken) of stationarisatie met logaritmen voordat ze worden gebouwd. AI beveelt deze stappen aan, maar weten waarom ze nodig zijn, beschermt u.

Tip: plot en ontleed de reeks altijd voordat u gaat voorspellen. Een ogenschijnlijke structurele breuk (bijvoorbeeld een crisis of een munthervorming) zal zelfs het meest geavanceerde model voor de gek houden. De grafiek is het goedkoopste diagnostische hulpmiddel.

Modellen: van eenvoudig tot complex, maar eerst de benchmark

De gouden regel bij het voorspellen van tijdreeksen: begin altijd met een eenvoudig benchmarkmodel. De eenvoudigste voorspelling is de ‘naïeve voorspelling’: morgen zal gelijk zijn aan vandaag (of seizoensnaïef: deze maand is gelijk aan dezelfde maand vorig jaar). Als een complex model deze naïeve voorspelling niet kan verslaan, is complexiteit zinloos.

Dan veelgebruikte methoden:

  • ETS / Exponentiële afvlakking. Een familie die niveau, trend en seizoensinvloeden verzacht door ze te wegen.
  • ROEPING. Het klassieke model dat autoregressieve (gebaseerd op waarden uit het verleden) en voortschrijdend gemiddelde componenten combineert; seizoensversie SARIMA.
  • Op regressie gebaseerde/verklarende modellen. Een variabele verklaren met andere indicatoren (bijvoorbeeld de vraag naar inkomen en prijs).

AI kan deze allemaal coderen in statsmodels (Python-bibliotheek). Jouw taak is het selecteren en valideren van modellen.

Backtest: test van voorspelling

Het betekent niets als een model ‘mooi aansluit’ bij historische gegevens; Flexibel genoeg om op elk model te passen (dit wordt overfitting genoemd). De echte vraag: hoe goed voorspelt het model perioden die het niet heeft gezien? Om dit te meten doe je aan backtesting: je splitst de data op een datum, traint het model met het vorige deel, laat het het volgende deel voorspellen ‘alsof het de toekomst is’ en vergelijkt het met de werkelijkheid. Met foutmetingen (bijvoorbeeld MAE (gemiddelde absolute fout) of RMSE (root mean square error) kunt u het model vergelijken met de benchmark.

Let op: Train het model niet met de gegevens die u hebt geëvalueerd. Meet het succes van de voorspelling alleen in perioden die niet in de training worden gebruikt. Anders bedrieg je jezelf; Het model blijkt op papier geweldig, maar in werkelijkheid nutteloos.

Onzekerheid: bereik, geen puntschatting

Eén enkel cijfer (“de inflatie zal tegen het einde van het jaar 24 procent bedragen”) straalt valse zekerheid uit. De eerlijke schatting omvat een bereik en waarschijnlijkheid: "in de bandbreedte van 21-27 procent is het middelste scenario 24 procent". De onzekerheid over de prognose wordt uitgedrukt in de betrouwbaarheidsintervallen die door het model worden geproduceerd; maar de werkelijke onzekerheid is groter dan dit, omdat modelaannames ook verkeerd kunnen zijn. Structurele breuk (beleidsverandering, externe schok) is het grootste risico dat het model niet kan zien.

drie minikoffers

Geval 1 — Er niet in slagen de benchmark te verslaan. Een analist liet de AI een complexe SARIMA bouwen voor de maandelijkse detailhandelsverkopen. In de backtest was de gemiddelde absolute fout van het model slechter dan de seizoensnaïeve voorspelling die zei dat "deze maand gelijk is aan dezelfde maand vorig jaar." De analist verliet het complexe model; Hij nam de naïeve gok als basis en voegde er een deskundige correctie aan toe. Eenvoud wint.

Geval 2 — Structurele breuk. Een instelling gebruikte het inflatiemodel dat zij had getraind met gegevens van vóór de wisselkoersschok voor de periode na de schok. Het model onderschatte de inflatie ernstig omdat het uitging van de dynamiek van de afgelopen rustige periode. Les: het model gaat uit van de wereld waarin het is getraind; Wanneer de wereld verandert, stort de voorspelling in. Als de econoom naar de grafiek keek, zou hij de breuk zien.

Geval 3 — Eerlijkheid van het assortiment. Een econoom presenteerde zijn groeivoorspelling voor het einde van het jaar aan het management, niet als een enkel cijfer, maar als een bandbreedte van 3,0 tot 4,2 procent, dit zijn de onderliggende aannames. Aan het eind van het jaar bedroeg de realisatie 3,6 procent; Het zat in de band. Als hij één enkel cijfer had gegeven, zou hij misschien als "verkeerd" zijn bestempeld; bereik en aannames waren zowel eerlijk als behoudend vertrouwen.

Modelkeuzetabel

Status

juiste start

opmerking

Elk giswerk

Naïeve / seizoensgebonden naïeve benchmark

De basis om te verslaan

Trend + seizoensinvloeden, vlak

ETS (exponentiële afvlakking)

Gemakkelijk te installeren en commentaar te geven

Autogecorreleerde reeksen

(S) ARIMA

Heeft stabilisatie nodig

Er is een verklarende variabele

Op regressie gebaseerd

Voorspellers van de toekomst moeten dat ook doen

Vermoeden van structurele breuk

Model + deskundige correctie

Puur model is niet genoeg

Vier kopieerbare sjablonen

1) Parseren en diagnose:

Teken die maandelijkse reeks [reeks] en scheid deze vervolgens in trend/seizoensgebonden/resterende componenten (statistiekmodellen). Controleer of deze stationair is (ADF-test) en leg eventueel uit welke transformatie (log, verschil) u adviseert. Markeer of er een zichtbare structurele breuk in het diagram is.

2) Benchmark + modelvergelijking:

Stel eerst een seizoensnaïeve benchmarkvoorspelling voor deze reeks vast. Stel dan een ETS en een SARIMA in. Vergelijk ze alle drie op basis van MAE en RMSE met een backtest (testen van de afgelopen 12 maanden). Tabelleer de resultaten en vermeld duidelijk welk model de benchmark heeft verslagen.

3) Schattings- en onzekerheidsbereik:

Voorspel de volgende zes perioden voor het model dat ik heb gekozen en geef betrouwbaarheidsintervallen van 80%/95%. Presenteer de schatting als een bereik, niet als een enkel getal. Maak duidelijk dat dit bereik ALLEEN de modelonzekerheid dekt, en niet het risico van structurele breuk/externe schokken.

4) Backtestwaarde:

Interpreteer deze backtestresultaten [tabel]. Verslaat het model daadwerkelijk de benchmark, of is het verschil statistisch onbeduidend? Geef aan in welke perioden uw model de meeste fouten heeft gemaakt en bevraag de mogelijke economische reden hiervoor (crisis, seizoensverandering).

Zwakke prompt/sterke prompt

Zwakke prompt:

Raad deze serie.

Kunstmatige intelligentie bouwt een willekeurig model, voert geen backtest uit en geeft een oneven getal; Je weet niet of het model werkt of niet.

Krachtige prompt:

Ontleed eerst de huidige maandelijkse inflatiereeksen en zoek naar onderbrekingen. Backtest ETS en SARIMA in de afgelopen twaalf maanden tegen een seizoensgebonden naïeve benchmark, vergelijk met MAE. Kies het model dat de benchmark verslaat, geef een voorspelling voor de komende zes maanden en ga uit van een bereik van 80%. Schrijf het risico op structurele breuk als een aparte waarschuwing. Toon de code voor elke stap en samenvattingsnummers die ik handmatig kan verifiëren.

Veel voorkomende fouten

  • In een complex model springen zonder benchmarks op te zetten. Complexiteit staat niet gelijk aan succes.
  • Het model evalueren op basis van de gegevens waarop het heeft getraind. Buitensporige naleving verwarren met succes.
  • Het geven van een enkele puntschatting. Valse zekerheid; bereik en aanname vereist.
  • Het negeren van de structurele breuk. Blindelings de dynamiek uit het verleden meenemen naar de toekomst.
  • Stabilisatie overslaan. Valse relaties en vertekende voorspellingen.
  • De voorspelling presenteren als een profetie. Het verbergen van onzekerheid en verantwoordelijkheid.

Samengevat

Voorspellen van tijdreeksen wordt gedaan door een reeks in zijn componenten te scheiden, deze stationair te maken, een eenvoudige benchmark vast te stellen, de modellen te vergelijken door middel van backtesting en het resultaat eerlijk te presenteren binnen het onzekerheidsbereik. Kunstmatige intelligentie genereert snel de code voor al deze stappen; Maar de verantwoordelijkheid voor de modelselectie, het oordeel over structurele breuken en de prognoses ligt bij de econoom. Een voorspelling is geen profetie, maar een voorwaardelijke en onzekere voorspelling.

Applicatie taak

Kies een maandelijkse economische reeks (bijvoorbeeld de industriële productie-index). Scheid en scan op uitbraken met het eerste sjabloon, backtest ETS/SARIMA tegen de seizoensgebonden naïeve benchmark met het tweede sjabloon, produceer een toekomstige bereikvoorspelling voor zes maanden met het derde sjabloon. Kijk of uw model daadwerkelijk beter is dan de benchmark en markeer eventuele structurele breuken die u ziet.

controlelijst

  • [ ] Ik heb de reeks uitgezet en een diagnose gesteld in termen van trend/seizoensgebondenheid/breuk.
  • [ ] Ik heb indien nodig stationarisatie (log/verschil) toegepast en ik ken de reden.
  • [ ] Ik heb een eenvoudige benchmark opgezet en het complexe model ermee vergeleken.
  • [ ] Ik heb het model alleen geëvalueerd tijdens de perioden dat het niet in training was (backtest).
  • [ ] Ik heb de schatting gepresenteerd met een onzekerheidsbereik, niet met een enkel getal.
  • [ ] Ik noemde het risico op een structurele breuk/externe schok als een aparte waarschuwing.
  • [ ] Ik hield vol dat de verantwoordelijkheid voor de voorspelling en het uiteindelijke oordeel bij mij ligt.