ARIMA(p,d,q) voorspellende vergelijking: ARIMA-modellen zijn in theorie de belangrijkste algemene klasse van modellen voor het voorspellen van een statistiek die “stationair” kan worden gemaakt door middel van differentiatie (indien nodig), misschien in combinatie met niet-lineaire transformaties zoals houtkap of deflatie (indien nodig). Een variate die een statistiek is, is stationair als zijn statistische eigenschappen allemaal constant zijn in de tijd. Een stationaire reeks heeft geen trend, zijn variaties rond zijn gemiddelde hebben een continue amplitude, en hij wiebelt op een consistente manier, d.w.z. zijn korte termijn willekeurige tijdspatronen zien er altijd een equivalent uit tijdens een statistische zin. De laatste voorwaarde betekent dat zijn autocorrelaties (correlaties met zijn eigen voorafgaande afwijkingen van het gemiddelde) constant blijven in de tijd, of gelijkwaardig, dat zijn vermogensspectrum constant blijft in de tijd. Een variate van dit type wordt vaak (zoals gebruikelijk) gezien als een mengsel van signaal en ruis, en daarom kan het signaal (als het zichtbaar is) een patroon van snelle of langzame gemiddelde terugkeer zijn, of sinusoïdale oscillatie, of snelle afwisseling in teken, en het kan zelfs een seizoensgebonden component hebben. Een ARIMA-model wordt vaak gezien als een “filter” dat het signaal probeert te scheiden van de ruis, en daarom wordt het signaal dan geëxtrapoleerd naar de langere termijn om voorspellingen te krijgen.

De ARIMA voorspellingsvergelijking voor een stationaire statistiek kan een lineaire (d.w.z. regressie-achtige) vergelijking zijn waarbij de voorspellers vertragingen van de variabele en/of vertragingen van de voorspellingsfouten bevatten. Dat wil zeggen:

Voorspelde waarde van Y = een doorlopende en/of een gewogen som van 1 of nieuwere waarden van Y en/of een gewogen som van 1 of nieuwere waarden van de fouten.

Als de voorspellers alleen bestaan uit vertraagde waarden van Y, is het een zuiver autoregressief (“zelfregressief”) model, wat gewoon een speciaal geval is van een regressiemodel en dat kan worden uitgerust met standaardregressiesoftware. een eerste-ordeautoregressief (“AR(1)”) model voor Y kan bijvoorbeeld een regressiemodel zijn waarbij de experimentele variabele gewoon Y vertraagd is met één periode (LAG(Y,1) in Statgraphics of Y_LAG1 in RegressIt). Als een aantal van de voorspellers achterblijft bij de fouten, is een ARIMA-model het NIET een regressiemodel, omdat er geen reden is om “fout van de laatste periode” als onafhankelijke variabele te specificeren: de fouten moeten per periode worden berekend wanneer het model in de informatie wordt opgenomen. Technisch gezien is het met het gebruik van vertraagde fouten als voorspellers zaak dat de voorspellingen van het model geen lineaire functies van de coëfficiënten zijn, al zijn het wel lineaire functies van de gegevens uit het verleden. Dus, coëfficiënten in ARIMA-modellen die vertraagde fouten bevatten moeten worden geschat met niet-lineaire optimalisatiemethoden (“hill-climbing”) in plaats van door alleen maar een systeem van vergelijkingen op te lossen.

Het acroniem ARIMA staat voor Auto-Regressief Geïntegreerd Bewegend Gemiddelde. Lags van de stationaire reeksen binnen de voorspellingsvergelijking worden “autoregressieve” termen genoemd, vertragingen van de voorspellingsfouten worden “voortschrijdend gemiddelde” termen genoemd, en een statistiek die moet worden gedifferentieerd om stationair te worden gemaakt wordt geclaimd een “geïntegreerde” versie van een stationaire reeks te zijn. Random-walk en random-trend modellen, autoregressieve modellen en exponentiële afvlakkingsmodellen zijn allemaal bijzondere gevallen van ARIMA-modellen.

Een niet-seizoensgebonden ARIMA-model wordt beoordeeld als een “ARIMA(p,d,q)” model, waarbij:

p is dat het aantal autoregressieve termen,

d is dat het aantal niet-seizoensgebonden verschillen dat nodig is voor stationariteit, en

q is dat het aantal vertraagde voorspellingsfouten binnen de voorspellingsvergelijking.

De voorspellingsvergelijking wordt als volgt gemaakt. Laat y eerst het d-de verschil van Y aanduiden, wat betekent:

Als d=0: yt = Yt

Als d=1: yt = Yt – Yt-1

Indien d=2: yt = (Yt – Yt-1) – (Yt-1 – Yt-2) = Yt – 2Yt-1 + Yt-2

Merk op dat het tweede verschil van Y (het geval d=2) niet het verschil is van 2 perioden geleden. Het is eerder het eerste verschil van het eerste, dat is de discrete analogie van een tweede afgeleide, d.w.z. de lokale versnelling van de serie in plaats van de lokale trend.

In termen van y is de algemene prognosevergelijking:

ŷt = μ + ϕ1 yt-1 +…+ ϕp yt-p – θ1et-1 -…- θqet-q

Hier worden de voortschrijdende gemiddelde parameters (θ’s) gedefinieerd, zodat hun tekens binnen de vergelijking negatief zijn, volgens de conventie die door Box en Jenkins is ingevoerd. Sommige auteurs en software (inclusief de programmeertaal R) definiëren ze zodat ze in plaats daarvan plustekens nodig hebben. Wanneer de werkelijke getallen in de vergelijking worden geplugd, is er geen dubbelzinnigheid, maar het is belangrijk om te begrijpen welke conventie uw software gebruikt als u eenmaal de uitvoer leest. Vaak worden de parameters daar aangeduid met AR(1), AR(2), …, en MA(1), MA(2), … enz.

Om het aanvaardbare ARIMA-model voor Y te identificeren, begint u met het bepalen van de volgorde van de differentiatie (d) om de reeks te stationariseren en de bruto-eigenschappen van de seizoensgebondenheid weg te nemen, misschien in combinatie met een variantiestabiliserende transformatie zoals logging of deflatie. Als je nu stopt en voorspelt dat de gedifferentieerde reeks constant is, heb je slechts een stochastisch proces of een willekeurig trendmodel gepast. Echter, de stationaire reeksen zouden autocorrecte fouten moeten hebben, wat suggereert dat een aantal AR-termen (p ≥ 1) en/of een aantal MA-termen (q ≥ 1) ook nodig zijn binnen de prognosevergelijking.

Het proces van het bepalen van de waarden van p, d, en q die het beste zijn voor een bepaalde statistiek zullen worden besproken in latere delen van de noten (waarvan de links op het hoogste punt van deze pagina staan), maar een voorbeeld van een aantal van de soorten niet-seizoensgebonden ARIMA-modellen die men vaak tegenkomt, wordt hieronder gegeven.

ARIMA(1,0,0) = eerste-orde autoregressief model: als de serie stilstaat en autocorrelatie heeft, wordt deze misschien wel vaak voorspeld als een veelvoud van zijn eigen eerdere waarde, plus een doorlopend . De voorspellingsvergelijking in dit geval is

Ŷt = μ + ϕ1Yt-1

…wat Y is regressie op zichzelf vertraagd door een periode. dit is vaak een “ARIMA(1,0,0)+constante” model. Als het gemiddelde van Y nul is, dan zou de constante term niet worden meegenomen.

Als de hellingscoëfficiënt ϕ1 positief is en minder dan 1 in magnitude (het moet maar 1 in magnitude zijn als Y stilstaat), dan beschrijft het model het gemiddelde-reverteringsgedrag waarbij de waarde van de volgende periode moet worden voorspeld op ϕ1 maal zo ver van het gemiddelde als de waarde van deze periode. Als ϕ1 negatief is, voorspelt het mean-reverting gedrag met afwisseling van tekens, d.w.z. het voorspelt ook dat Y onder het gemiddelde van de volgende periode zal zijn als het boven het gemiddelde van dit tijdperk is.

In een tweede-orde autoregressief model (ARIMA(2,0,0)), zou er een Yt-2 term op de juiste ook, en zo verder. tellen op de tekens en de grootheden van de coëfficiënten, zou een ARIMA(2,0,0) model een systeem kunnen beschrijven waarvan de gemiddelde terugkeer plaatsvindt tijdens een sinusoïdaal oscillerende manier, net als de beweging van een massa op een veer die is onderworpen aan willekeurige schokken.

ARIMA(0,1,0) = willekeurig lopen: Als de serie Y niet stilstaat, is het enige mogelijke model een stochastisch procesmodel, dat kan worden beschouwd als een beperkend geval van een AR(1)-model waarbij de autoregressieve coëfficiënt voldoende is voor 1, d.w.z. een serie met een oneindig langzame gemiddelde terugval. De voorspellingsvergelijking voor dit model wordt vaak als volgt geschreven:

Ŷt – Yt-1 = μ

of gelijkwaardig

Ŷt = μ + Yt-1

…waarbij de constante term is dat de gemiddelde periode tot periode verandert (d.w.z. de lange termijn drift) in Y. Dit model kan worden gemonteerd als een no-intercept regressiemodel waarbij het primaire verschil van Y is dat de variabele . Aangezien het (alleen) een niet-seizoensgebonden verschil en een doorlopende term omvat, wordt het ingedeeld als een “ARIMA(0,1,0)-model met constante. Het “random-walk-withithift” model zou een ARIMA(0,1,0) model zonder constante zijn.

ARIMA(1,1,0) = differentieel eerste-orde autoregressief model: Als de fouten van een stochastisch procesmodel autocorgerelateerd zijn, dan wordt de zaak vaak opgelost door één vertraging van de variabele toe te voegen aan de voorspellingsvergelijking – d.w.z. door het primaire verschil van Y op zichzelf met één periode te laten vertragen:

Ŷt – Yt-1 = μ + ϕ1(Yt-1 – Yt-2)

Ŷt – Yt-1 = μ

die kan worden herschikt naar

Ŷt = μ + Yt-1 + ϕ1 (Yt-1 – Yt-2)

Dit is een autoregressief model van de eerste orde met één orde van niet-seizoensgebonden verschillen en een doorlopend termijnmodel, d.w.z. een ARIMA(1,1,0) model.

ARIMA(0,1,1) zonder constante = eenvoudige exponentiële afvlakking: Een andere strategie voor het corrigeren van autocorreële fouten tijdens een stochastisch procesmodel wordt meestal aanbevolen door het eenvoudige exponentiële afvlakkingsmodel. Bedenk dat het stochastische procesmodel voor enkele niet-stationaire statistieken (bijv. die welke luidruchtige fluctuaties vertonen rond een langzaam variërend gemiddelde) ook niet presteert als een voortschrijdend gemiddelde van vroegere waarden. Met andere woorden, in plaats van de belangrijkste recente waarneming te nemen omdat de voorspelling van de volgende waarneming beter een gemiddelde van de vorige waarnemingen kan worden gebruikt om de ruis te filteren en het lokale gemiddelde nauwkeuriger in te schatten. het rechttoe rechtaan exponentiële afvlakkingsmodel gebruikt een exponentieel gewogen voortschrijdend gemiddelde van vroegere waarden om dit effect te realiseren. De voorspellingsvergelijking voor het rechttoe rechtaan exponentiële afvlakkingsmodel wordt vaak geschreven tijdens een aantal wiskundig gelijkwaardige vormen, waaronder de zogenaamde “foutcorrectie”-vorm, waarbij de vorige voorspelling wordt aangepast in de richting van de gemaakte fout:

Ŷt = Ŷt-1 + αet-1

Omdat et-1 = Yt-1 – Ŷt-1 per definitie wordt herschreven als:

Ŷt = Yt-1 – (1-α)et-1

= Yt-1 – θ1et-1

dat is een ARIMA(0,1,1)-zonder constante voorspellingsvergelijking met θ1 = 1-α. Dit suggereert dat je eenvoudigweg een gemakkelijke exponentiële afvlakking kunt toepassen door het te specificeren als een ARIMA(0,1,1)-model zonder constante, en daarom komt de geschatte MA(1)-coëfficiënt overeen met 1-minus-alpha binnen de SES-formule. Bedenk dat binnen het SES-model de typische leeftijd van de informatie binnen de 1-periode-ahead-prognoses 1/α is, wat betekent dat ze de neiging hebben om met ongeveer 1/α-periodes achter te blijven bij trends of omslagpunten. Hieruit volgt dat de typische leeftijd van de info binnen de voorspellingen van een ARIMA(0,1,1)- zonder constant model 1/(1-θ1) is. Dus, bijvoorbeeld, als θ1 = 0,8, is de typische leeftijd 5. Naarmate θ1 dichterbij 1 komt, wordt het ARIMA(0,1,1)-zonder-constante model een zeer lang voortschrijdend gemiddelde, en naarmate θ1 dichterbij 0 komt wordt het een random-walk-withithont-drift model.

Wat is het eenvoudigst te corrigeren voor autocorrelatie: het toevoegen van AR-termen of het toevoegen van MA-termen? Binnen de vorige twee hierboven besproken modellen werd de kwestie van autocorrectiefouten tijdens een stochastisch procesmodel op twee verschillende manieren opgelost: door een vertraagde waarde van de differentiële reeks toe te voegen aan de vergelijking of door een vertraagde waarde van de prognosefout toe te voegen. Welke benadering is het beste? Een vuistregel voor dit voorbeeld, die naderhand kan worden besproken, is dat positieve autocorrelatie het best kan worden behandeld door een AR-term aan het model toe te voegen en negatieve autocorrelatie het best kan worden behandeld door een MA-term toe te voegen. In de bedrijfs- en economische statistiek komt negatieve autocorrelatie vaak voor als een artefact van differentiatie. (In het algemeen vermindert differencering de positieve autocorrelatie en zou zelfs een overgang van positieve naar negatieve autocorrelatie moeten veroorzaken). Het ARIMA(0,1,1)-model, waarbij differencering plaatsvindt temidden van een MA-term, wordt dus vaker gebruikt dan een ARIMA(1,1,0)-model.

ARIMA(0,1,1) met constante = eenvoudige exponentiële afvlakking met groei: Door het SES-model als ARIMA-model te implementeren, krijg je echt enige flexibiliteit. Ten eerste mag de geschatte MA(1)-coëfficiënt negatief zijn: dit komt overeen met een afvlakkingsfactor die groter is dan 1 in een SES-model, wat normaal gesproken niet is toegestaan volgens de procedure voor het aanpassen van het SES-model. Ten tweede hebt u de keuze om een doorlopende term in het ARIMA-model op te nemen als u dat wilt, zodat u een gemiddelde niet-nul-trend kunt inschatten. Het ARIMA(0,1,1) model met constante heeft de voorspellingsvergelijking:

Ŷt = μ + Yt-1 – θ1et-1

De één-periode-voorspellingen van dit model lijken kwalitatief bijna op die van het SES-model, behalve dat het traject van de langetermijnverwachtingen meestal een schuine lijn is (waarvan de helling voldoende is voor mu) in plaats van een horizontale lijn.

ARIMA(0,2,1) of (0,2,2) zonder constante = lineaire exponentiële afvlakking: Lineaire exponentiële afvlakkingsmodellen zijn ARIMA-modellen die twee niet-seizoensgebonden verschillen in combinatie met MA-termen gebruiken. Het tweede verschil van een serie Y is niet simpelweg het verschil tussen Y en zichzelf met twee perioden, maar eerder het primaire verschil van het primaire verschil – dus de verandering in de verandering van Y in periode t. Het tweede verschil van Y in periode t is dus voldoende om (Yt – Yt-1) – (Yt-1 – Yt-2) = Yt – 2Yt-1 + Yt-2. Een tweede verschil van een discrete functie is analoog aan een tweede afgeleide van een eindeloze functie: het meet de “versnelling” of “kromming” binnen de functie op een gegeven moment.

Het ARIMA(0,2,2) model zonder constante voorspelt dat het tweede verschil van de reeks gelijk is aan een lineaire functie van de laatste twee voorspellingsfouten:

Ŷt – 2Yt-1 + Yt-2 = – θ1et-1 – θ2et-2

die kan worden herschikt als:

Ŷt = 2 Yt-1 – Yt-2 – θ1et-1 – θ2et-2

waarbij θ1 en θ2 de MA(1)- en MA(2)-coëfficiënten zijn. dit is vaak een algemeen lineair exponentieel afvlakkingsmodel, in wezen een equivalent van Holts model, en het model van Brown kan een speciaal geval zijn. Het maakt gebruik van exponentieel gewogen voortschrijdende gemiddelden om zowel een oppervlaktelevel als een oppervlaktetrend binnen de reeks te schatten. De langetermijnvoorspellingen van dit model convergeren naar een lijn waarvan de helling afhangt van de typische trend die naar de top van de reeks wordt waargenomen.

ARIMA(1,1,2) zonder constante = gedempte-trend lineaire exponentiële afvlakking:

Ŷt = Yt-1 + ϕ1 (Yt-1 – Yt-2 ) – θ1et-1 – θ1et-1

Dit model wordt geïllustreerd in de bijbehorende dia’s op ARIMA-modellen. Het extrapoleert de lokale trend aan de bovenkant van de serie, maar legt deze af op langere verwachte horizonten om een noot van conservatisme te introduceren, een praktijk die empirische steun heeft. Zie het artikel over “Why the Damped Trend works” van Gardner en McKenzie en dus het artikel over de “Golden Rule” van Armstrong et al. voor details.

Het is over het algemeen aan te raden om bij modellen te blijven waarbij een minimum van één onder p en q niet groter is dan 1, d.w.z. probeer niet te passen bij een model als ARIMA(2,1,2), omdat dit vaak leidt tot overfitting en “common-factor” kwesties die in extra detail worden besproken in de notities over de wiskundige structuur van ARIMA-modellen.

Spreadsheet-implementatie: ARIMA-modellen zoals hierboven beschreven zijn eenvoudig te implementeren op een spreadsheet. De voorspellingsvergelijking is slechts een vergelijking die verwijst naar vroegere waarden van de oorspronkelijke statistiek en vroegere waarden van de fouten. Dus, je zult een ARIMA voorspellingswerkblad vinden door de info in kolom A op te slaan, de voorspellingsformule in kolom B, en dus de fouten (gegevens minus voorspellingen) in kolom C. De voorspellingsformule tijdens een typische cel in kolom B zou gewoon een lineaire uitdrukking zijn die betrekking heeft op waarden in voorgaande rijen van de kolommen A en C, vermenigvuldigd met de aanvaardbare AR of MA coëfficiënten die zijn opgeslagen in cellen elders op het werkblad.