My IBM Accedi Iscriviti

Cos'è un modello autoregressivo?

12 giugno 2024

Autori

Joshua Noble

Data Scientist

La modellazione autoregressiva è una tecnica di machine learning più comunemente utilizzata per l'analisi e la previsione di serie temporali che utilizza uno o più valori di fasi temporali precedenti di una serie temporale per creare una regressione.

Si tratta di una tecnica semplice ma potente per l'analisi delle serie temporali che fornisce stime altamente interpretabili ed efficaci se i dati contengono correlazioni tra le fasi temporali. La correlazione tra fasi temporali è chiamata autocorrelazione perché è una misura di quanto un valore è correlato a se stesso. Un processo puramente lineare si autocorrelerà perfettamente con se stesso attraverso le serie temporali, rendendo possibile prevedere il valore successivo esattamente dai valori precedenti utilizzando un processo autoregressivo. Un processo completamente stocastico come il rumore bianco non avrà alcuna autocorrelazione poiché non possiamo prevedere i valori attuali o futuri utilizzando i valori passati.

Una serie temporale è una sequenza di misurazioni della stessa variabile o gruppo di variabili effettuate nel tempo. Le misurazioni vengono solitamente effettuate a intervalli regolari, ad esempio ogni ora, ogni mese o ogni anno. Ad esempio, potremmo avere valori che misurano il numero di passeggeri aerei in un paese, con misurazioni osservate ogni mese. In questo caso, y rappresenta il numero di passeggeri misurato e sottolinea l'esistenza dei valori misurati nel tempo. Il valore di t viene applicato come pedice anziché il solito i per indicare che yt rappresenta il valore di y in qualsiasi momento.

Un modello autoregressivo è quando si regredisce un valore da una serie temporale su valori precedenti della stessa serie temporale. Ad esempio, yt regredito su yt-1 utilizza il valore precedente di y, chiamato valore ritardato, per prevedere il valore corrente di y. In questo modello di regressione semplice, la variabile dipendente nel periodo di tempo precedente è diventata il predittore. Gli errori rappresentano tutte le ipotesi usuali sugli errori in un modello di regressione lineare semplice. Spesso consideriamo l'ordine di un'autoregressione come il numero di valori precedenti nella serie utilizzata per prevedere il valore attuale. Quindi, yt regredito su yt-1 è un'autoregressione del primo ordine, che è scritta come AR(1).

Definizioni di autoregressione

In una regressione lineare multipla, l'output della regressione è una combinazione lineare di più variabili di input. Nei modelli di autoregressione, l'output è il punto dati futuro espresso come una combinazione lineare dei punti dati p passati. p è il numero di ritardi inclusi nell'equazione. Un modello AR(1) è definito matematicamente come:

 XT=δ+ϕ1XT-1+αT

xt-1 è il valore della serie passata da un ritardo

ϕ è il coefficiente calcolato per quel ritardo

Alphat è il rumore bianco (come la casualità)

Delta è definito come

 δ=(1-pi=1ϕi)μ

per un modello autoregressivo di ordine p, dove p è il numero totale di covariate calcolate per i ritardi e μ è la media del processo.

Quando vengono aggiunti più ritardi al modello, aggiungiamo più coefficienti e variabili di ritardo all'equazione:

 XT=δ+ϕ1XT-1+ϕ2XT-2+αT

Il modello precedente è un'autoregressione di secondo ordine poiché contiene due ritardi.

La forma generale di un'equazione autoregressiva per un ordine p è

 XT=δ+ϕ1XT-1...ϕpXT-p+αT

Per utilizzare i modelli autoregressivi per la previsione delle serie temporali, utilizziamo il valore temporale corrente e tutti i dati storici per prevedere il passaggio temporale successivo. Ad esempio, un modello AR con 2 ritardi potrebbe prevedere una singola fase temporale successiva nel modo seguente:

 XT+1=δ+ϕ1XT+ϕ2XT-1+αT+1

Stima dei coefficienti

Gli approcci più comuni per calcolare i coefficienti per ogni ritardo sono la stima di massima verosimiglianza (MLE) o la stima che utilizza i minimi quadrati (OLS). Le stesse limitazioni che questi approcci hanno quando si adatta una regressione di un modello lineare sono presenti anche nell'adattamento di modelli autoregressivi. A seconda che si stia usando Python o R e la libreria, si potrebbe essere in grado di utilizzare i metodi Yule-Walker o Burg oltre a MLE o OLS.

Molte librerie consentono agli utenti di selezionare i criteri da utilizzare quando si selezionano i modelli da tutti i modelli candidati. Ad esempio, si potrebbe voler utilizzare i coefficienti del modello per ridurre al minimo il criterio di informazione di Akaike o i criteri di informazione bayesiani a seconda del caso d'uso e dei dati.

Selezione dell'ordine di un modello AR

L'autocorrelazione calcola la correlazione tra una serie temporale e una versione ritardata di se stessa. Il ritardo è il numero di unità di tempo per spostare la serie temporale. Un ritardo pari a 1 confronta la serie con una fase temporale precedente. Un ritardo pari a 2 la confronta con la fase temporale precedente a quella confrontata con un ritardo pari a 1. Il grado di autocorrelazione in un particolare ritardo mostra la dipendenza temporale dei dati. Quando l'autocorrelazione è elevata, esiste una forte relazione tra il valore corrente e il valore a quel ritardo. Quando l'autocorrelazione è bassa o vicina allo zero, suggerisce una relazione debole o nessuna relazione.

Un approccio comune per visualizzare l'autocorrelazione consiste nel calcolare la funzione di autocorrelazione (ACF) o il grafico ACF che visualizza i coefficienti di autocorrelazione a diversi ritardi.

L'asse orizzontale rappresenta il ritardo e l'asse verticale rappresenta i valori di autocorrelazione. Picchi o andamenti significativi nel grafico ACF possono rivelare la struttura temporale sottostante dei dati. La selezione dell'ordine di ritardo (p) nel modello AR si basa spesso sull'analisi del grafico ACF. In un modello AR(p), il valore corrente della serie temporale è espresso come una combinazione lineare dei suoi valori p passati, con coefficienti determinati tramite OLS o MLE. L'autocorrelazione viene utilizzata anche per valutare se una serie temporale è stazionaria. Per una serie temporale stazionaria, l'autocorrelazione dovrebbe diminuire gradualmente all'aumentare del ritardo, ma se il grafico ACF non indica una diminuzione, i dati potrebbero contenere non stazionarietà. Maggiori informazioni sull'autocorrelazione sono disponibili qui.

Design 3D di palline che rotolano su una pista

Le ultime notizie e insight sull'AI 


Scopri notizie e insight selezionati da esperti in materia di AI, cloud e molto altro nella newsletter settimanale Think. 

Varianti dei modelli autoregressivi

Esistono molte varianti del modello di serie temporali autoregressivo standard che ne risolvono le sfide e le carenze.

Modelli autoregressivi vettoriali

Un semplice modello statistico autoregressivo funziona con set di dati univariati, il che significa che un set di dati deve contenere un valore per ogni periodo. I modelli autoregressivi vettoriali (VAR) sono stati sviluppati per consentire l'autoregressione di serie temporali multivariate. Sono strutturati in modo che ogni variabile sia una funzione lineare dei ritardi passati di se stessa e dei ritardi passati delle altre variabili. Immagina di avere una serie temporale composta da due diverse misurazioni, il numero mensile di voli aerei e il numero mensile di viaggi ferroviari interurbani. In un modello VAR, è possibile prevedere il valore dell'utilizzo di entrambi con una regressione per ciascuno che include l'altro valore. Codificando i viaggi ferroviari come Xr e i viaggi aerei come Xa avremmo:

 XT,r=αr+ϕ11XT-1,a+ϕ12XT-1,r+ϵT,r 

 XT,a=αa+ϕ11XT-1,a+ϕ12XT-1,r+ϵT,a 

ARMA e ARIMA

I modelli autoregressivi semplici possono avere difficoltà con le serie temporali che hanno una forte tendenza. Due varianti popolari del modello autoregressivo sono i modelli autoregressivi a media mobile (ARMA) e i modelli autoregressivi integrati a media mobile (ARIMA). Queste varianti sono particolarmente utili quando i dati hanno una tendenza forte. Il modelli a media mobile sono un altro approccio alla previsione dei dati delle serie temporali e ARIMA integra questi due approcci, da cui il nome. Esistono anche varianti dei modelli ARIMA. Una delle estensioni più comuni è il vettore ARIMA (VARIMA), utilizzato quando i dati sono multivariati. Un'altra estensione comune è l'ARIMA stagionale (SARIMA) quando i dati contengono una forte stagionalità. Approfondimenti sui modelli ARIMA sono disponibili qui.

Eteroschedasticità condizionale autoregressiva

I modelli autoregressivi funzionano in modo molto più affidabile quando i dati delle serie temporali sono stazionari e la varianza tra le serie temporali non varia. Spesso i dati non stazionari vengono differenziati nel tempo per rimuovere le variazioni di varianza e quindi adattare un modello AR. A volte questa varianza è significativa e un data scientist preferisce non rimuoverla. Il metodo dell'eteroschedasticità condizionale autoregressiva (ARCH) fornisce un modo per modellare una variazione della varianza in una serie temporale dipendente dal tempo, come l'aumento o la diminuzione della volatilità. Un'estensione di questo approccio, nota come eteroschedasticità condizionale autoregressiva generalizzata (GARCH), consente al metodo di supportare i cambiamenti nella volatilità dipendente dal tempo. Ad esempio, l'aumento e la diminuzione della volatilità nella stessa serie.

Quando c'è un processo non stocastico per le variazioni delle serie temporali, l'eteroschedasticità condizionale autoregressiva o l'algoritmo ARCH può utilizzare tecniche autoregressive per modellare e prevedere i cambiamenti nella volatilità dei set di dati. I modelli autoregressivi regolari non modellano una variazione della varianza in un set di dati. Per questo motivo, un data scientist potrebbe utilizzare una trasformazione di Box-Cox per ridurre la varianza nel set di dati. Tuttavia, se la variazione della varianza è autocorrelata, un approccio ARCH alla modellazione può fornire previsioni su quando un processo potrebbe iniziare a cambiare. Questo approccio è noto come previsione della volatilità ed è comunemente utilizzato in econometria e analisi finanziaria. Per esempio, quando si lavora con i dati dei prezzi delle azioni, l'interesse potrebbe espandersi oltre la modellazione dei prezzi potenziali, fino a prevedere quando iniziano a cambiare drasticamente.

Mixture of Experts | Podcast

Decoding AI: Weekly News Roundup

Unisciti al nostro gruppo di livello mondiale di ingegneri, ricercatori, leader di prodotto e molti altri mentre si fanno strada nell'enorme quantità di informazioni sull'AI per darti le ultime notizie e gli ultimi insight sull'argomento.

Altre applicazioni dell'autoregressione

Sebbene i modelli autoregressivi siano comunemente associati a dati di serie temporali, sono possibili altre applicazioni di modellazione con diversi tipi di dati.

Elaborazione del linguaggio naturale

Le tecniche di modellazione autoregressiva generano la probabilità di sequenze di token, ad esempio per suggerire una probabile lettera o parola successiva in un testo predittivo. I modelli linguistici autoregressivi calcolano la probabilità di ogni possibile token in base ai token precedenti nella stringa. Data la catena "il topo ha mangiato il", un modello che ha visto un numero ragionevole di frasi in italiano probabilmente assegnerebbe una probabilità maggiore a "formaggio" rispetto a "compito". Questa probabilità viene assegnata tramite un processo autoregressivo che utilizza tutti i token precedenti nella catena per assegnare probabilità a ciascun token nel modello linguistico.

Dati spaziali

Un'applicazione diversa dei principi autoregressivi consiste nell'utilizzare le posizioni dei valori come una sequenza e far regredire tutte le posizioni rilevanti nella posizione di interesse. Ad esempio, potremmo sospettare che la distanza da una fabbrica influisca sulle letture della qualità dell'aria. Un modello autoregressivo utilizzerebbe le letture di altri siti come valori ritardati e la distanza dalla fabbrica come ritardi.

Soluzioni correlate

Soluzioni correlate

Strumenti e soluzioni per l'analytics

Per prosperare, le aziende devono utilizzare i dati per fidelizzare i clienti, automatizzare i processi aziendali e innovare con soluzioni basate sull'AI.

Esplora le soluzioni di analytics
Servizi di consulenza per dati e analytics

Sblocca il valore dei dati aziendali con IBM Consulting e crea un'organizzazione basata su insight in grado di generare vantaggi aziendali.

Esplora i servizi di analytics
IBM Cognos Analytics

Introduzione a Cognos Analytics 12.0, insight basati sull'AI per prendere decisioni migliori.

Esplora Cognos Analytics
Fasi successive

Per prosperare, le aziende devono utilizzare i dati per fidelizzare i clienti, automatizzare i processi aziendali e innovare con soluzioni basate sull'AI.

Esplora le soluzioni di analytics Esplora i servizi di analytics