Fase 2: preparazione dei dati
Una volta ottenuti dati non elaborati, devi gestire le complicazioni, ad esempio i dati mancanti, e preparare i dati per i modelli di previsione per acquisire al meglio l'interpretazione prefissata.
Come gestire i dati mancanti
Un elemento comune nei problemi di previsione reali consiste nell'esistenza di valori mancanti nei dati non elaborati. Un valore mancante in una serie temporale significa che l'effettivo valore corrispondente in ogni momento alla frequenza specificata non è disponibile per l'ulteriore elaborazione. I motivi per cui i valori vengono contrassegnati come mancanti possono essere diversi.
I valori mancanti possono essere dovuti all'assenza di transazioni o a possibili errori di misurazione, ad esempio perché un servizio che monitora certi dati non ha funzionato correttamente o perché non è stato possibile eseguire correttamente la misurazione. L'esempio principale di quest'ultima circostanza nel caso di studio per la vendita al dettaglio è una situazione di esaurimento delle scorte nella previsione della domanda, per cui la domanda non equivale alle vendite nel giorno specifico.
Effetti simili possono verificarsi in scenari di cloud computing quando un servizio raggiunge un limite, ad esempio se le istanze Amazon EC2
Valori mancanti possono essere inseriti anche da componenti di elaborazione delle caratteristiche, per garantire la stessa lunghezza delle serie temporali con il padding. Se numerosi, i valori mancanti possono avere un forte impatto sulla precisione di un modello.
Esempio 1
Il riempimento è il processo di aggiunta di valori standardizzati alle voci mancanti nel set di dati. La figura seguente mostra le diverse strategie per gestire i valori mancanti in Amazon Forecast (riempimento in avanti, centrale, all'indietro e futuro), per l'articolo 2 in un set di dati di tre articoli.
Amazon Forecast supporta il riempimento per serie temporali di destinazione e correlate. La data di inizio globale è definita come la prima data di inizio rispetto alle date di inizio di tutti gli articoli nel set di dati. Nell'esempio seguente la data di inizio globale è in corrispondenza dell'articolo 1. Analogamente, la data di fine globale è definita come l'ultima data di fine della serie temporale di tutti gli articoli, in corrispondenza dell'articolo 2.
Il riempimento in avanti immette ogni valore dall'inizio della serie temporale specifica fino alla data di inizio globale. Al momento della pubblicazione di questo documento, Amazon Forecast non attiva alcun riempimento in avanti e permette l'inizio delle serie temporali in momenti diversi. Il riempimento centrale indica i valori che sono stati immessi a metà della serie temporale, ad esempio tra le date di inizio e di fine degli articoli, mentre il riempimento all'indietro immette i valori dall'ultima data della serie temporale alla data di fine globale.
Per le serie temporali di destinazione, i metodi di riempimento centrale e all'indietro hanno la logica predefinita di riempimento a zero. Il riempimento futuro, che si applica solo a serie temporali correlate, immette qualsiasi valore mancante tra la data di fine globale degli articoli e l'orizzonte di previsione specificato dal cliente. I valori futuri sono obbligatori per il set di dati delle serie temporali correlate con Prophet eDeepAR+ e facoltativi per CNN-QR.

Strategie di gestione dei valori mancanti in Amazon Forecast
Nella figura precedente la data di inizio globale indica la prima data di inizio rispetto alle date di inizio di tutti gli articoli, mentre la data di fine globale indica l'ultima data di fine rispetto alle date di fine di tutti gli articoli. L'orizzonte di previsione è il periodo durante il quale Forecast fornisce previsioni per il valore di destinazione.
Si tratta di uno scenario comune nel caso di studio per la vendita al dettaglio, che rappresenta zero vendite per i dati transazionali per gli articoli disponibili. Questi valori vengono gestiti come veri zeri e usati nel componente di valutazione delle metriche. Amazon Forecast permette all'utente di identificare i valori effettivamente mancanti e di codificarli come diversi da numeri (NaN, Not a Number) durante l'elaborazione da parte degli algoritmi. Questo articolo esamina i motivi per cui i due casi differiscono e quando ognuno è utile.
Nel caso di studio per la vendita al dettaglio l'informazione indicante che un rivenditore ha venduto zero unità di un articolo disponibile differisce da quella che specifica che sono state vendute zero unità di un articolo non disponibile, nei periodi oltre la sua esistenza (ad esempio, prima della sua introduzione o dopo la sua obsolescenza) o durante la sua esistenza (ad esempio, quando è parzialmente non disponibile o quando non sono stati registrati dati di vendita per l'intervallo di tempo). Il riempimento a zero predefinito è applicabile in questo primo caso. Nell'ultimo caso, anche se il valore di destinazione corrispondente è in genere zero, il valore contrassegnato come mancante comunica informazioni aggiuntive. La best practice consiste nel preservare le informazioni indicanti dati mancanti anziché eliminarle. Fai riferimento all'esempio seguente per un'illustrazione del motivo per cui è importante mantenere le informazioni.
Amazon Forecast supporta logica di riempimento di altri tipi, tra cui valore, media, mediano, minimo e massimo. Per le serie temporali correlate, ad esempio prezzo o promozione, non sono specificati valori predefiniti per i metodi di riempimento centrale, all'indietro o futuro, perché la logica corretta per i valori mancanti varia in base al tipo di attributo e al caso d'uso. La logica di riempimento supportata per le serie temporali correlate include zero, valore, media, mediano, minimo e massimo.
Per eseguire il riempimento dei valori mancanti, specifica i tipi di riempimento da implementare quando chiami l'operazione CreatePredictor
. La logica di riempimento è specificata in oggetti FeaturizationMethod
. Ad esempio, per codificare un valore che non rappresenta zero vendite di un prodotto non disponibile nella serie temporale di destinazione, puoi contrassegnare un valore come effettivamente mancante impostando il tipo di riempimento su NaN. A differenza del riempimento a zero, i valori codificati con NaN vengono considerati effettivamente mancanti e non vengono usati nel componente di valutazione delle metriche

Effetto del riempimento a zero rispetto al riempimento tramite NaN sulle previsioni per lo stesso articolo
Nel grafico a sinistra nella figura precedente i valori a sinistra della linea verticale nera vengono riempiti con 0, producendo una previsione con distorsione per difetto (a destra della linea verticale nera). Nel grafico a destra questi valori sono contrassegnati come NaN, producendo previsioni appropriate.
Esempio 2
La figura precedente mostra l'importanza di una corretta gestione dei valori mancanti per un modello spaziale lineare, come ARIMA o ETS. Il grafico rappresenta la previsione della domanda per un articolo parzialmente esaurito. L'area di addestramento viene mostrata nel grafico a sinistra in verde, l'intervallo di previsione nel riquadro a destra in rosso e l'effettiva destinazione in nero. Le previsioni mediana, p10 e p90 vengono mostrate rispettivamente nella linea rossa e nell'area ombreggiata. La parte inferiore mostra gli articoli esauriti (80% dei dati) in rosso. Nel grafico a sinistra le aree relative all'esaurimento degli articoli vengono ignorate e riempite con 0.
In questo modo, i modelli di previsione presuppongono la presenza di molti zeri da stimare e di conseguenza le previsioni sono troppo basse. Nel grafico a destra le aree relative all'esaurimento degli articoli vengono considerate informazioni effettivamente mancanti e la domanda diventa incerta in questa regione. Quando i valori mancanti per gli articoli non disponibili sono contrassegnati correttamente come NaN, l'intervallo di previsione in questo grafico non mostra una distorsione per difetto. Amazon Forecast colma queste lacune nei dati, semplificando la corretta gestione dei dati mancanti, senza dover modificare esplicitamente tutti i dati di input.
Concetti relativi alla caratterizzazione e alle serie temporali correlate
Amazon Forecast permette agli utenti di immettere dati correlati per migliorare la precisione di alcuni modelli di previsione supportati. Questi dati possono essere di due tipi: serie temporali correlate o metadati statici degli articoli.
Nota
I metadati e i dati correlati sono noti come caratteristiche nell'ambito del machine learning e covariate in statistica.
Le serie temporali correlate sono serie temporali che hanno una correlazione con il valore di destinazione e dovrebbero conferire una certa efficacia alla previsione nel valore di destinazione, perché forniscono una spiegazione in termini intuitivi. Per un esempio, consulta Amazon Forecast: predicting time-series at scale
In Amazon Forecast puoi aggiungere due tipi di serie temporali correlate: serie temporali cronologiche e serie temporali orientate al futuro. Le serie temporali correlate cronologiche contengono punti dati fino all'orizzonte di previsione e nessuno all'interno dell'orizzonte di previsione nel futuro. Le serie temporali correlate orientate al futuro contengono punti dati fino all'orizzonte di previsione e al suo interno.

Diversi approcci all'uso di serie temporali correlate con Amazon Forecast
Esempio 3
La figura seguente mostra un esempio di un possibile uso delle serie temporali correlate per prevedere la futura domanda di un libro di successo. La linea blu rappresenta la domanda nella serie temporale di destinazione. Il prezzo è indicato dalla linea verde. La linea verticale rappresenta la data di inizio della previsione e le previsioni ai due quantili vengono mostrate a destra della linea verticale.
Questo esempio usa una serie temporale correlata orientata al futuro in linea con la serie temporale di destinazione per il livello di dettaglio della previsione ed è nota in tutti i momenti (o nella maggior parte) nel futuro nell'intervallo tra la data di inizio della previsione fino alla data di inizio della previsione incrementata dall'orizzonte di previsione (data di fine della previsione).
La figura seguente mostra anche che il prezzo è una caratteristica utile da usare, in quanto possiamo osservare le correlazioni tra una riduzione del prezzo e un aumento delle vendite del prodotto. Le serie temporali correlate possono essere fornite ad Amazon Forecast tramite un file CSV separato, contenente lo SKU dell'articolo, il timestamp e i valori della serie temporale correlata (in questo caso, il prezzo).
Amazon Forecast supporta metodi di aggregazione, come media e sommatoria, per le serie temporali di destinazione, ma non per le serie temporali correlate. Ad esempio, non ha molto senso sommare un prezzo giornaliero a un prezzo settimanale e lo stesso vale per le promozioni giornaliere.
Amazon Forecast può incorporare automaticamente le informazioni sul meteo e sulle festività in un modello includendo set di dati caratterizzati predefiniti (consulta SupplementaryFeature
). Le informazioni sul meteo e le festività possono influire notevolmente sulla domanda al dettaglio.

Vendite di un articolo specifico (in blu, a sinistra della linea verticale rossa)
I metadati degli articoli, noti anche come variabili categoriche, sono altre caratteristiche utili che possono essere immesse in Amazon Forecast. Per un esempio, consulta Amazon Forecast: predicting time-series at scale