Buone pratiche durante la previsione di serie storiche


10

Ho lavorato per mesi sulla previsione del carico a breve termine e sull'utilizzo dei dati climatici / meteorologici per migliorare l'accuratezza. Ho una preparazione informatica e per questo motivo sto cercando di non commettere grossi errori e confronti ingiusti lavorando con strumenti statistici come i modelli ARIMA. Mi piacerebbe sapere la tua opinione su un paio di cose:

  1. Sto utilizzando entrambi i modelli (S) ARIMA e (S) ARIMAX per studiare l'effetto dei dati meteorologici sulla previsione, pensi che sarebbe necessario utilizzare anche i metodi di livellamento esponenziale?

  2. Avendo una serie temporale di 300 campioni giornalieri sto iniziando dalle prime due settimane ed eseguo una previsione con 5 giorni di anticipo utilizzando modelli costruiti con la funzione auto.arima R (pacchetto di previsioni). Quindi, aggiungo un altro campione al mio set di dati e calibro di nuovo i modelli e eseguo altre 5 giorni di previsione e così via fino alla fine dei dati disponibili. Pensi che questo modo di operare sia corretto?

Grazie per i vostri suggerimenti, sebbene l'obiettivo del nostro lavoro sia un articolo di giornale di ingegneria, vorrei fare un lavoro il più rigoroso possibile da un punto di vista statistico.


1
Questa domanda sembra essere strettamente correlata: stats.stackexchange.com/questions/16915/…
whuber

Risposte:


9
  1. Penso che varrebbe la pena esplorare anche modelli di livellamento esponenziale. I modelli di livellamento esponenziale sono una classe di modelli sostanzialmente diversa dai modelli ARIMA e possono produrre risultati diversi sui dati.

  2. Sembra un approccio valido ed è molto simile al metodo di convalida incrociata delle serie temporali proposto da Rob Hyndman .

Vorrei aggregare l'errore di convalida incrociata da ciascuna previsione (smoothing esponenziale, ARIMA, ARMAX) e quindi utilizzare l'errore generale per confrontare i 3 metodi.

È inoltre possibile prendere in considerazione una "ricerca in griglia" per i parametri ARIMA, anziché utilizzare auto.arima. In una ricerca della griglia, esploreresti ogni possibile parametro per un modello arima e poi selezioneresti i "migliori" usando l'accuratezza delle previsioni.


Grazie per la risposta, sto usando auto.arima con la ricerca STEPWISE disabilitata e penso che in questo modo esplorerà tutti i parametri nell'intervallo min-max (non ho ancora letto il documento di Hyndman e Kandahar 2008)
Matteo De Felice,

@Matteo De Felice: il fatto è che sta ottimizzando quei parametri basati su AIC. Stavo suggerendo che varrebbe la pena ottimizzare quei parametri in base alle prestazioni fuori campione, che è possibile valutare mediante convalida incrociata. Inoltre, se si desidera confrontare altri modelli (come ETS), sarà necessaria una metrica delle prestazioni fuori campione, poiché non è possibile confrontare AIC tra diversi tipi di modelli (come auto.arima ed ets).
Zach,

in questo momento ho eseguito una ricerca sulla griglia (usando auto.arima con stepwise = FALSE) e poi ho provato i modelli più frequenti per valutarne le prestazioni.
Matteo De Felice,

@Matteo De Felice: in caso di problemi nell'implementazione della convalida incrociata di serie storiche
Zach,

Va notato che i modelli ARIMA ed ETS non sono sostanzialmente diversi. In effetti, i modelli di livellamento esponenziale lineare sono casi speciali dei modelli ARIMA. Vedi qui: otexts.org/fpp/8/10 .
Verruca
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.