Che cosa potrebbe succedere dopo? Previsione con ARIMA, selezione automatica e livellamento
In breve
Nella scheda «Come si sviluppa un valore nel tempo?» c’è la sezione «Che cosa potrebbe succedere dopo? (previsione)» sotto la scomposizione. Senza un clic non viene calcolato nulla. Puoi scegliere la selezione automatica (Statable propone un modello ARIMA), ARIMA con un ordine scelto da te e il livellamento esponenziale (semplice, con tendenza, Holt-Winters additivo o moltiplicativo). Il risultato mostra prima una lista di controllo, poi il grafico con la banda all’80% e al 95%, la tabella della previsione, il modello, con la selezione automatica i cinque modelli migliori, e un periodo di prova.
Quando la previsione è bloccata
- Se nella serie mancano valori, Statable non calcola alcuna previsione. Non riempie nulla.
- Non con intervalli disuguali, con meno di 20 valori, né se tutti i valori sono uguali.
- La selezione automatica funziona fino a 600 valori. Oltre restano «Scegli tu stesso ARIMA» e il livellamento.
Le scelte
- Orizzonte: per impostazione predefinita un periodo (12 per i mesi), 5 senza stagionalità. Al massimo due periodi e al massimo un quarto della serie, almeno 1.
- Scala logaritmica (solo ARIMA, solo per valori maggiori di 0): attivata per impostazione predefinita se la scomposizione suggerisce un modello moltiplicativo, cioè se la fluttuazione cresce con il livello. La previsione e i limiti vengono ritrasformati; la previsione è allora una mediana, non una media.
- Scegli tu stesso ARIMA: p, q, P e Q da 0 a 5, d fino a 2, D fino a 1. La parte stagionale (P, D, Q) funziona solo con un periodo da 2 a 24. La costante esiste solo per d + D fino a 1 (media o deriva).
- Livellamento: con una stagionalità solo con un periodo di 2 o più e almeno due periodi più un valore; moltiplicativo solo per valori maggiori di 0.
Come sceglie la selezione automatica
Statable segue Hyndman e Khandakar (2008). Prima il numero di differenze: d (da 0 a 2) con il test KPSS (limite 0,463), D (0 o 1) con la forza stagionale (limite 0,64). Poi adatta tutti i modelli fino a p, q ≤ 2 con una stagionalità (fino a 3 senza), P, Q ≤ 1 e p + q + P + Q ≤ 5, con e senza costante, e li ordina per AICc. Il primo è la proposta. La tabella mostra i cinque migliori con ΔAICc. Con un periodo superiore a 24 o con meno di tre periodi completi la selezione automatica ignora la stagionalità.
Trappola: l’AICc più piccolo non è una prova
L’AICc confronta soltanto i modelli che vede. Se il secondo modello è sopra di meno di 2 (ΔAICc < 2), più modelli sono all’incirca ugualmente buoni; confronta allora le previsioni («Calcola questo modello» nella tabella). Con meno di 50 valori la scelta del modello è incerta (Box e Jenkins). L’AICc non è adatto a confrontare modelli con differenze diverse.
Leggere il risultato
- Lista di controllo: viene prima dei numeri. Ogni frase vale se la sua condizione è soddisfatta. La prima vale sempre: una previsione prolunga il passato e vale solo se le condizioni restano le stesse.
- Grafico e tabella: linea dei valori, tratteggiata la previsione, con una banda all’80% e una al 95%. La linea verticale sta sull’ultimo valore. Le bande si allargano con l’orizzonte.
- Residui: il test di Ljung-Box controlla se gli errori del modello sono ancora collegati tra loro. p < ,05 significa che il modello non coglie tutto lo schema e che gli intervalli non sono affidabili.
- Periodo di prova: gli ultimi valori (un periodo, fino a 5 senza stagionalità) vengono tenuti da parte e lo stesso modello viene stimato di nuovo con i valori precedenti. Il confronto è con la regola semplice (ultimo valore, con una stagionalità il valore di un periodo prima). Se il modello non è stato migliore (RMSE uguale o maggiore), la previsione non porta alcun vantaggio. Se la serie è troppo corta, lo dice la lista di controllo.
- Limite inferiore sotto 0 con soli valori positivi: il modello non conosce il limite inferiore di 0. La scala logaritmica lo evita.
Requisiti e limiti
- Intervalli uguali, nessuna lacuna, almeno 20 valori. Meglio più di 50.
- La previsione presuppone che le condizioni restino le stesse: nessuna rottura strutturale, nessuna nuova regola, nessuna crisi. Il modello non può saperlo.
- Statable non gestisce gli effetti di calendario (anni bisestili, giorni lavorativi), le festività, le serie esplicative né più stagionalità.
- Gli intervalli del livellamento (HoltWinters) sono un’approssimazione, soprattutto quello moltiplicativo.
Riportare il risultato
Per i passeggeri aerei mensili è stato stimato ARIMA(0,1,1)(0,1,1)[12] sulla scala logaritmica (MA 1 = −,402, MA stagionale 1 = −,557; AICc = −483,21). Ljung-Box Q(24) = 26,45, gl = 22, p = ,233. Nel periodo di prova di 12 mesi l’RMSE era 18,59 contro 50,71 della regola semplice. Previsione per il primo mese: 450, intervallo al 95% [419; 484].
Per specialisti
Tutto viene calcolato da R (solo stats, nessun pacchetto aggiuntivo): arima (massima verosimiglianza), predict per la media e l’errore standard, HoltWinters, stl per la forza stagionale, Box.test. La selezione del modello corrisponde a forecast::auto.arima con stepwise = FALSE e approximation = FALSE: su dieci serie, ciascuna con e senza logaritmo, tutte le 20 esecuzioni hanno dato lo stesso modello, lo stesso AICc e la stessa previsione puntuale.
I limiti differiscono di proposito da forecast: forecast calcola σ² con una correzione dei gradi di libertà, Statable usa stats::predict (σ² secondo la massima verosimiglianza).
Differenze rispetto a SPSS
- Segno dei coefficienti MA: R e Statable scrivono il modello secondo Box e Jenkins; SPSS mostra MA con il segno opposto (passeggeri aerei: −,402 e −,557 contro ,402 e ,558).
- Errori standard e limiti: SPSS stima e calcola la varianza in modo diverso. Esempio dei passeggeri aerei, primo mese: Statable da 419 a 484, SPSS da 419 a 485. Esempio Nile, primo anno: da 541 a 1092 contro da 534 a 1098.
- Valori iniziali del livellamento: Nile con livellamento semplice: Statable α = ,2466 e 805, SPSS α = ,248 e 804.
- Le previsioni puntuali coincidono a meno dell’arrotondamento (Nile con ARIMA(1,1,1) senza costante: 816, 836, 840, 842, 842 in entrambi).
Fonti
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.
Esempi tipici
- Iscrizioni a un corso al mese: quante aspettarsene nel prossimo semestre - e il modello è stato migliore nel periodo di prova di «come l’anno scorso»?
- Misure annuali senza stagionalità (per esempio livello dell’acqua): livellamento oppure ARIMA senza parte stagionale, con gli ultimi cinque anni come periodo di prova.