UNIVERSITÀ DI PISA Corsi di Laurea Specialistica in Ingegneria Informatica per la Gestione d Azienda e Ingegneria Informatica Data Mining in SAP A cura di: Alessandro Ciaramella
La Business Intelligence Profitto Conoscenza Informazione Dati 2 Processi Tecnologie Strumenti
I Passi della Business Intelligence 3 Fonte: Norbert Egger & al., Business Intelligence, SAP PRESS (2007)
Il Data Mining 4 Un processo iterativo Per scoprire regolarità e relazioni In grandi quantità di dati Per un risultato chiaro, utile e riusabile
Un processo iterativo Processo Standardizzato dal CRISP-DM 5
Il Modulo SAP APD Permette di sviluppare processi di analisi di Data Mining Fonte: sap.com 6
Il Processo di Data Mining in SAP 7
1st Step: Selection of Data 8 I dati possono essere prelevati da una grande quantità di sorgenti:
2nd step: Preparation 9 Permette di manipolare i dati per renderli adatti alle analisi dei metodi di data mining
3td Step: Transformation 10 Rappresentano metodi potenti di analisi dei dati:
4th Step: Saving / Trasferring 11 I dati possono essere salvati in diverse strutture: Oppure possono essere utilizzati per addestrare i modelli di data mining o generare le Regole di Associazione
I Metodi di Data Mining 12 Decision Tree Cluster Analysis Regression Analysis Association Rules
Decision Tree A A=w A=x B 13 B B B<θ Class 1 A=z A=y B θ Class 2 Class 3
Generare un Albero di Decisione test test... 14 test......
Algoritmo CLS Proposto da Hunt (1966) Base della maggior parte degli algoritmi Sia T il training set non vuoto e {C, C,, C } le classi a cui appartengono le unità 1 2 1.Tutte le unità appartengono alla stessa classe 2.L'insieme T è vuoto 3.L'insieme T contiene unità di classi diverse Selezione della variabile per test Partizione di T in sottoinsiemi T e ricorsione i 15 k
Il Problema dell Overfitting 16 L obiettivo è riuscire a classificare in modo corretto anche dati non appartenenti al training set. In modo intuitivo è facile capire che alberi più semplici riescono a generalizzare meglio di alberi complessi, con tanti test sulle variabili di ingresso.
Algoritmi ID3 e C4.5 17 Proposti da Quinlan (1986 e 1993) Il C4.5 estende gli alberi ai domini quantitativi Basati sull algoritmo CLS Tecnica di sampling del training set Selezione della variabile guidata dall'information Gain
L'Information Gain L'information Gain di una variabile A rispetto a una variabile X è un indicatore di quanto la conoscenza di A può influire sulla conoscenza di X: IG(X,A) = H(X) H(X A) Dove H() rappresenta l'entropia informatica, una misura dell'incertezza legata a una variabile statistica (Shannon, 1948) 18
Pruning La potatura è guidata da una misura del tasso di errore dell albero nel classificare campioni non precedentemente visti. 19 prepruning: si decide di fermarsi a un certo nodo, anche se l insieme dei campioni non appartiene tutto a un unica classe postpruning: la potatura è effettuata sull albero completamente generato, agendo retrospettivamente sulla sua struttura
Decision Tree in SAP 20
L'Algoritmo in SAP 21 Utilizza una variante dell algoritmo C4.5
I Risultati della Classificazione 22
Applicazione 23 Problema: Predire quando l income di una persona supera una certa soglia in base ai dati relativi al censo. Decision Tree: 86,17% successo in test set
Cluster Analysis 24 Segmenta un insieme di oggetti in gruppi tali che: Oggetti molto simili tra loro appartengano allo stesso gruppo Oggetti di gruppi diversi siano molto diversi tra loro
Il Processo di Clustering Fonte: Halkidi (2001) 25
Cluster Analysis in SAP 26 Utilizza una variante del k-means Estende il dominio alle variabili qualitative
Le Dimensioni dello Spazio 27 Ciascun attributo rappresenta una o più dimensioni nello spazio di ricerca Alle variabili quantitative e qualitative ordinate viene assegnata una dimensione Alle variabili qualitative non ordinate viene assegnata una dimensione per ogni modalità che possono assumere (binarizzazione)
Algoritmo di Clustering: passo 1 Calcolo dei Centroidi Iniziali 28 Attraverso un campionamento casuale, l insieme dei dati iniziali viene diviso in k parti; Per ciascuna parte, su alcuni dei campioni rappresentati come vettori viene calcolata la media aritmetica che rappresenterà le coordinate del punto centroide.
Algoritmo di Clustering: passo 2 Attribuzione degli Oggetti ai Cluster 29 Ogni campione viene assegnato al cluster il cui centroide ha la distanza euclidea minima dal campione stesso.
Algoritmo di Clustering: passo 3 Nuovo Calcolo dei Centroidi 30 I centroidi vengono calcolati in base alle appartenenze stabilite nel passo precedente. In particolare, alcuni campioni vengono selezionati a caso e la loro media rappresenterà le coordinate del nuovo punto centroide.
Algoritmo di Clustering: passo 4 Condizioni di Stop 31 L algoritmo torna al passo due (attribuzione degli oggetti ai cluster) finchè le condizioni di stop non vengono soddisfatte.
Configurazione dei Parametri 32
La Validazione dei Risultati 33 Ottenuta una partizione dei dati, è importante controllare che questa non sia stata prodotta artificialmente dall algoritmo ma corrisponda alla struttura effettiva dei dati. Una buona partizione ha cluster ben separati tra loro e compatti al loro interno.
L'Indice Xie-Beni Al numeratore: compattezza Al denominatore: separazione Piccoli valori di Xie-Beni buone partizioni 34
La Validazione in SAP 35 Non è presente alcun indicatore sintetico della bontà dei risultati ottenuti Possiamo utilizzare alcune informazioni di riepilogo fornite dal sistema per ottenere un approssimazione dell indice di Xie-Beni
La Compattezza 36 Attraverso l Intra Cluster Distance Graph si può risalire alla distanza media tra gli elementi appartenenti a un cluster e il suo centroide.
La Separazione 37 Visualizzando il modello secondo la sintassi PMML è possibile accedere alle coordinate di ogni cluster
Applicazione 1/2 Problema: classificare un insieme di individui in gruppi omogenei, attraverso l analisi delle caratteristiche del loro censo Guidati dall indice Xie-Beni, abbiamo trovato la migliore partizione in tre gruppi 38 Variabili utilizzate: sex, income, relationship, education, age
Applicazione 2/2 39 Problema: predire la classe di appartenenza di una pianta di iris, raggruppando i campioni in base ai loro dati biologici Cluster Analysis: si ottiene una corretta classificazione nel 96% dei casi
Regression Analysis y = f(x, θ) + ε 40 Stima i parametri dell equazione che lega le variabili predittrici con la variabile risposta La variabile da predire è di tipo continuo e non un identificatore di classe
La Regressione Lineare y=α+β x+ε La risposta è funzione lineare dei parametri Errore: Metodo dei minimi quadrati 41
Regressione Non Lineare Equazione della regressione non lineare: y = f(x, θ) + ε 42 Per stimare i parametri non c è un metodo generale, ma sono necessari algoritmi specifici di ricerca operativa
Alcune Definizioni 43 Da cui SST = SSR + SSE Coefficiente di Determinazione:
Regression Analysis in SAP 44 Effettua regressioni sia di tipo lineare sia di tipo non lineare Accetta predittori qualitativi, generando un equazione per ogni combinazione dei loro valori
Regressione Lineare in SAP 45 Per stimare i parametri dell equazione di regressione utilizza il metodo dei minimi quadrati
Regressione non Lineare in SAP Attraverso spline di ordine uno y x 46
Linearizzazione Locale 47 Per ogni variabile predittrice quantitativa è necessario stabilire un intervallo di linearizzazione in modo automatico o manuale (specificando le soglie):
I Risultati del Modello 48 Il sistema fornisce come indicatore di bontà la radice quadrata del coefficiente di determinazione: Pericolo di sovrastimare la capacità di analisi raggiunta
Applicazione 49 Problema: predire il numero di anelli della conchiglia di un mollusco note alcune sue misure fisiche Regression Analysis: 45,40% di successo con margine di errore ± 1 unità.
Association Rules Scoprono relazioni nascoste tra gli attributi (local pattern) La conoscenza indotta è mantenuta sotto forma di regole del tipo: Se {Antecedente} allora {Conseguente} 50
Market Basket Analysis Rappresenta l applicazione più nota delle Regole di Associazione Ogni acquisto rappresenta una transazione e coinvolge un certo insieme di articoli Se A e B sono due insiemi di articoli disgiunti, una regola di associazione prende la forma: A B 51
Il Supporto Il Supporto di una regola di associazione A B è la proporzione di transazioni che contengono sia A e B: (numero delle transazioni contenenti sia A e B) (numero totale delle transazioni) 52
La Confidenza La Confidenza di una regola di associazione A B è una misura della sua accuratezza ed è determinata dalla percentuale di transazioni che contengono A e che inoltre contengono B: (num. delle trans. contenenti sia A e B) (num. delle trans. contenenti A) 53
Altre Definizioni 54 Regole forti: regole che hanno supporto e confidenza maggiori di soglie prestabilite Itemset: un insieme di articoli K-itemset: un itemset contenente k articoli Large Itemset: un itemset che si presenta almeno un certo numero di volte
Algoritmo Apriori Proposto da Agrawal (1993) 1. Trova i large itemset 2. Per ciascun large itemset, genera tutte le regole ottenute dalla combinazione dei suoi articoli 3. Seleziona le regole che superano una certa soglia di confidenza prestabilita 55
I Large Itemset Trovare i large itemset in modo diretto non è computazionalmente possibile Si usa la downward closure property: 56 Se un itemset X non è un large itemset, aggiungere un ulteriore articolo A a tale itemset non renderà X U A un large itemset Per ottenere i large itemset, è sufficiente cercare soltanto tra le combinazioni di large itemset di ordine inferiore, partendo dagli 1-itemset più frequenti.
L incremento (Lift) 1/2 Se un articolo è presente nel database con una frequenza alta, la confidenza delle regole in cui appare come conseguente risulta distorta. Per valutare la bontà di una regola si introduce l incremento: (confidenza della regola) (probabilità del conseguente) 57
L incremento (Lift) 2/2 Confronta la confidenza della regola con la probabilità del conseguente 58 Lift >> 1: effettiva correlazione Lift 1: la presenza del conseguente non è associabile alla presenza dell antecedente
Association Rules in SAP 59 Utilizza una variante dell'algoritmo Apriori
Il Transaction Weight È possibile specificare il peso assunto da ciascun articolo all interno della transazione In questo caso il supporto di un itemset è calcolato come: (peso totale delle transazioni contenenti l itemset) (peso totale delle transazioni) 60
Le Regole Generate 61
Applicazione Problema: predire la pagina web che sarà visitata durante l accesso a un sito, nota la pagina già visitata. Association Rules: Si ottengono regole con confidenza anche maggiore del 90% 62 Esempio: /WINDOWS95 /WINDOWS
Grazie. 63