Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.
-
Upload
gina-aiello -
Category
Documents
-
view
230 -
download
1
Transcript of Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.
![Page 1: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/1.jpg)
Analisi esplorativa con Weka
Esercitazione Data Mining 08/10/2008
![Page 2: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/2.jpg)
Obiettivi
Introduzione del tool Weka Analisi di un caso studio: Churn
![Page 3: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/3.jpg)
Weka Dataset Rappresentazione:
Su file: formato ARFF In Weka: Instances
Il formato arff ha due distinte sezioni Intestazione (Metadati)
@relation (nome della relazione) @attribute (lista degli attributi)
Corpo @data (le istanze)
![Page 4: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/4.jpg)
ARFF: tipi di dati
Numeric, Real @attribute <name> numeric @attribute <name> real
Nominal Specification, lista di valori: @attribute <name> {<nominal-name1>, <nominal-name2>,…}
String: @attribute <name> string
Date: @attribute <name> date [<date-format>]
Relational @attribute <name> relational
<further attribute definitions>
@end <name>
![Page 5: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/5.jpg)
Esempio di file ARFF
![Page 6: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/6.jpg)
Weka Sono disponibili quattro modalità
Simple CLI Linea di comando
Explorer Versione grafica di base
Experimenter Parte sperimentale con collegamento a
JDBC KnowledgeFlow
Versione drag and drop
![Page 7: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/7.jpg)
Weka
![Page 8: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/8.jpg)
Explorer
Nella sezione in alto sono visibili le operazioni disponibili
![Page 9: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/9.jpg)
Preprocessing
Distribuzioni in funzionedella classe selezionata
Apertura Dataset
Attributi del dataset
Tipo di Filtro da applicare
![Page 10: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/10.jpg)
Caso studio: Churn
E’ un dataset disponibile presso l’UCI Repository
Contiene 20 attributi e 3333 tuple Le informazioni sono relative al
fenomeno dell’attrition di una compagnia telefonica
![Page 11: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/11.jpg)
Dettagli (1/3) State: categorico, codici relativi ai 50 stati USA
più quello del distretto della Columbia Account length: integer, tempo di vita totale
dell’account Area code: categorico Phone number: essenzialmente si comporta
alla stregua di un ID International Plan: binario dicotomico, yes o
no VoiceMail Plan: binario dicotomico, yes o no Number of voice mail messages: integer
![Page 12: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/12.jpg)
Dettagli (2/3) Total day minutes: continuo, minuti usati dal
cliente durante il giorno Total day calls: integer Total day charge: continuo, probabilmente
basato su due precedenti variabili Total evening minutes: continuo, minuti usati
dal cliente durante la sera Total evening calls: integer Total evening charge: continuo,
probabilmente basato su due precedenti variabili
![Page 13: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/13.jpg)
Dettagli (3/3) Total night minutes: continuo, minuti usati dal
cliente durante la notte Total night calls: integer Total night charge: continuo, probabilmente
basato su due precedenti variabili Total international minutes: minuti usati dal
cliente per fare chiamate internazionali Total international calls: integer Total international charge: continuo,
probabilmente basato su due precedenti variabili
Number of calls to customer service: integer
![Page 14: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/14.jpg)
Correlazione tra variabili (1/3) Il dataset contiene 3 variabili
potenzialmente correlate: minutes, calls, and charge.
La descrizione dei dati indica che la variabile charge può essere funzione di minutes e call.
Per valutare possibili correlazioni possiamo utilizzare lo scatter plot.
![Page 15: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/15.jpg)
Correlazione tra variabili (2/3)
Esempio: day charge e day mins
![Page 16: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/16.jpg)
Correlazione tra variabili (3/3)
In weka è disponibile il Matrix Plot rispetto alle diverse combinazioni tra variabili
![Page 17: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/17.jpg)
Analisi Esplorativa degli Attributi Categorici
In questa fase è interessante indagare come questi attributi si distribuiscano rispetto alla variabile obiettivo
![Page 18: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/18.jpg)
Analisi Esplorativa degli Attributi Categorici
International Plan
![Page 19: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/19.jpg)
Analisi Esplorativa degli Attributi Categorici In figura è mostrato un confronto tra la
percentuale di churners (rosso) e nonchurners (blu) tra i clienti che avevano scelto il piano internazionale (sì, 9,69% dei clienti) o no (no, 90,31% dei clienti) .
Il grafico sembra indicare che una buona percentuale di coloro i quali hanno un piano internazionale sono “churning”, ma è difficile esserne sicuri.
![Page 20: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/20.jpg)
Cross Tabulation su International Plan
International Plan
Churn No Yes
False. 2664 186
True. 346 137
Nella tabella è mostrato il risultato della cross-tabulazione.
![Page 21: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/21.jpg)
Analisi (1/2) Si noti che la somma dei valori contenuti nella
prima colonna coincide col numero totale di coloro i quali non erano titolari del piano internazionale, 3010 (2664 + 346) ; viceversa dicasi per la seconda colonna.
La prima riga nella tabella mostra il numero di coloro i quali non abbandonano la loro compagnia, mentre la seconda riga mostra viceversa i rinunciatari.
Il dataset contiene un totale di 483 (346 + 137) churners rispetto ai 2850 (2664 + 186) non-churners; ossia il 14,5% (483 / (483 + 2.850)) dei clienti totali sono churners.
![Page 22: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/22.jpg)
Analisi (2/2) Si noti che il 42,4% (137 / (137 + 186)) di coloro i quali
che sono titolari di un piano internazionale sono anche churned, rispetto al solo 11.5% (346 / (346 + 2.664)) di coloro che non ne sono titolari.
I clienti che hanno selezionato il piano internazionale e che abbandonano la loro compagnia sono percentualmente il triplo rispetto a quelli che non lo hanno selezionato.
Questa analisi sul piano internazionale indica che: Forse dovremmo indagare sulle cause che inducono i clienti
con un piano internazionale a lasciare la loro compagnia! Quello che ci aspettiamo è che utilizzando un algoritmo di
data mining per prevedere l’abbandono del servizio, il modello utilizzerà la presenza o meno del piano internazionale nel profilo del cliente per prevedere l’abbandono.
![Page 23: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/23.jpg)
Analisi Esplorativa degli Attributi Categorici
VoiceMail Plan
![Page 24: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/24.jpg)
Cross Tabulation su VoiceMail Plan
Nella tabella è mostrato il risultato della cross-tabulazione.
VoiceMail Plan
Churn No Yes
False. 2008 842
True. 403 80
![Page 25: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/25.jpg)
Analisi (1/2) Prima di tutto, possiamo notare che 922 (842 +
80) clienti hanno il piano VoiceMail, mentre il 2411 (2008 + 403) non lo hanno.
Possiamo quindi individuare che il 16.7%
(403/2411) di coloro i quali non possiedono il piano VoiceMail sono churners, rispetto allo 8,7% (80/922) dei clienti che hanno il piano VoiceMail.
In prima istanza possiamo dire che i churners senza la tariffa VoiceMail sono percentualmente il doppio rispetto ai churners con questo piano.
![Page 26: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/26.jpg)
Analisi (2/2) Questa analisi del piano VoiceMail
ha indicato che: Forse dovremmo diffondere
maggiormente questa tariffa al fine di migliorare la fidelizzazione.
Ci aspettiamo che un qualsiasi algoritmo di data mining, per predire churn, tenga in considerazione l’attributo che indica la presenza del piano tariffario VoiceMail
![Page 27: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/27.jpg)
Dati Anomali Area code
Numerico nella rappresentazione, ma in realtà è un valore nominale (codice di un area geografica)
Presenta solo tre possibili valori (408, 415 e 510)
![Page 28: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/28.jpg)
Dati Anomali
I codici corrispondono ad aree geografiche presenti in california
Problema: La cross tabulation con state ci indica
che quei codici sono sparsi su tutti gli stati membri degli USA
![Page 29: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/29.jpg)
Dati Anomali
![Page 30: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/30.jpg)
Dati Anomali E’ possibile che un esperto di dominio
sia in grado di spiegare questa situazione o che effettivamente che il campo contenga dati errati.
In prima analisi decidiamo di omettere l’attributo
![Page 31: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/31.jpg)
Analisi Esplorativa degli Attributi Numerici
Per l’analisi ovvero la valutazione degli attributi numerici saranno utilizzate alcune misure come:
Il massimo, il minimo, la media, la deviazione standard, e la mediana.
![Page 32: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/32.jpg)
Analisi Esplorativa degli Attributi Numerici
Massimo Minimo Media Dev. St. Mediana
Account Length 243 1 101,0648 39,81613 101
VMail Message 51 0 8,09901 13,68631 0
Day Mins 350,8 0 179,7751 54,45922 179,4
Day Calls 165 0 100,4356 20,06607 101
Day Charge 59,64 0 30,56231 9,258045 30,5
Eve Mins 363,7 0 200,9803 50,70624 201,4
Eve Calls 170 0 100,1143 19,91964 100
Eve Charge 30,91 0 17,08354 4,310021 17,12
Night Mins 395 23,2 200,872 50,56626 201,2
Night Calls 175 33 100,1077 19,56567 100
Night Charge 17,77 1,04 9,039325 2,275531 9,05
Intl Mins 20 0 10,23729 2,791421 10,3
Intl Calls 20 0 4,479448 2,460845 4
Intl Charge 5,4 0 2,764581 0,75366 2,78
CustServ Calls 9 0 1,562856 1,315294 1
![Page 33: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/33.jpg)
Analisi Esplorativa degli Attributi Numerici In prima istanza possiamo osservare
che il campo Account Length ha come valore minimo 1, come valore massimo 243, mentre media e mediana assumono valori all’incirca uguali (101)
Tale valori ci indicano una simmetria nei dati
Le stesse osservazioni si possono effettuare su diversi campi, tra cui tutti i minutes, charge, e call.
![Page 34: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/34.jpg)
Analisi Esplorativa degli Attributi Numerici Gli altri campi voice mail messages e
customer service calls non sembrano mostrare alcuna simmetria. In particolare:
La mediana per voice mail messages è zero, ciò sta ad indicare che almeno metà dei cliente non hanno messaggi voicemail.
Questo risultato, naturalmente, indica che meno della metà dei clienti scelgono il piano VoiceMail, come visto sopra.
![Page 35: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/35.jpg)
Analisi Esplorativa degli Attributi Numerici
La media di chiamate al servizio clienti (1.563) è superiore alla mediana (1.0), mostrando una certa simmetria destra, come anche indicato dal numero massimo di chiamate il servizio clienti ossia 9.
![Page 36: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/36.jpg)
Analisi Esplorativa degli Attributi Numerici
![Page 37: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/37.jpg)
Analisi Esplorativa degli Attributi Numerici I clienti che hanno chiamato il servizio clienti meno di
tre volte hanno un tasso marcatamente inferiore a quello dei clienti che hanno chiamato il servizio clienti di quattro o più volte.
Queste analisi sulle chiamate al servizio clienti hanno indicato che:
Dobbiamo monitorare attentamente il numero di chiamate al servizio clienti per ciascun cliente. Alla terza chiamata, dovrebbero essere offerti forti incentivi per conservare fidelizzazione dei clienti.
Ci dobbiamo aspettare che qualunque algoritmo di data mining che usiamo per prevedere se il cliente è churn, probabilmente utilizzera il numero di chiamate al servizio clienti per effettuare la predizione.
![Page 38: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/38.jpg)
Riassunto dei risultati dell’analisi condottaAccount length Nessuna ovvia relazione con churn, ma mantenuto
Area code Anomalo. Omesso dal modello.
Phone number Si comporta come un ID. Omesso dal modello.
International Plan Predittivo di Churn. Mantenuto.
VoiceMail Plan Predittivo di Churn. Mantenuto.
Number of voice mail messages Nessuna ovvia relazione con churn, ma mantenuto
Total day minutes Predittivo di Churn. Mantenuto.
Total day calls Nessuna ovvia relazione con churn, ma mantenuto
Total day charge Funzione di minutes. Omesso dal modello.
Total evening minutes Predittivo di Churn. Mantenuto.
Total evening calls Nessuna ovvia relazione con churn, ma mantenuto
Total evening charge Funzione di minutes. Omesso dal modello.
Total night minutes Nessuna ovvia relazione con churn, ma mantenuto
Total night calls Nessuna ovvia relazione con churn, ma mantenuto
Total night charge Funzione di minutes. Omesso dal modello.
Total international minutes Nessuna ovvia relazione con churn, ma mantenuto.
Total international calls Nessuna ovvia relazione con churn, ma mantenuto
Total international charge Funzione di minutes. Omesso dal modello.
Customer service calls Predittivo di Churn. Mantenuto.
![Page 39: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/39.jpg)
Binning Il binning è un insieme di tecniche volte alla
categorizzazione dei dati: Discretizzazione di dati numerici in classi
Esempio 1: possiamo suddividere l’attributo day minutes in tre classi: low, medium, high
Esempio 2: possiamo suddividere le età di una popolazione nelle classi: bambino, adulto, anziano
Raggruppamento di dati categorici in classi Esempio: possiamo decidere di raggruppare i valori
dell’attributo state in macro regioni, e di sostiuire quest’ultimo con un nuovo attributo che chimeremo region. Quindi i valori “California”, “Oregon”, “Washington”, “Alaska” e “Hawai” verranno convertiti nel singolo valore “Pacific”, ad indicare che per la nostra analisi serve solo sapere la regione territoriale di interesse e non il singolo stato di appartenenza (stiamo aumentando la granularità)
![Page 40: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/40.jpg)
Binning Il binning è un insieme di tecniche a cavallo tra
l’analisi ed il pre – processamento dei dati. Esistono tante strategie per il binning di dati
numerici: Creare classi di uguale estensione, così come
abbiamo visto per gli istogrammi di uguale estensione (equal-width histograms).
Provare a creare classi che contengano lo stesso numero di tuple.
Provare a suddividere in range i valori degli attributi in funzione della variabile target.
In questo modo cerchiamo di identificare comportamenti comuni all’interno dei dati che riferiscono ad uno stesso valore di attributo target
![Page 41: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/41.jpg)
Binning sull’esempio proposto Come presentato prima i clienti, che hanno
effettuato meno di 4 chiamate al servizio clienti, hanno un tasso di abbandono più basso di quelli che hanno chiamato il servizio clienti 4 o più volte.
Potremmo decidere di raggruppare I valore di customer service calls in due classi: low e high.
![Page 42: Analisi esplorativa con Weka Esercitazione Data Mining 08/10/2008.](https://reader036.fdocument.pub/reader036/viewer/2022081505/5542eb59497959361e8c475e/html5/thumbnails/42.jpg)
Binning sull’esempio proposto Questa figura mostra che il tasso di abbandono
degli utenti con un basso numero di chiamate al servizio utenti è di 11.25%, mentre il tasso di abbandono degli altri utenti è del 51.69%, 4 volte più grande.