Wat kan er daarna gebeuren? Voorspelling met ARIMA, automatische keuze en afvlakking
Kort
In de kaart “Hoe ontwikkelt een waarde zich in de loop van de tijd?” staat onder de decompositie de sectie “Wat kan er daarna gebeuren? (voorspelling)”. Zonder klik wordt niets berekend. Je kunt de automatische keuze kiezen (Statable stelt een ARIMA-model voor), ARIMA met een zelfgekozen orde en exponentiële afvlakking (eenvoudig, met trend, Holt-Winters additief of multiplicatief). Het resultaat toont eerst een controlelijst, dan de grafiek met de 80%- en 95%-band, de voorspellingstabel, het model, bij de automatische keuze de vijf beste modellen, en een testperiode.
Wanneer de voorspelling geblokkeerd is
- Ontbreken er waarden in de reeks, dan berekent Statable geen voorspelling. Het vult niets in.
- Niet bij ongelijke tussenpozen, bij minder dan 20 waarden, en ook niet als alle waarden gelijk zijn.
- De automatische keuze werkt tot 600 waarden. Daarboven blijven “ARIMA zelf kiezen” en afvlakking over.
De keuzes
- Horizon: standaard één periode (12 bij maanden), 5 zonder seizoen. Maximaal twee perioden en maximaal een kwart van de reeks, minstens 1.
- Logaritmische schaal (alleen ARIMA, alleen voor waarden boven 0): standaard aan als de decompositie multiplicatief suggereert, dat wil zeggen als de schommeling meegroeit met het niveau. Voorspelling en grenzen worden teruggetransformeerd; de voorspelling is dan een mediaan, geen gemiddelde.
- ARIMA zelf kiezen: p, q, P en Q van 0 tot 5, d tot 2, D tot 1. Het seizoensdeel (P, D, Q) werkt alleen met een periode van 2 tot 24. De constante bestaat alleen voor d + D tot 1 (gemiddelde of drift).
- Afvlakking: met een seizoen alleen bij een periode van 2 of meer en minstens twee perioden plus één waarde; multiplicatief alleen voor waarden boven 0.
Hoe de automatische keuze kiest
Statable volgt Hyndman en Khandakar (2008). Eerst het aantal verschillen: d (0 tot 2) met de KPSS-toets (grens 0,463), D (0 of 1) met de seizoenssterkte (grens 0,64). Daarna past het alle modellen aan tot p, q ≤ 2 met een seizoen (tot 3 zonder), P, Q ≤ 1 en p + q + P + Q ≤ 5, met en zonder constante, en rangschikt ze op AICc. Het eerste is het voorstel. De tabel toont de vijf beste met ΔAICc. Bij een periode boven 24 of minder dan drie volledige perioden negeert de automatische keuze het seizoen.
Valkuil: de kleinste AICc is geen bewijs
De AICc vergelijkt alleen de modellen die hij ziet. Ligt het tweede model minder dan 2 hoger (ΔAICc < 2), dan zijn meerdere modellen ongeveer even goed; vergelijk dan de voorspellingen (“Dit model berekenen” in de tabel). Bij minder dan 50 waarden is de modelkeuze onzeker (Box en Jenkins). De AICc is niet geschikt om modellen met verschillende verschillen te vergelijken.
Het resultaat lezen
- Controlelijst: ze komt vóór de getallen. Elke zin geldt als aan zijn voorwaarde is voldaan. De eerste geldt altijd: een voorspelling zet het verleden voort en geldt alleen als de omstandigheden gelijk blijven.
- Grafiek en tabel: lijn van de waarden, gestippeld de voorspelling, met een 80%- en een 95%-band. De verticale lijn staat bij de laatste waarde. De banden worden breder met de horizon.
- Residuen: de Ljung-Box-toets controleert of de fouten van het model nog samenhangen. p < ,05 betekent: het model vangt niet het hele patroon op en de intervallen zijn onbetrouwbaar.
- Testperiode: de laatste waarden (één periode, tot 5 zonder seizoen) worden achtergehouden en hetzelfde model wordt opnieuw geschat met de eerdere waarden. De vergelijking is met de eenvoudige regel (laatste waarde, bij een seizoen de waarde een periode eerder). Was het model niet beter (RMSE gelijk of groter), dan levert de voorspelling niets op. Is de reeks te kort, dan zegt de controlelijst dat.
- Ondergrens onder 0 bij uitsluitend positieve waarden: het model kent de ondergrens van 0 niet. De logaritmische schaal voorkomt dat.
Voorwaarden en grenzen
- Gelijke tussenpozen, geen gaten, minstens 20 waarden. Beter boven 50.
- De voorspelling gaat ervan uit dat de omstandigheden gelijk blijven: geen structurele breuk, geen nieuwe regel, geen crisis. Het model kan dat niet weten.
- Statable behandelt geen kalendereffecten (schrikkeljaren, werkdagen), feestdagen, verklarende reeksen of meerdere seizoenen.
- De intervallen van de afvlakking (HoltWinters) zijn een benadering, vooral de multiplicatieve.
Het resultaat rapporteren
Voor de maandelijkse vliegtuigpassagiers is ARIMA(0,1,1)(0,1,1)[12] geschat op de logaritmische schaal (MA 1 = −,402, seizoens-MA 1 = −,557; AICc = −483,21). Ljung-Box Q(24) = 26,45, df = 22, p = ,233. In de testperiode van 12 maanden was de RMSE 18,59 tegenover 50,71 voor de eenvoudige regel. Voorspelling voor de eerste maand: 450, 95%-interval [419; 484].
Voor specialisten
Alles wordt door R berekend (alleen stats, geen extra pakket): arima (maximum likelihood), predict voor het gemiddelde en de standaardfout, HoltWinters, stl voor de seizoenssterkte, Box.test. De modelkeuze komt overeen met forecast::auto.arima met stepwise = FALSE en approximation = FALSE: bij tien reeksen, elk met en zonder log, gaven alle 20 runs hetzelfde model, dezelfde AICc en dezelfde puntvoorspelling.
De grenzen verschillen bewust van forecast: forecast berekent σ² met een correctie voor de vrijheidsgraden, Statable gebruikt stats::predict (σ² volgens maximum likelihood).
Verschillen met SPSS
- Teken van de MA-coëfficiënten: R en Statable schrijven het model volgens Box en Jenkins; SPSS toont MA met het tegenovergestelde teken (vliegtuigpassagiers: −,402 en −,557 tegenover ,402 en ,558).
- Standaardfouten en grenzen: SPSS schat en berekent de variantie anders. Voorbeeld vliegtuigpassagiers, eerste maand: Statable 419 tot 484, SPSS 419 tot 485. Voorbeeld Nile, eerste jaar: 541 tot 1092 tegenover 534 tot 1098.
- Beginwaarden van de afvlakking: Nile met eenvoudige afvlakking: Statable α = ,2466 en 805, SPSS α = ,248 en 804.
- Puntvoorspellingen komen op afronding na overeen (Nile met ARIMA(1,1,1) zonder constante: 816, 836, 840, 842, 842 bij beide).
Bronnen
Hyndman, R. J., & Khandakar, Y. (2008). Automatic time series forecasting: The forecast package for R. Journal of Statistical Software, 27(3).
Box, G. E. P., & Jenkins, G. M.: Time series analysis: Forecasting and control (Wiley).
Kwiatkowski, D., Phillips, P. C. B., Schmidt, P., & Shin, Y. (1992). Testing the null hypothesis of stationarity against the alternative of a unit root. Journal of Econometrics, 54, 159-178.
Typische voorbeelden
- Inschrijvingen voor een cursus per maand: hoeveel zijn er volgend semester te verwachten - en was het model in de testperiode beter dan “net als vorig jaar”?
- Jaarlijkse metingen zonder seizoen (bijvoorbeeld waterstand): afvlakking of ARIMA zonder seizoensdeel, met de laatste vijf jaar als testperiode.