
Autocorrelazione
Una volta che i nostri dati sono stazionari, possiamo indagare su altri attributi chiave delle serie temporali: autocorrelazione parziale E autocorrelazione. In termini formali:
IL funzione di autocorrelazione (ACF) misura la relazione lineare tra i valori ritardati di una serie temporale. In altre parole, misura la correlazione della serie storica con se stessa. (2)
IL funzione di autocorrelazione parziale (PACF) misura la correlazione tra valori ritardati in una serie temporale quando rimuoviamo l’influenza dei valori ritardati correlati nel mezzo. Queste sono note come variabili di confondimento. (3)
Entrambe le metriche possono essere visualizzate con grafici statistici noti come correlogrammi. Ma prima è importante comprenderli meglio.
Poiché questo articolo è incentrato sull’analisi esplorativa e questi concetti sono fondamentali per i modelli di previsione statistica, manterrò la spiegazione breve, ma tengo presente che si tratta di idee molto importanti su cui costruire una solida intuizione quando si lavora con le serie temporali. Per una lettura completa consiglio l’ottimo kernel”Serie temporali: interpretazione di ACF e PACF” del Gran Maestro dei Kaggle Notebooks Leonie Monigatti.
Come notato sopra, l’autocorrelazione misura il modo in cui la serie temporale si correla con se stessa rispetto al precedente Q ritardi. Puoi considerarlo come una misurazione della relazione lineare di un sottoinsieme dei tuoi dati con una copia di se stesso spostata indietro di Q periodi. L’autocorrelazione, o ACF, è una metrica importante per determinare l’ordine Q dei modelli di media mobile (MA)..
D’altra parte, l’autocorrelazione parziale è la correlazione della serie temporale con la sua P versione ritardata, ma ora riguarda esclusivamente la sua effetti diretti. Ad esempio, se voglio verificare l’autocorrelazione parziale del file t-3 A t-1 periodo di tempo con il mio attuale t0 valore, non mi interessa come t-3 influenze t-2 E t-1 o come t-2 influenze t-1. Mi concentrerò esclusivamente sugli effetti diretti di t-3, t-2E t-1 sul mio timestamp attuale, t0. L’autocorrelazione parziale, o PACF, è una metrica importante per determinare l’ordine P dei modelli autoregressivi (AR).
Chiariti questi concetti, possiamo ora tornare ai nostri dati. Poiché le due metriche vengono spesso analizzate insieme, la nostra ultima funzione combinerà i grafici PACF e ACF in un grafico a griglia che restituirà correlogrammi per più variabili. Utilizzerà modelli statistici plot_pacf()
E plot_acf()
funzioni e mapparle su un Matplotlib subplots()
griglia.
Nota come entrambe le funzioni statsmodels utilizzano gli stessi argomenti, ad eccezione di the method
parametro esclusivo di plot_pacf()
complotto.
Ora puoi sperimentare diverse aggregazioni dei tuoi dati, ma ricorda che quando ricampioni le serie temporali, ogni ritardo rappresenterà un diverso salto indietro nel tempo. A scopo illustrativo, analizziamo il PACF e l’ACF per tutte e quattro le stazioni nel mese di gennaio 2016, con un dataset aggregato di 6 ore.
I correlogrammi restituiscono i coefficienti di correlazione compresi tra -1,0 e 1,0 e un’area ombreggiata che indica la soglia di significatività. Qualsiasi valore che si estende oltre dovrebbe essere considerato statisticamente significativo.
Dai risultati di cui sopra, possiamo finalmente concludere che su un’aggregazione di 6 ore:
- I ritardi 1, 2, 3 (t-6h, t-12h e t-18h) e talvolta 4 (t-24h) hanno un PACF significativo.
- I ritardi 1 e 4 (t-6h e t-24h) mostrano un ACF significativo nella maggior parte dei casi.
E prendi nota di alcune buone pratiche finali:
- Dovrebbe essere evitato di tracciare correlogrammi per ampi periodi di serie temporali con elevata granularità (ad esempio, tracciare un correlogramma di un anno intero per un set di dati con misurazioni orarie), poiché la soglia di significatività si restringe fino a zero con dimensioni del campione sempre più elevate.
- Ho definito un
x_label
parametro alla nostra funzione per semplificare l’annotazione dell’asse X con il periodo di tempo rappresentato da ciascun ritardo. È comune vedere i correlogrammi senza tali informazioni, ma avere un facile accesso ad esse può evitare interpretazioni errate dei risultati. - Modelli statali
plot_acf()
Eplot_pacf()
i valori predefiniti sono impostati per includere il coefficiente di correlazione 0-lag nel grafico. Poiché la correlazione di un numero con se stesso è sempre una, ho impostato i nostri grafici in modo che inizino dal primo ritardo con il parametrozero=False
. Migliora anche la scala dell’asse Y, rendendo più leggibili i ritardi che effettivamente dobbiamo analizzare.
Fonte: towardsdatascience.com