Previsione tramite Deep Learning (2018)
Dalla previsione probabilistica al deep learning

Per caso, si scopre che il deep learning tende ad essere fortemente orientato verso le previsioni probabilistiche per design. Tuttavia, la motivazione per questa prospettiva era del tutto non correlata alle preoccupazioni delle catene di approvvigionamento. Gli algoritmi di deep learning favoriscono l’ottimizzazione basata su una prospettiva probabilistica / bayesiana con metriche come l’entropia incrociata perché queste metriche forniscono enormi valori di gradiente che sono particolarmente adatti per la discesa del gradiente stocastica, l’algoritmo “uno” che rende possibile il deep learning.
Nel caso specifico delle catene di approvvigionamento, accade che le fondamenta del deep learning siano pienamente allineate con i requisiti effettivi del business!
Oltre l’hype dell’intelligenza artificiale
L’intelligenza artificiale - alimentata dal deep learning nella pratica - è stata la parola di moda dell’anno nel 2017. Le affermazioni sono audaci, avvincenti e, beh, sfocate. Dal punto di vista di Lokad, osserviamo che la maggior parte di queste tecnologie AI aziendali non sta corrispondendo alle aspettative. Molte poche aziende possono garantire oltre mezzo miliardo di USD di finanziamenti, come Instacart, per radunare un team di deep learning di classe mondiale al fine di affrontare con successo una sfida nelle catene di approvvigionamento.
Con questo rilascio, Lokad sta rendendo accessibile la tecnologia di previsione di grado AI a qualsiasi azienda ragionevolmente “digitalizzata”. Ovviamente, il tutto è ancora alimentato dai dati storici delle catene di approvvigionamento, quindi i dati devono essere accessibili a Lokad, ma la nostra tecnologia non richiede alcuna competenza nel deep learning. A differenza di praticamente tutte le tecnologie AI aziendali, Lokad non si basa sull’ingegneria manuale delle caratteristiche. Per quanto riguarda i nostri clienti, il passaggio dalle nostre precedenti previsioni probabilistiche al deep learning sarà senza soluzione di continuità. Lokad è la prima azienda software a fornire una tecnologia di previsione di grado AI pronta all’uso, accessibile sia alle piccole imprese di e-commerce con un solo dipendente che alle più grandi reti di catene di approvvigionamento che possono includere migliaia di sedi e un milione di riferimenti di prodotti.
L’era del calcolo GPU

(*) Per insiemi di dati ultra-piccoli, il nostro motore di previsione di quinta generazione è effettivamente più lento e richiede alcuni minuti in più - il che è in gran parte trascurabile nella pratica.
Lanci di prodotti e promozioni
Il nostro motore di previsione di quinta generazione porta miglioramenti sostanziali alle situazioni di previsione difficili, in particolare i lanci di prodotti e le promozioni. Dal nostro punto di vista, i lanci di prodotti, sebbene molto difficili, rimangono leggermente più facili delle previsioni sulle promozioni. La differenza nella difficoltà è determinata dalla qualità dei dati storici, che è inevitabilmente inferiore per le promozioni rispetto ai lanci di prodotti. I dati sulle promozioni migliorano nel tempo una volta che sono in atto i processi di garanzia di qualità adeguati.
In particolare, vediamo l’apprendimento profondo come un’opportunità enorme per i marchi di moda che stanno lottando con i lanci di prodotti che dominano le loro vendite: lanciare un nuovo prodotto non è l’eccezione, è la regola. Poi, poiché le varianti di colore e taglia gonfiano notevolmente il numero di SKU, la situazione diventa ancora più complessa.
Le nostre FAQ sulle previsioni
Quali modelli di previsione state utilizzando?
Il nostro motore di previsione profondo utilizza un singolo modello costruito sui principi dell’apprendimento profondo. A differenza dei modelli statistici classici, è un modello che presenta decine di milioni di parametri addestrabili, che sono circa 1000 volte più parametri rispetto al nostro modello di machine learning non profondo più complesso precedente. L’apprendimento profondo supera nettamente gli approcci di machine learning più vecchi (foreste casuali, alberi potenziati con gradienti). Tuttavia, vale la pena notare che questi approcci di machine learning più vecchi stavano già superando tutti i classici delle serie temporali (Box-Jenkins, ARIMA, Holt-Winters, smoothing esponenziale, ecc.).
Imparate dagli errori di previsione?
Sì. Il processo di addestramento statistico - che alla fine genera il modello di apprendimento profondo - sfrutta tutti i dati storici disponibili a Lokad. I dati storici sono sfruttati attraverso un processo noto come backtesting. Quindi, più dati storici sono disponibili per il modello, più opportunità ha il modello di imparare dai propri errori.
Il vostro motore di previsione gestisce la stagionalità, le tendenze, i giorni della settimana?
Sì, il motore di previsione gestisce tutte le ciclicità comuni e anche le quasi-ciclicità, il cui importo è spesso sottovalutato. Per quanto riguarda il codice, il modello di apprendimento profondo utilizza intensamente un approccio a serie temporali multiple per sfruttare le ciclicità osservate in altri prodotti, al fine di migliorare l’accuratezza delle previsioni di un dato prodotto. Naturalmente, due prodotti possono condividere la stessa stagionalità, ma non lo stesso pattern dei giorni della settimana. Il modello è in grado di catturare questo pattern. Inoltre, uno dei principali vantaggi dell’apprendimento profondo è la capacità di catturare correttamente la variabilità della stagionalità stessa. Infatti, una stagione può iniziare prima o dopo a seconda di variabili esterne, come il tempo, e queste variazioni vengono rilevate e riflessi nelle nostre previsioni.
Di quali dati avete bisogno?
Come era il caso con la nostra precedente generazione di tecnologia di previsione, per prevedere la domanda, il motore di previsione ha bisogno di essere fornito - almeno - con la domanda storica giornaliera, e fornire un storico degli ordini disaggregato è ancora meglio. Per quanto riguarda la lunghezza della storia, più lunga è, meglio è. Mentre nessuna stagionalità può essere rilevata con meno di 2 anni di storia, consideriamo 3 anni di storia buoni e 5 anni eccellenti. Per prevedere i tempi di consegna, il motore richiede tipicamente che gli ordini di acquisto contengano sia le date degli ordini che le date di consegna. Specificare gli attributi del vostro prodotto o SKU aiuta a raffinare considerevolmente le previsioni. Inoltre, fornire i livelli di stock è anche molto utile per noi, per ottenere una prima analisi significativa dello stock per voi.
Potete prevedere il mio foglio Excel?
Come regola generale, se tutti i vostri dati rientrano in un foglio Excel, allora di solito non possiamo fare molto per voi, e onestamente, nessuno può farlo. I dati del foglio di calcolo sono probabilmente aggregati per settimana o per mese, e la maggior parte delle informazioni storiche finisce per essere persa attraverso tale aggregazione. Inoltre, in questo caso, il vostro foglio di calcolo non conterrà nemmeno molte informazioni sulle categorie e le gerarchie che si applicano ai vostri prodotti. Il nostro motore di previsione sfrutta tutti i dati che avete, e fare un test su un piccolo campione non darà risultati soddisfacenti.
Cosa succede con le mancanze di stock e le promozioni?
Sia le mancanze di stock che le promozioni rappresentano un bias nelle vendite storiche. Poiché l’obiettivo è prevedere la domanda, e non le vendite, questo bias deve essere preso in considerazione. Un modo frequente - ma non corretto - di gestire questi eventi consiste nel riscrivere la storia, per riempire i vuoti e troncare i picchi. Tuttavia, non ci piace questo approccio, perché consiste nel fornire previsioni al motore di previsione, il che può comportare gravi problemi di sovradattamento. Invece, il nostro motore supporta nativamente “flags” che indicano dove la domanda è stata censurata o gonfiata.
Prevedete nuovi prodotti?
Sì, lo facciamo. Tuttavia, per prevedere nuovi prodotti, il motore richiede le date di lancio degli altri “vecchi” prodotti, nonché la loro domanda storica al momento del lancio. Inoltre, specificare alcune delle categorie dei vostri prodotti e/o una gerarchia di prodotti è consigliato. Il motore prevede effettivamente nuovi prodotti rilevando automaticamente i “vecchi” prodotti, che possono essere considerati comparabili ai nuovi. Tuttavia, poiché non è ancora stata osservata alcuna domanda per i nuovi articoli, le previsioni si basano interamente sugli attributi ad essi associati.
Utilizzate dati esterni per raffinare le previsioni?
Possiamo utilizzare dati sui prezzi della concorrenza tipicamente ottenuti attraverso aziende di terze parti specializzate nello scraping web, ad esempio. I dati sul traffico web possono anche essere utilizzati e, eventualmente, acquisiti, per arricchire i dati storici al fine di migliorare ulteriormente l’accuratezza statistica. In pratica, il più grande ostacolo nell’utilizzo di fonti di dati esterni non è il motore di previsione Lokad - che è piuttosto capace - ma l’allestimento e il mantenimento di un data pipeline di alta qualità collegato a tali fonti di dati esterni.