Questa esercitazione fornisce un esempio di un'azienda di cataloghi, interessata a prevedere le vendite mensili della sua linea di abbigliamento maschile, sulla base di 10 anni di dati di vendita.
Nell'esercitazione Previsione dell'utilizzo della larghezza di banda si è appreso come l'Expert Modeler possa decidere quale sia il modello più appropriato per le serie temporali. Ora è il momento di dare un'occhiata più da vicino ai due metodi disponibili quando si sceglie un modello: lo smoothing esponenziale e l'ARIMA.
Per consentire di decidere il modello appropriato, è utile tracciare prima
le serie temporali. L'analisi visiva di una serie temporale può rendere più semplice la
decisione. In particolare, è necessario chiedersi?
La serie presenta una tendenza generale? In questo caso, la tendenza è
costante o sembra attenuarsi nel tempo.
La serie presenta caratteristiche di stagionalità? In questo caso, le
fluttuazioni stagionali crescono con il passare del tempo oppure sono costanti
nei periodi successivi?
Anteprima del tutorial
Copy link to section
Guardate questo video per vedere in anteprima i passaggi di questa esercitazione. L'interfaccia utente mostrata nel video potrebbe presentare lievi differenze. Il video è destinato ad accompagnare l'esercitazione scritta. Questo video fornisce un metodo visivo per apprendere i concetti e le attività di questa documentazione.
Prova il tutorial
Copy link to section
In questa esercitazione, completerete questi compiti:
Questa esercitazione utilizza il flusso Previsione delle vendite del catalogo nel progetto di esempio. Il file di dati utilizzato è catalog_seasfac.csv. L'immagine seguente mostra il flusso del modellatore di esempio.
Figura 1. Flusso del modellatore di campioni
L'immagine seguente mostra il set di dati di esempio.Figura 2. Dataset di esempio
Compito 1: Aprire il progetto di esempio
Copy link to section
Il progetto campione contiene diversi set di dati e flussi di modellazione di esempio. Se non si dispone già del progetto di esempio, consultare l'argomento Tutorial per creare il progetto di esempio. Seguite quindi i passaggi seguenti per aprire il progetto campione:
In watsonx, dal menu di navigazione, scegliete Progetti > Visualizza tutti i progetti.
Fare clic su ProgettoSPSS Modeler.
Fare clic sulla scheda Assets per visualizzare i set di dati e i flussi del modellatore.
Controllare i propri progressi
L'immagine seguente mostra la scheda Assets del progetto. Ora si è pronti a lavorare con il flusso del modellatore di esempio associato a questa esercitazione.
Seguire i passi seguenti per utilizzare un nodo Time plot per visualizzare i dati:
Aggiungere un nodo grafico Tempo:
Nella palette dei nodi, espandere la sezione Grafici.
Trascinare il nodo grafico Tempo sull'area di disegno.
Collegare il nodo Tipo al nuovo nodo Tempo.
Fare doppio clic sul nodo grafico Tempo per impostarne le proprietà.
Nella sezione Serie, fare clic su Aggiungi colonne.
Selezionare il campo uomini.
Fare clic su OK.
Selezionare Usa etichetta campo asse x personalizzata.
Per il 'Etichetta asse X, selezionare 'data.
Deselezionare l'opzione Normalizza.
Fare clic su Salva.
Passare il mouse su '[men] v. data e fare clic sull'icona Esegui.
Nel riquadro Output e modelli, fare clic sui risultati con il nome '[men] v. data per visualizzare il grafico.
La serie mostra una tendenza generale al rialzo; vale a dire, i
valori della serie tendono ad aumentare con il passare del tempo. La tendenza al rialzo appare costante, pertanto si tratta di una tendenza
lineare.
La serie inoltre presenta un andamento stagionale chiaro, con picchi annuali
nel mese di dicembre, come indicano le linee verticali del grafico. Le
variazioni stagionali sembrano aumentare parallelamente alla tendenza rialzista
della serie, il che suggerisce una stagionalità moltiplicativa piuttosto che
additiva.
Una volta identificate le caratteristiche dalla serie, è
possibile iniziare ad eseguirne la modellazione. Il metodo di livellamento esponenziale è utile per calcolare previsioni di
serie che evidenziano caratteristiche tendenziali, stagionali o entrambe. Come visto in precedenza, questi dati presentano entrambe le caratteristiche.
Controllare i propri progressi
L'immagine seguente mostra un grafico. Ora si è pronti a costruire il modello.
La creazione di un modello di livellamento esponenziale adatto
comporta la determinazione del tipo di modello (se il modello deve
contenere tendenze, stagionalità o entrambi) e quindi l'acquisizione dei
parametri più appropriati per il modello scelto.
Il grafico delle vendite di abbigliamento maschile
nel corso del tempo suggerisce l'impiego di un modello con una componente di
tendenza lineare e una componente di stagionalità moltiplicativa. Queste caratteristiche implicano un modello di Winters. Prima, però, si esplora un modello semplice (senza trend e senza stagionalità) e poi un modello di Holt (che incorpora un trend lineare ma senza stagionalità). In questo modo si riuscirà a identificare un modello non adatto ai dati,
competenza fondamentale per una corretta creazione di modelli.
Seguite questi passaggi per costruire un semplice modello di smoothing esponenziale:
Fare doppio clic sul nodo Uomini (serie temporali) per visualizzarne le proprietà.
Espandere la sezione Osservazioni e intervallo di tempo e impostare queste proprietà:
Verificare che l'ora/data sia impostata sulla data.
Verificare che l'intervallo di tempo sia impostato su Mesi.
Espandere la sezione Opzioni di costruzione - generale e impostare queste proprietà:
Verificare che il metodo sia impostato su Smoothing esponenziale.
Verificare che il Tipo di modello sia impostato su Semplice.
Fare clic su Salva.
Fare clic su Esegui tutto.
Nel riquadro Output e modelli, fare clic sui risultati di output con il nome 'Grafico temporale di [men $TS-men] v. data per visualizzare il grafico.
Il plot
men rappresenta i dati effettivi, mentre
$TS-men indica il modello di serie
temporale.Figura 3. Modello di livellamento esponenziale semplice
Sebbene il modello semplice mostri in effetti una tendenza graduale (e piuttosto ponderosa) all'aumento, non tiene conto della stagionalità. Questo modello può essere quindi scartato.
Ora provate un modello lineare di Holt. Questo dovrebbe almeno modellare la tendenza meglio del modello semplice, anche se è improbabile che riesca a cogliere la stagionalità.
Fare doppio clic sul nodo Uomini (serie temporali) e impostare queste proprietà:
Espandere la sezione Opzioni di costruzione - generale.
Impostare il tipo di modello sul trend lineare di Holt.
Fare clic su Salva.
Fare clic su Esegui tutto.
Nel riquadro Output e modelli, fare clic sui risultati di output con il nome 'Grafico temporale di [men $TS-men] v. data per visualizzare il grafico.
Il modello di Holt visualizza una tendenza al rialzo più lineare
rispetto al modello semplice, ma anche questo non considera la stagionalità,
per cui anche questo modello può essere scartato.
Figura 4. Modello Tendenza lineare di Holt
Si ricorderà che la rappresentazione grafica iniziale delle vendite di
abbigliamento maschile nel corso del tempo suggeriva l'utilizzo di un modello
con una componente di tendenza lineare e una componente di stagionalità
moltiplicativa. Pertanto, il modello di Winters potrebbe essere più indicato.
Fare doppio clic sul nodo Uomini (serie temporali) e impostare queste proprietà:
Espandere la sezione Opzioni di costruzione - generale.
Impostare il tipo di modello su moltiplicativo di Winters.
Fare clic su Salva.
Fare clic su Esegui tutto.
Nel riquadro Output e modelli, fare clic sui risultati di output con il nome 'Grafico temporale di [men $TS-men] v. data per visualizzare il grafico.
Questo modello sembra migliore. Il modello riflette la tendenza e la
stagionalità dei dati. L'insieme di dati copre un periodo di 10 anni e mostra 10 picchi stagionali in
corrispondenza del mese di dicembre di ogni anno. I 10 picchi presenti nei risultati previsti corrispondono ai 10 picchi annuali
nei dati reali.
Tuttavia, i risultati evidenziano anche i limiti della procedura di
livellamento esponenziale. Osservando i picchi verso l'alto e verso il basso, una
struttura significativa non viene considerata.
Se si è principalmente interessati alla modellazione di una tendenza di
lungo termine con variazioni stagionali, il metodo del livellamento
esponenziale può essere adeguato. Per modellare una struttura più complessa come questa, è necessario considerare l'utilizzo della procedura ARIMA.
Figura 5. Modello moltiplicativo di Winters
Controllare i propri progressi
L'immagine seguente mostra il flusso. Ora siete pronti a costruire un modello ARIMA.
Con la procedura ARIMA, è possibile creare un modello ARIMA
(autoregressive integrated moving-average) adatto per la modellazione
ottimizzata delle serie temporali.
I modelli ARIMA offrono metodi più sofisticati per la modellazione delle
componenti di tendenza e stagionalità rispetto ai modelli di livellamento
esponenziale con l'ulteriore vantaggio di poter includere nel modello
variabili predittore.
Continuando l'esempio dell'azienda di cataloghi che vuole sviluppare un modello di previsione, avete visto come l'azienda abbia raccolto dati sulle vendite mensili di abbigliamento maschile insieme a diverse serie che potrebbero essere utilizzate per spiegare alcune delle variazioni delle vendite. I predittori possibili includono il numero di cataloghi inviati per posta e il
numero delle pagine nel catalogo, il numero di linee telefoniche aperte per le
ordinazioni, la spesa sostenuta per la pubblicità a mezzo stampa e il numero
dei rappresentanti del servizio di assistenza clienti.
Qualcuno di questi predittori è utile per le previsioni? Un modello che
include i predittori è realmente migliore di un modello privo di predittori? Utilizzando la procedura ARIMA, è possibile creare un modello di previsione con predittori e verificare se esiste una differenza significativa nella capacità predittiva rispetto al modello di smoothing esponenziale senza predittori.
Con il metodo ARIMA, è possibile perfezionare il modello specificando gli ordini di autoregressione, differenziazione e media mobile, nonché le controparti stagionali di queste componenti. Determinare manualmente i valori migliori per questi componenti può essere un processo che richiede molto tempo e che comporta una buona dose di tentativi ed errori; pertanto, per questo esempio, si specifica che il modellatore esperto sceglierà un modello ARIMA per voi.
Successivamente, si costruisce un modello migliore trattando alcune delle altre variabili del set di dati come variabili predittive. I predittori che sembrano più utili sono il numero di cataloghi inviati per
posta (mail), il numero di pagine nel catalogo
(page), il numero di linee telefoniche aperte per le
ordinazioni (phone), la spesa sostenuta per le pubblicità a
mezzo stampa
(print) ed il numero di rappresentanti del servizio di
assistenza clienti
(service).
Seguite questi passaggi per costruire un modello ARIMA:
Fare doppio clic sul nodo Tipo per impostarne le proprietà.
Verificare che il ruolo dei campi Posta, Pagina, Telefono, Stampa e Assistenza sia impostato su Ingresso.
Verificare che il ruolo per gli uomini sia impostato su Target.
Impostare il ruolo per tutti i campi rimanenti su Nessuno.
Fare clic su Salva.
Fare doppio clic sul nodo Uomini (serie temporali) e impostare queste proprietà:
Espandere la sezione Opzioni di costruzione - generale.
Impostare il Metodo su Modellatore esperto.
Impostare il 'Tipo di modello su 'Solo modelli ARIMA.
Selezionare l'opzione Modellatore esperto considera i modelli stagionali.Figura 6. Scegliere solo modelli ARIMA
Fare clic su Salva.
Fare clic su Esegui tutto.
Nel riquadro Output e modelli, fare clic sul modello con il nome men per visualizzare i dettagli del modello.
Nella pagina Modelli, fare clic su uomini nella colonna Destinazione.
Fare clic sulla pagina Informazioni sul modello. Notare
che
Expert Modeler ha scelto solo due dei cinque predittori specificati come
significativi per il modello.Figura 7. Expert Modeler sceglie due predittori
Chiudere le due finestre del modello.
Nel riquadro Output e modelli, fare clic sui risultati di output con il nome 'Grafico temporale di [men $TS-men] v. data per visualizzare il grafico.
Questo modello è migliore rispetto a quello precedente in quanto
coglie anche il grande picco discendente; per questo risulta il modello più
adatto fra quelli presi in considerazione finora.
Figura 8. Modello ARIMA con predittori specificati
In seguito, è possibile perfezionare ulteriormente il modello, ma da questo momento in poi i miglioramenti saranno probabilmente minimi. Avendo stabilito che il modello ARIMA con predittori è preferibile, utilizziamo questo modello per prevedere le vendite dell'anno successivo.
Chiudere la finestra del grafico.
Fare doppio clic sul nodo Uomini (serie temporali) e impostare queste proprietà:
Espandere la sezione Opzioni modello.
Selezionare l'opzione Estendi i record nel futuro e impostare il valore su '12.
Selezionare l'opzione Calcola i valori futuri degli
input.
Fare clic su Salva.
Fare clic su Esegui tutto.
Nel riquadro Output e modelli, fare clic sui risultati di output con il nome 'Grafico temporale di [men $TS-men] v. data per visualizzare il grafico.
La previsione sembra accettabile. Come previsto, dopo il picco di dicembre si assiste a un ritorno ai normali livelli di vendita e a una costante tendenza al rialzo nella seconda metà dell'anno, con vendite in generale migliori di quelle dell'anno precedente.
Controllare i propri progressi
L'immagine seguente mostra un grafico che utilizza il modello ARIMA.
È stata correttamente modellata una serie temporale complessa,
inserendo non solo una tendenza verso l'alto, ma anche dati stagionali ed
altre variazioni. Inoltre, è stato illustrato come, attraverso prove ed errori, è possibile
migliorare costantemente la precisione del modello, che può essere
quindi utilizzato per la previsione delle vendite future.
In pratica, è necessario riapplicare il modello quando i dati di vendita effettivi vengono aggiornati, ad esempio ogni mese o ogni trimestre, e produrre previsioni aggiornate.