• Non ci sono risultati.

Clustering delle anomalie

La primissima attività di clustering ha avuto come oggetto le bolle caratterizzate da anomalia, in appendice si riporta la query SQL utilizzata per la creazione del dataset iniziale. Il dataset così prodotto, è stato sottoposto a due fasi successive di data preparation mediante le quali sono prima stati creati i Geo point, in previsione di una rappresentazione grafica dei clusters su una mappa, e poi rimosse le colonne ritenute non necessarie o potenziali fonti di disturbo ai fini del clustering.

Più in particolare, per quanto riguarda questa seconda fase di data preparation, sono stati eliminati gli attributi relativi:

 Ai campi chiave.

 Alle date esatte di carico, scarico e previsto scarico.  Ai geo point creati nella fase precedente.

 Alla latitudine e alla longitudine esatta di carico e scarico, a partire dalle quali sono stati creati i geo point, (da intendersi sia come punto esatto che in termini di provincia, regione, nazione o continente di carico e scarico).

Le informazioni presenti in questi attributi sono quindi state escluse per quel che riguarda la computazione dell’algoritmo di clustering ma sono poi state reintrodotte quando, al termine della computazione, ogni singola riga è stata associata ad un cluster. Operazione resa lecita e possibile dal fatto che non sono state intraprese operazioni che comportassero l’eliminazione di record dal dataset iniziale.

L’immagine seguente mostra il flusso utilizzato.

Come è noto l’algoritmo K-means presenta il problema della scelta del numero K di cluster, problema che nasce dal fatto che tale scelta va fatta prima dell’esecuzione dell’algoritmo stesso. Il primo passo da compiere consiste quindi nel determinare il valore ottimale di K.

Più in particolare due misure sono state adottate per contrastare il problema della scelta del numero di centroidi, una prima misura, rappresentata dall’Elbow Method, adottata a priori e una seconda misura, rappresentata dall’Average Silhouette Method, adottata in un’ottica di certificazione della scelta effettuata.

Più in dettaglio l’elbow method consiste nella determinazione del Error Sum of Squares

(SSE) calcolato come:

= ( − ̅)

Dove xi rappresenta l’i esima rilevazione e ̅ rappresenta il centroide a cui xi viene

assegnato dall’algoritmo.

L’idea dell’elbow method è quella di scegliere il numero di cluster in corrispondenza di un calo repentino dell’SSE, cosa che produrrà un “gomito” nel grafico, da qui appunto il nome di elbow method.

L’intero approccio è stato condotto su Knime, poiché su Dataiku non è stato possibile estrarre i centroidi dei cluster determinati dall’algoritmo, e ha previsto la valutazione della bontà di 11 valori diversi di K. L’immagine seguente mostra il workflow utilizzato per la determinazione dei valori di SSE.

Figura 6.2: Workflow per la determinazione dell’SSE

Il grafico seguente mostra infine l’andamento dell’SSE al variare di K.

Figura 6.3: Andamento dell’SSE al variare di K

Come si può osservare dalla tabella sulla sinistra in corrispondenza di K=5 si osserva un crollo del valore di SSE, si conclude quindi che 5 è il numero ottimale di cluster da

La bontà della scelta effettuata viene certificata dal secondo metodo adottato, l’average silhouette method. L’idea di quest’ultimo approccio è quella di scegliere il valore di K in cui si ottiene il massimo valore medio della Silhouette.

Il grafico seguente mostra l’andamento della silhouette per gli 11 valori di K analizzati in precedenza.

Figura 6.4: Andamento della silhouette al variare di K

Come si può osservare in occorrenza di K=5 si registrano valori prossimi al massimo che si registra per K=2 e per questo motivo scartato.

L’immagine seguente mostra il modello finale di clustering selezionato.

Per quanto riguarda l’aspetto legato all’interpretazione dei cluster prodotti dall’algoritmo, una volta terminata la sua esecuzione, ci si è avvalsi della heatmap che dataiku produce in automatico al termine di ogni esecuzione di un algoritmo di clustering. Questo strumento, in particolare, presenta, dato il valore di un attributo, la sua percentuale media globale, la percentuale di cluster che presenta quel valore nell’attributo e infine la variazione percentuale, positiva o negativa, rispetto alla media. L’immagine seguente ha lo scopo di chiarire quanto appena espresso.

Figura 6.6: Heatmap per l’interpretazione dei cluster prodotti dal modello

Ad esempio, il 75% del cluster etichettato come “Altri motivi di anticipo dovuti al corriere” presenta nel suo attributo “descr_causale” il valore “Altri motivi di anticipo dovuti al corriere” a fronte di una percentuale media del 22,83% con un incremento del 228,78%.

Operando in questo modo sono stati individuati i seguenti 5 clusters:  Mancanza da collo misto.

 Chiuso per ferie/lavori/prodotto.

 Altri motivi di anticipo dovuti al corriere.  Altri motivi di ritardo dovuti al corriere.  Altro.

Per i quali si provvede di seguito a dare una descrizione e a sottolinearne i tratti salienti.

Mancanza da collo misto

Sono anomalie aventi “Plant Sesto Teseosardo” come ente di carico, Frosinone come provincia di carico e “Morelli Group” come trasportatore. Presentano una modalità di spedizione a temperatura controllata, hanno come regioni di scarico il Lazio, la Sicilia, la Campania, la Puglia, la Calabria, le Marche e l’Abruzzo, ossia tutta la fascia centro- meridionale della penisola, e si manifestano esclusivamente nel primo e nel secondo trimestre dell’anno.

Chiuso per ferie/lavori/prodotto

Sono anomalie aventi “Plant Mircoligure” come ente di carico prevalente, Lodi come provincia di carico e “Morelli Group” come trasportatore. Presentano una modalità di spedizione a temperatura controllata, hanno come regioni di scarico la Lombardia e la Liguria e si manifestano esclusivamente nel terzo e nel quarto trimestre dell’anno.

Altri motivi di anticipo dovuti al corriere

Sono anomalie aventi “Plant Elsaa Mare” come ente di carico, Bergamo come provincia di carico e “Riva, De Rosa and Ferrari” come trasportatore. Presentano una modalità di spedizione con camion, hanno come regioni di scarico il Veneto, il Piemonte, l’Emilia, il Trentino e il Friuli, ovvero tutta la fascia settentrionale della penisola, e si manifestano prevalentemente nel primo e nel secondo trimestre dell’anno, ma anche nel terzo e quarto seppur con percentuali molto più basse.

Altri motivi di ritardo dovuti al corriere

Sono anomalie aventi “Plant Sesto Teseosardo” come ente di carico, Frosinone come provincia di carico e “Morelli Group” come trasportatore. Presentano una modalità di spedizione a temperatura controllata, hanno come regioni di scarico il Lazio, la Sicilia, la Campania, la Puglia, la Calabria, le Marche e l’Abruzzo, ossia tutta la fascia centro- meridionale della penisola, e si manifestano esclusivamente nel terzo e nel quarto trimestre dell’anno.

Altro

Sono anomalie per le quali non si è riusciti a identificare una causale avente una netta prevalenza sulle altre.

Altro algoritmo di clustering preso in considerazione è il DBSCAN per il quale tuttavia non si è riusciti a determinare gli opportuni paramenti relativi alla distanza tra i punti (ε) e al minino numero di punti q che circonda un dato punto p. I risultati ottenuti sono quindi altamente negativi e per questa ragione non sono stati presi in considerazione sia per il clustering delle anomalie che per le successive attività di clustering.

L’attività di clustering sulle anomalie così effettuata è stata poi ripetuta sullo stesso dataset dal quale però è stato ricavato il giorno della settimana di consegna e di spedizione dalle rispettive date.

I risultati ottenuti sono i medesimi di quelli sopra con l’aggiunta tuttavia di un nuovo elemento conoscitivo. La heatmap prodotta evidenzia infatti come nel cluster “Altri motivi di anticipo dovuti al corriere” si abbia un notevole incremento rispetto alla media, di oltre il 120%, del valore 7, che corrisponde al Sabato, nell’attributo “day_of_week_scarico”. Questo nuovo elemento così emerso lascia ampiamente intendere come esista una forte concentrazione delle anomalie legate a motivi di anticipo dovuti al corriere in un particolare giorno della settimana, il Sabato.

Documenti correlati