00:00:05 Previsioni di vendita stagionali.
00:00:35 Spiegazione dei modelli di stagionalità principali.
00:02:23 Difficoltà nelle previsioni di stagionalità, durata del prodotto.
00:04:33 Ulteriori problematiche legate alla stagionalità esplorate.
00:06:53 Superare le problematiche con dati storici mancanti.
00:07:16 Soluzione: considerare le collezioni di prodotti per la stagionalità.
00:08:49 Dynamic time warping.
00:09:06 Transizione all’apprendimento approfondito per le previsioni.
00:10:02 Dynamic time warping nelle previsioni della domanda.
00:12:09 Gestione dei picchi di dati storici e delle promozioni.
00:13:01 Necessità di dati accurati e di machine learning.
00:16:01 Popolarità dell’apprendimento approfondito nel machine learning.
00:16:30 Limitazioni dei dati passati per le previsioni future.
00:17:40 Stagionalità negli affari umani per la modellazione.
00:19:42 Migliorare le previsioni con il machine learning.
00:21:39 Vantaggi del machine learning nel tempo.

Riassunto

In un’intervista, Joannes Vermorel sta discutendo delle sfide nell’incorporare la stagionalità nelle previsioni di vendita. La stagionalità, definita come modelli ciclici di vendita influenzati dal periodo dell’anno, dalla settimana e dal giorno, contribuisce alle fluttuazioni della domanda. Cyclicità secondarie, come l’“effetto stipendio” e la “quasi stagionalità”, hanno anche una certa importanza. Comprendere la base della domanda, le tendenze e il rumore statistico nei dati sta aiutando le previsioni accurate. Le sfide includono la breve durata di molti prodotti e la variabilità annuale di eventi come il Natale. Vermorel suggerisce l’adozione di una prospettiva collettiva su prodotti simili per prevedere le prestazioni dei nuovi prodotti e l’uso di configurazioni di machine learning per il mantenimento automatico dei bucket stagionali.

Riassunto Esteso

Kieran Chandler sta intervistando Joannes Vermorel sul concetto di stagionalità nelle previsioni di vendita e sulle sfide ad essa associate.

La stagionalità è uno dei modelli centrali utilizzati per migliorare l’accuratezza delle previsioni di vendita, ma spesso è fraintesa e applicata in modo errato. Vermorel identifica la stagionalità come una delle principali ciclicità nei modelli di vendita. Suddivide queste ciclicità in tre tipi chiave: il periodo dell’anno, il giorno della settimana e l’ora del giorno, che contribuiscono tutte alle variazioni nella domanda dei consumatori.

Vermorel parla anche di ciclicità secondarie come l’“effetto stipendio”, che è il ciclo mensile delle persone che ricevono lo stipendio e il suo impatto sul loro comportamento di acquisto. Inoltre, introduce le “ciclicità minerali” o “quasi stagionalità”, che includono eventi come Pasqua, Ramadan e Capodanno cinese, che si ripetono ma non cadono sempre nella stessa data ogni anno secondo il calendario gregoriano.

Comprendere la base della domanda, le tendenze e il livello di rumore statistico nei dati è un altro aspetto cruciale evidenziato da Vermorel. Riconoscere questi modelli aiuta a differenziare tra rumore casuale e autentici modelli statistici, il che è essenziale per una previsione efficace.

Nonostante la semplicità apparente della stagionalità, Vermorel parla del motivo per cui le persone spesso faticano con essa. La prima sfida è la breve durata della maggior parte dei prodotti sul mercato. Ad esempio, la durata media di un prodotto Fast-Moving Consumer Goods (FMCG) è compresa tra tre e cinque anni. Ciò implica che una grande parte del catalogo di prodotti potrebbe non esistere nemmeno per un intero anno, complicando l’applicazione della stagionalità.

Vermorel introduce il concetto di “distorsione temporale” nella stagionalità, facendo riferimento ai cambiamenti nei modelli stagionali dovuti a vari fattori. I cambiamenti nei modelli meteorologici possono incoraggiare i consumatori a iniziare i loro acquisti invernali prima o più tardi del solito. Il clima politico e il sentiment dei consumatori possono influenzare anche il momento degli acquisti, come lo shopping natalizio. Questi cambiamenti possono distorcere i tipici modelli stagionali, rendendo la previsione una sfida.

Successivamente, parla dell’interferenza di modelli aggiuntivi con la stagionalità. Vermorel sottolinea l’importanza di distinguere tra queste influenze esterne e le vere tendenze stagionali. Approfondisce come affrontare le sfide causate dalla mancanza di dati storici per una parte significativa di un catalogo. Propone una prospettiva collettiva, identificando modelli stagionali comuni tra una serie di prodotti simili. Questo modello condiviso può essere applicato a nuovi prodotti, consentendo la previsione della stagionalità fin dal primo giorno, anche per i prodotti senza cronologia delle vendite.

In risposta a una domanda sulla previsione in condizioni meteorologiche incerte, Vermorel presenta il concetto di dynamic time warping. Tuttavia, ammette che l’implementazione del dynamic time warping è molto complessa, portando Lokad, come la comunità del riconoscimento vocale, a passare al deep learning per il loro motore di previsione.

Per differenziare tra domanda stagionale e picchi promozionali, Vermorel propone un approccio di decomposizione parametrica. Tuttavia, riconosce i limiti di questo metodo poiché i dati storici sono di solito intrecciati, rendendo difficile apprendere i modelli in modo indipendente.

Per affrontare questo problema, Vermorel propone due strategie. Prima di tutto, registrare tutti gli eventi che distorcono l’osservazione della domanda, inclusi promozioni, stockout e altri fattori che influenzano le vendite. In secondo luogo, utilizzare un setup di machine learning per apprendere tutti questi modelli congiuntamente, anziché cercare di apprenderli separatamente. Suggerisce che questo è il motivo per cui il deep learning è diventato popolare nella comunità del machine learning.

Vermorel riconosce la sfida di avere piena fiducia nei risultati a causa delle distorsioni dei dati. Tuttavia, sostiene che la maggior parte dei mercati ha molta inerzia e il passato recente è una ragionevole approssimazione del futuro prossimo.

Sottolinea anche l’importanza della stagionalità nella previsione della domanda, riconoscendo la sua stabilità ma sottolineando la sua non fissità. Ciò significa che la stagionalità può evolvere da un anno all’altro e un buon modello statistico dovrebbe essere in grado di prevedere questo tasso medio di evoluzione.

Conclusa la conversazione, Vermorel consiglia alle aziende che desiderano migliorare le loro approcci di previsione di tenere maggiormente conto della stagionalità e di passare a setup di machine learning, abbandonando i vecchi metodi che richiedono la creazione manuale di profili di stagionalità. Il machine learning consente il mantenimento automatico dei bucket stagionali, con un miglioramento dell’accuratezza nel tempo.

Trascrizione completa

Kieran Chandler: Joannes, spesso parliamo della stagionalità come uno dei modelli fondamentali che vengono applicati per migliorare l’accuratezza delle previsioni. Ma cosa intendiamo effettivamente con questo? Quali sono i modelli fondamentali?

Joannes Vermorel: La stagionalità è uno dei principali modelli ciclici. Ci sono tre cicli principali, che sono il periodo dell’anno, il giorno della settimana e l’ora del giorno. Questi sono i tre principali. Poi ci sono un paio di cicli secondari come l’effetto dello stipendio, che è fondamentalmente un modello ciclico mensile in cui si verificano effetti legati al pagamento delle persone o a eventi che accadono all’inizio o alla fine del mese. Poi, ci sono cose come la Pasqua, il Ramadan, il Capodanno cinese, che io definirei una quasi-stagionalità. Questi eventi accadono ogni anno, ma non esattamente nello stesso periodo dell’anno, almeno secondo il calendario gregoriano. Abbiamo tutti questi modelli ciclici e la stagionalità è uno dei più importanti. Oltre ai cicli, abbiamo la base della domanda, la tendenza di quanto le cose stanno crescendo o diminuendo nel tempo e infine la quantità di rumore statistico, che è anche un modello molto importante. È necessario comprendere realmente la variabilità e determinare se ciò che si sta osservando è rumore o un vero modello statistico.

Kieran Chandler: Parliamo quindi della stagionalità stessa. Perché è qualcosa con cui le persone hanno difficoltà? Sembra piuttosto ovvio sapere che a Natale le vendite aumenteranno e durante le festività si vedranno vendite diverse per cose diverse. Quindi, perché è qualcosa con cui le persone hanno difficoltà?

Joannes Vermorel: La stagionalità è difficile da gestire correttamente. Esaminiamo le sfide. La prima sfida è che la maggior parte dei prodotti ha una breve durata sul mercato. La durata media di un prodotto FMCG è di circa tre o cinque anni. Ciò significa che se si vendono prodotti che in media durano tre anni sul mercato, significa che la metà dei prodotti ha solo un anno e mezzo di esistenza. Si ha addirittura un terzo dei prodotti che ha meno di un anno. Quindi, se si vuole avere un modello stagionale ingenuo, un modello statistico in cui si dice che le vendite che farò per il prossimo Natale saranno simili a quelle che ho fatto per il Natale precedente, beh, si scopre che per un terzo dei prodotti non c’è stato un Natale precedente. Non si ha alcun riferimento. Quindi, la prima sfida è che a causa della novità del prodotto sul mercato, si finisce con una parte significativa del catalogo che non ha un anno di esistenza. Diciamo, ad esempio, per i pezzi di ricambio per auto, che tendono ad avere una durata più lunga di circa sei anni, anche in questo caso, un sesto dei prodotti non ha nemmeno un anno di vendite. Quindi, non si sarà in grado di applicare questa bella stagionalità a una parte considerevole del catalogo. Questo è uno dei problemi che affrontiamo con la stagionalità.

Kieran Chandler: Quali sono alcuni degli altri problemi che affrontiamo con la stagionalità?

Joannes Vermorel: Un altro problema è che la stagionalità non è necessariamente esattamente la stessa da un anno all’altro. Sì, il Natale è il 25 dicembre ogni anno, ma se si passa da un anno all’altro, la stagione natalizia, dal punto di vista di un commerciante.

Kieran Chandler: Un anno, ha cominciato a fare molto freddo già ad ottobre, portando le persone a iniziare i loro acquisti invernali prima della stagione. Al contrario, a volte le temperature rimanevano miti per più tempo, quindi le persone iniziavano a comprare più tardi. A volte, persino il clima politico influisce sulle abitudini di acquisto. Ad esempio, se le persone sono molto preoccupate per il futuro, potrebbero decidere di posticipare gli acquisti natalizi all’ultimo minuto. Questi sono solo alcuni dei fattori che possono causare ciò che comunemente definiamo distorsione temporale. Si ha comunque il picco natalizio, ad esempio, ma l’inizio della stagione natalizia potrebbe variare di alcune settimane da un anno all’altro. Questo tipo di distorsione può verificarsi con tutti i modelli stagionali. Siete d’accordo?

Joannes Vermorel: Assolutamente, ed è probabilmente la seconda classe di problemi. La terza classe è che la vostra stagionalità è sfortunatamente influenzata da altri modelli. Cosa succede, ad esempio, se l’anno scorso a settembre avete avuto una grande promozione che non state ripetendo quest’anno? Non dovreste confondere l’impatto di quella promozione con la stagionalità. Dovete separare la stagionalità da altri modelli. E tutti questi cambiamenti combinati rendono la stagionalità molto più sfuggente rispetto a una situazione ingenua in cui si ha una stagionalità pura per un prodotto che è a lunga durata, stabile e tutto funziona senza intoppi.

Kieran Chandler: Parliamo quindi di come superare alcuni di questi problemi. Se non si dispone di dati storici per, diciamo, un terzo del vostro catalogo, è possibile utilizzare effettivamente la stagionalità per la previsione di quei prodotti?

Joannes Vermorel: Sì, ma è necessario iniziare a considerare i vostri prodotti come una collezione anziché esaminare i prodotti uno per uno. Quello che intendo è che diciamo che avete stivali invernali. Probabilmente ci sarà un modello stagionale condiviso per tutti quei prodotti. Potete ragionevolmente assumere che esista una stagionalità condivisa. Quindi, se potete identificare questa stagionalità condivisa, non importa se quest’anno state vendendo stivali invernali diversi rispetto all’anno scorso. Potreste dire: “So che per gli stivali invernali in generale, ho questo modello”. Pertanto, quando introduco un nuovo prodotto sul mercato, per il quale non ho alcuna cronologia di vendite, posso applicare un modello stagionale fin dal primo giorno. Posso riciclare qualcosa che si basava su un aggregato per tutti gli stivali invernali. L’idea chiave è guardare all’ampiezza dei prodotti anziché alla profondità della storia.

Kieran Chandler: Se state facendo previsioni mesi in anticipo, come potete sapere se l’estate sarà prolungata di un mese in più? Come potete prevedere questo?

Joannes Vermorel: Qui entriamo nella fase successiva, che è come affrontiamo tutte le distorsioni. Può essere fatto analiticamente, utilizzando una tecnica nota come dynamic time warping. Se le persone sono interessate, possono cercarlo su Wikipedia. Implementare dynamic time warping è estremamente complicato dal punto di vista del software. Circa 10 anni fa, la comunità del riconoscimento vocale, che stava facendo apprendimento automatico per il riconoscimento vocale, ha dovuto affrontare dynamic time warping. Hanno trovato troppo complicato, hanno rinunciato e sono passati all’apprendimento profondo. Curiosamente, Lokad ha fatto la stessa cosa per la stagionalità. Abbiamo implementato dynamic time warping nel nostro motore di previsione, ma alla fine abbiamo sostituito tutto con l’apprendimento profondo nell’ultima generazione dei nostri motori di previsione.

Kieran Chandler: Sembra molto fantascientifico, il time warping. Potresti darci una panoramica veloce?

Joannes Vermorel: La panoramica è che sai che la tua stagione probabilmente sta per finire presto, ma non sai esattamente quando. Tuttavia, puoi tener conto della variabilità.

Kieran Chandler: Abbiamo raggiunto la fine della stagione, quindi so che la domanda continuerà, ma molto più bassa. Tuttavia, com’è - un’analisi della stagionalità senza questo tipo di dynamic time warping? Cosa succede se la stagione finisce presto?

Joannes Vermorel: Quando la stagione finisce presto, hai la tua nuova base o livello, e secondo il tuo profilo di stagionalità, la domanda per la prima settimana di dicembre dovrebbe essere la metà dell’ultima settimana di agosto. Questo è il tuo profilo statico e rigido. Ma il problema è che se l’estate è finita presto e alla fine di agosto sei già fuori dalla stagione estiva, non vuoi dividere nuovamente la tua domanda per un fattore 2 nella prima settimana di settembre. Questo perché dalla fine di agosto alla prima settimana di settembre, la domanda stava diminuendo e ti trovi in una situazione in cui la domanda è già diminuita.

Il dynamic time warping è una tecnica che aiuta a evitare errori cumulativi quando la stagione inizia in ritardo o in anticipo e si applica il profilo di stagionalità due volte. Finisci per avere una prima diminuzione della domanda e poi riapplichi il tuo modello stagionale che sembra indicare che ci sarebbe una ulteriore diminuzione, o il contrario - la domanda è già aumentata a un nuovo plateau perché la stagione è iniziata presto, e poi riapplichi questo fattore in più. Il dynamic time-warping non prevede una transizione migliore tra le stagioni, ma ti permette di evitare questi errori cumulativi.

Kieran Chandler: Quindi, l’idea è che avrai lo stesso tipo di profilo di domanda, ma sarà compresso o allungato a seconda della stagione?

Joannes Vermorel: Esattamente.

Kieran Chandler: E poi, l’ultima cosa di cui abbiamo parlato sono state le fluttuazioni storiche dei dati e il fatto di non trasferire quelle fluttuazioni per la stagionalità di quest’anno. Come funziona effettivamente? Come non le si tiene in considerazione? Come si sa quale è la domanda stagionale e quale è solo una fluttuazione dovuta a una promozione o qualcosa del genere?

Joannes Vermorel: L’approccio classico per la previsione delle serie temporali è una decomposizione parametrica. Hai la tua storia della domanda e diciamo che di questa domanda, una certa quantità è fondamentalmente la base, una certa quantità è il fattore di stagionalità, una certa quantità può essere spiegata con la tendenza, ecc. Questo approccio è debole nel senso che vuoi essere in grado di imparare tutti i tuoi modelli in modo indipendente, ma la realtà è che nei tuoi dati storici, tutto è completamente mescolato insieme.

Ci sono almeno due aspetti di questo problema. Prima di tutto, devi registrare correttamente nei tuoi dati storici le tue promozioni, le tue mancanze di stock e tutti gli altri eventi che hanno influenzato non la domanda, ma la tua osservazione della domanda, che sono le vendite. Le vendite non sono equivalenti alla domanda. Ad esempio, quando vuoi fare una previsione, di solito vuoi dire: “Voglio fare una previsione della domanda al prezzo normale, non voglio fare una previsione della domanda al prezzo super scontato”. Ma quello che hai nella tua storia sono le tue vendite e le vendite sono distorte a causa delle promozioni e possibili mancanze di stock e altre cose.

Quindi la prima cosa è che devi registrare tutti i fattori che hanno distorto la tua percezione della domanda, il che è più complicato di quanto sembri. Molte aziende hanno una registrazione molto precisa di tutti gli eventi che hanno influenzato le loro vendite. Queste possono essere cose come se sei un’azienda di e-commerce, ricordare se un prodotto faceva parte della homepage o era in evidenza in una sezione, se un prodotto faceva parte di una newsletter, se c’erano movimenti di prezzo per i prodotti e anche se hai informazioni sulla concorrenza, ricordare il prezzo dei prodotti dei tuoi concorrenti.

Kieran Chandler: Hai detto che i concorrenti potrebbero aver causato una diminuzione della domanda, non perché avevi una mancanza di stock, ma perché stavano facendo una grande promozione e tu non hai allineato il tuo prezzo al loro. Questo spiegherebbe una diminuzione della domanda.

Joannes Vermorel: Sì, è una parte della ricetta. La seconda parte è la necessità di un setup di machine learning in cui è possibile imparare congiuntamente tutti questi pattern. Il machine learning moderno non cerca di imparare i pattern statistici in modo isolato. Non si impara prima la stagionalità, poi la tendenza, poi l’effetto promozionale. Invece, si ha un modello che cerca di catturare tutti questi pattern contemporaneamente. Ciò significa che il modello ha bisogno della capacità di imparare una vasta gamma di pattern. Richiede un modello molto espressivo. Ecco perché molte persone nella comunità del machine learning hanno abbracciato il deep learning. È un approccio che può generare un modello in grado di catturare una vasta gamma di pattern.

Kieran Chandler: Continui a parlare di distorsioni. Sembra che ci siano così tanti modi possibili per distorcere i dati, rendendo la stagionalità molto difficile da implementare. Possiamo davvero avere piena fiducia nei risultati dati il potenziale di distorsioni nei dati?

Joannes Vermorel: Assolutamente, e la domanda è, quanto il passato ti permette di prevedere il futuro? Questa è l’assunzione fondamentale alla base della previsione statistica della domanda. Purtroppo, il futuro non può sempre essere previsto dal passato. Tuttavia, questo non è del tutto vero quando parliamo di previsioni che riguardano alcuni mesi in avanti. La maggior parte dei mercati ha molta inerzia. Il passato recente è ancora una ragionevole approssimazione del futuro prossimo. Ecco su cosa facciamo leva.

I pattern stagionali sono relativamente forti. Si vedono in tutte le questioni umane. Tutto segue questo ciclo annuale ed è probabilmente stato così per migliaia di anni. Gli esseri umani sono creature di abitudine e queste forti abitudini si riflettono in quasi tutte le serie temporali che rappresentano le questioni umane.

Ad esempio, il numero di passeggeri degli aerei seguirà una curva annuale. La quantità di latte acquistata in un determinato giorno dell’anno avrà una curva di stagionalità. Lo stesso vale per l’acquisto di videogiochi, il consumo di elettricità e così via.

Questi pattern sono stati molto stabili e possono essere sfruttati. Ma c’è sempre una certa incertezza irriducibile sul futuro.

Kieran Chandler: Abbiamo discusso dell’approccio probabilistico nell’ottimizzazione della supply chain. Da quanto ho capito, questo approccio può gestire anche la stagionalità. Puoi approfondire come affronta i cambiamenti nei pattern stagionali da un anno all’altro?

Joannes Vermorel: Certamente. Il nostro modello statistico è progettato per adattarsi alla stagionalità in evoluzione. Sebbene potremmo non essere in grado di prevedere cambiamenti esatti, possiamo prevedere il tasso medio di evoluzione. Ciò ci consente di introdurre la giusta quantità di incertezza nelle nostre previsioni. È importante ricordare che queste previsioni sono distribuzioni di probabilità che incorporano il pattern di stagionalità. Tuttavia, questa non è una rappresentazione perfetta. C’è un certo grado di incertezza in termini di ampiezza. Consideriamo quanto sarà l’aumento durante le stagioni di picco, così come il momento di questi picchi. È davvero una combinazione di questi due fattori.

Kieran Chandler: Ha molto senso. Mentre concludiamo, potresti dirci quali passi le aziende possono compiere per migliorare il loro approccio alla previsione, soprattutto per quanto riguarda la stagionalità?

Joannes Vermorel: Beh, la prima cosa che mi viene in mente è che entrino in contatto con noi di Lokad! Scherzi a parte, penso che il passo più significativo sarebbe passare a setup di machine learning. L’approccio tradizionale alla gestione della stagionalità prevede la creazione manuale di profili di stagionalità. Fondamentalmente, si raggruppano i prodotti in categorie in base alla stagionalità condivisa. Questo metodo, tuttavia, si basa molto sull’input umano ed è difficile da mantenere nel tempo.

Kieran Chandler: Potresti approfondire i problemi di questo approccio tradizionale?

Joannes Vermorel: Certo. Il problema principale non è necessariamente che le supposizioni dell’esperto siano sbagliate. Un esperto di supply chain potrebbe effettivamente valutare correttamente che un gruppo di prodotti condivide la stessa stagionalità. Il problema è che nel tempo, mantenere questo sistema diventa un incubo. Ogni volta che si lancia un nuovo prodotto, è necessario assicurarsi che cada nella categoria giusta. Sebbene il clustering iniziale possa essere buono, tende a degenerare e diventare inefficiente nel tempo.

Kieran Chandler: Quindi, come aiuta il passaggio al machine learning in questo caso?

Joannes Vermorel: Con un setup di machine learning, è possibile mantenere automaticamente le categorie stagionali. Ciò migliorerà significativamente la precisione perché le categorie, anche se non perfette, non degenereranno nel tempo. Vengono rigenerate ogni volta che ne hai bisogno.

Kieran Chandler: Molto interessante. Purtroppo, dobbiamo concludere qui per oggi. Grazie per il tuo tempo, Joannes.

Joannes Vermorel: Prego, è stato un piacere.

Kieran Chandler: Questo è tutto per questa settimana. Torneremo la prossima settimana con un altro episodio. Fino ad allora, grazie a tutti per aver guardato.