In questo blog esploreremo come utilizzare SARIMAX, un potente metodo statistico, insieme alle tecniche di apprendimento automatico per la previsione di serie temporali utilizzando Python nel settore della mobilità.
Con l’introduzione dell’apprendimento automatico, i metodi statistici tradizionali sono stati migliorati per fornire previsioni più accurate e robuste.
Nel ride-hailing, prevedere i volumi dei clienti è essenziale per ottimizzare le operazioni, gestire le risorse in modo efficiente e migliorare l’esperienza del cliente. Ciò può essere ottenuto con tecniche di previsione delle serie temporali come SARIMAX.
Le tecniche di previsione delle serie temporali come SARIMAX possono svolgere un ruolo cruciale in questo senso.
Dimostreremo come possiamo applicare SARIMAX per prevedere i volumi dei clienti nel settore della mobilità.
Cos’è SARIMAX?
La media mobile integrata autoregressiva stagionale con regressori esogeni (SARIMAX) è un metodo statistico comunemente utilizzato per l’analisi e la previsione di serie temporali.
Estende il modello ARIMA incorporando parametri aggiuntivi per variazioni stagionali e variabili esogene.
I modelli SARIMAX sono ampiamente utilizzati in settori quali finanza, economia e sanità per prevedere valori futuri sulla base di modelli di dati storici.
Lo usiamo anche nel settore della mobilità.
Come si può vedere nell’istantanea seguente dei possibili input per questo metodo statistico, il pacchetto Python ha un numero diverso di possibili variabili che l’analista può utilizzare per personalizzare lo strumento.
Quelli più comunemente modificati con valori specifici dell’azienda sono “ordine” e “ordine stagionale”, mentre gli altri vengono comunemente lasciati con i valori predefiniti come descritto qui.
Formulazione matematica
Per chi ha una mentalità matematica, questo è il modo in cui il metodo viene definito utilizzando tre serie di parametri.
I tre set di parametri:
- Parametri stagionali (p, d, q, P, D, Q, s):
- p: Ordine autoregressivo della componente stagionale.
- d: Grado di differenziazione della componente stagionale.
- q: Ordine della media mobile per la componente stagionale.
- P: Ordine autoregressivo stagionale.
- D: Grado di differenziazione della componente stagionale.
- D: Ordine delle medie mobili stagionali.
- s: periodo stagionale (ad esempio, 24 per dati orari, 7 per dati settimanali, 12 per dati mensili e 4 per dati trimestrali)
Parametri non stagionali (p, d, q):
- p: Ordine autoregressivo per la componente non stagionale.
- d: Grado di differenziazione per la componente non stagionale.
- q: Ordine della media mobile per la componente non stagionale.
Variabili esogene (X):
- Variabili aggiuntive incorporate nel modello per catturarne l’influenza sulle serie temporali.
La componente stagionale in SARIMAX tiene conto dei modelli stagionali nei dati delle serie temporali. La stagionalità si riferisce a modelli ripetitivi che si verificano a intervalli regolari, ad esempio cicli giornalieri, settimanali o annuali. Incorporando parametri stagionali, SARIMAX può catturare e modellare questi modelli in modo efficace.
La componente autoregressiva (AR) di La componente autoregressiva di SARIMAX modella la relazione tra un’osservazione e un numero di osservazioni ritardate (ovvero, valori passati della serie temporale). Questo componente cattura la dipendenza del valore corrente dai suoi valori precedenti.
La componente integrata (I): la componente integrata di SARIMAX tiene conto della non stazionarietà dei dati delle serie temporali mediante differenziazione. La non stazionarietà si riferisce alla presenza di tendenze o modelli irregolari che cambiano nel tempo. Differenziando i dati, SARIMAX li trasforma in una serie stazionaria, rendendola adatta alla modellizzazione.
La componente media mobile (MA): la componente media mobile di SARIMAX modella la dipendenza tra un’osservazione e un errore residuo da un modello di media mobile applicato alle osservazioni ritardate. Questo componente aiuta a catturare fluttuazioni e rumore a breve termine nei dati.
Le variabili esogene (X) in SARIMAX consentono l’inclusione di variabili esogene, che sono fattori esterni che possono influenzare la serie temporale ma non fanno parte della serie temporale stessa. Queste variabili potrebbero essere indicatori economici, condizioni meteorologiche o qualsiasi altro fattore rilevante che influenza il fenomeno studiato.
Flusso di lavoro della modellazione
SARIMAX Raccolta e preparazione dei dati:
- È necessario prima raccogliere dati storici sui volumi dei clienti dal database dell’azienda o da altre fonti pertinenti. Questi dati potrebbero includere parametri come il numero di richieste di corse o prenotazioni per ora/giorno. Questi dati devono quindi essere pre-elaborati gestendo i valori mancanti, rimuovendo i valori anomali e convertendo i timestamp in oggetti datetime appropriati.
Analisi esplorativa dei dati (EDA):
- È quindi necessario condurre un’analisi esplorativa dei dati per comprendere eventuali modelli o tendenze sottostanti nei volumi dei clienti. I dati delle serie temporali vengono quindi visualizzati utilizzando grafici a linee, istogrammi e scomposizione stagionale per identificare stagionalità, tendenze ed eventuali anomalie da utilizzare nella fase successiva.
Costruzione di modelli:
- La parte del processo di Machine Learning (ML) inizia qui suddividendo il set di dati in set di training e test, garantendo il mantenimento dell’ordine temporale. Un modello SARIMAX viene adattato ai dati di addestramento, specificando i parametri appropriati come ordine e ordine stagionale in base ai modelli identificati nei dati nel passaggio precedente. Si possono includere anche variabili esogene come condizioni meteorologiche, festività o eventi che possono influenzare i volumi dei clienti in questa fase.
Valutazione del modello:
- Le prestazioni del modello SARIMAX vengono quindi valutate utilizzando parametri quali errore assoluto medio (MAE), errore quadratico medio (MSE) ed errore quadratico medio radice (RMSE) sul set di test. I volumi di clienti previsti vengono confrontati con i valori effettivi per valutare l’accuratezza del modello.
Previsione:
- Il modello SARIMAX addestrato viene quindi utilizzato per generare previsioni per periodi di tempo futuri, catturando le variazioni nei volumi dei clienti. I volumi di clienti previsti vengono visualizzati insieme agli intervalli di previsione per fornire informazioni sull’incertezza associata alle previsioni.
Conclusione
Prevedere parametri importanti nel modo più accurato possibile è fondamentale per prendere decisioni basate sui dati all’interno delle aziende, in particolare quelle del settore della mobilità, poiché consente l’ottimizzazione delle operazioni e dell’esperienza del cliente.
Sfruttando al massimo gli strumenti a disposizione, in particolare pacchetti come SARIMAX in Python per la previsione delle serie temporali, le aziende di ride-hailing come eCabs possono provare ad anticipare le fluttuazioni della domanda e dell’offerta all’interno di un mercato così volatile.
Julia è Senior Data Analyst presso eCabs Technologies. Ha una laurea in Matematica e Fisica e una laurea magistrale in Apprendimento Automatico, Riconoscimento dei Pattern e Elaborazione di Immagini/Segnali. I suoi studi l’hanno portata all’Organizzazione Europea per la Ricerca Nucleare, più comunemente nota come CERN. Qui ha lavorato nell’analisi dei dati grezzi ottenuti dalle collisioni protone-piombo nel più grande e potente collider di particelle del mondo. Ha lavorato come analista di pagamenti e frodi e ha iniziato la sua carriera di analista dei dati presso una delle ‘Big Four’. Ha anche ricoperto il ruolo di analista di ricerca e supporto per l’Università di Oxford. Quando non sta facendo calcoli, la puoi trovare ad arrampicare su pareti rocciose, in palestra o a giocare ai videogiochi.