introduzione al data mining 1mm e applicazioni al dominio...

20
Introduzione al Data Mining Andrea Brunello Modelli principali (Supervised) Alberi di decisione Regole di classificazione Instance-based learning Regressione Naive Bayes Riferimenti Introduzione al Data Mining e applicazioni al dominio del Contact Management Parte II: principali modelli per il Supervised Learning Andrea Brunello Università degli Studi di Udine In collaborazione con dott. Enrico Marzano, CIO Gap srl progetto Active Contact System 1/20

Upload: others

Post on 11-Oct-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Introduzione al Data Mininge applicazioni al dominio del Contact Management

Parte II: principali modelli per il Supervised Learning

Andrea Brunello

Università degli Studi di Udine

In collaborazione con dott. Enrico Marzano, CIO Gap srlprogetto Active Contact System 1/20

Page 2: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Contenuti

Parte II:

I principali modelli per il Supervised Learning:

I alberi di decisione;

I regole di classificazione;

I Instance-based learning;

I regressione (lineare);

I Naive Bayes.

2/20

Page 3: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Alberi di decisione

Metodo semplice e compatto per rappresentare l’outputdi un processo di classificazione.

I ciascun nodo interno corrisponde alla valutazione dideterminato attributo;

I la classificazione di un’istanza avviene partendodalla radice, e scendendo via via sino a giungere aduna foglia etichettata con una determinata classe (oinsieme di classi, distribuzione di probabilità);

I variante per problemi di regressione: alberi diregressione.

3/20

Page 4: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Alberi di decisione (2)

L’albero di decisione classifica correttamente tutte leistanze del Weather Problem.

Osserviamo che non viene mai presa in considerazionela temperatura.

4/20

Page 5: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Costruzione di un albero di decisione

Presentiamo una metodologia generale per la creazionedi un albero di decisione, simile a quella adottata da ID.3:

I costruzione dell’albero ricorsiva, partendo dallaradice;

I ad ogni passo si sceglie l’attributo su cui effettuare losplit, intuitivamente quello che porta al maggiorinformation gain (alberi più bassi, metodo greedy);

I sino alla generazione di una foglia, incorrispondenza di un caso base:

I gli elementi nel nodo hanno stessa classe(attenzione all’overfitting, i.e. modello costruitoad-hoc sui dati, che non generalizza), oppure

I si è raggiunto un sufficiente grado di purezza delnodo .

5/20

Page 6: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Costruzione di un albero di decisione (2)

Come misurare il guadagno di informazione dato dallosplit su un attributo?

I insieme T di istanze partizionate nelle classiC = {C1, . . . ,Ck} dall’attributo obiettivo;

I distribuzione di probabilità associata a T :

P = (|C1|/|T |, |C2|/|T |, ..., |Ck |/|T |)

I definiamo l’informazione necessaria ad identificare laclasse di un elemento di T come:

Info(T ) = H(P) = −k∑

i=1

pi ∗ log(pi)

I intuitivamente, se quasi tutti gli elementi fanno partedi una stessa classe, Info(T ) è bassa, ed aumentaall’aumentare della “confusione” (entropia).

6/20

Page 7: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Costruzione di un albero di decisione (3)

Cosa succede partizionando l’insieme di istanze sullabase di un attributo?

I supponiamo di suddividere T in sottoinsiemiT1, . . . ,Tn sulla base del valore di una delle feature,diciamo X ;

I l’informazione necessaria ad identificare la classe diun elemento di T è la media pesata dell’informazionenecessaria ad identificare la classe dell’elementoall’interno di ciascun sottoinsieme:

Info(X ,T ) =n∑

i=1

(|Ti |/|T |) ∗ Info(Ti)

7/20

Page 8: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Costruzione di un albero di decisione (4)

Diamo infine la definizione di information gain:

Gain(X ,T ) = Info(T )− Info(X ,T )

I rappresenta la differenza fra l’informazionenecessaria ad identificare la classe di un elemento diT e l’informazione necessaria dopo la suddivisionedi T in sottoinsiemi attraverso l’attributo X ;

I in altre parole, il guadagno d’informazione dovutoall’attributo X (alto è meglio).

8/20

Page 9: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Costruzione di un albero di decisione (5)

Considerazioni finali:I utilizzare l’information gain può portare a preferire la

scelta di attributi con un gran numero di valori (highlybranching attributes);

I il che porta spesso a sua volta a fenomeni dioverfitting;

I l’information gain ratio considera anche il numero ela dimensione dei vari sottoinsiemi che verrebberogenerati.

Oltre all’entropia, esistono altre misure di impurità deinodi.

I indice di impurità di Gini;I se l’attributo da predire è numerico, si può utilizzare

RMSE rispetto alla media del nodo;I . . .

9/20

Page 10: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Alberi di decisione: algoritmi

Diversi algoritmi per la costruzione degli alberi:

I ID.3, Iterative Dichotomizer 3 (attributi nominali);

I C4.5 (implementazione Weka J48);

I C5.0;

I CART, Classification And Regression Trees;

I . . .

10/20

Page 11: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Regole di classificazione

Alternativa rispetto agli alberi di decisione.

Condizioni = soleggiato ∧ Umidita = alta→Si_gioca = noCondizioni = pioggia ∧ Vento = vero →Si_gioca = no

Condizioni = nuvoloso →Si_gioca = siUmidita = normale→Si_gioca = si

Else Si_gioca = si

I parte a sinistra: precondizioniI parte a destra: classe dell’attributo su cui si sta

facendo predizioneI tipicamente intese per essere considerate in ordineI derivabili da un albero di decisione, o costruzione

ad-hoc es. tramite il metodo delle coperture

11/20

Page 12: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Instance-based learning

A differenza che nei metodi precedenti non vi è una faseiniziale di “training”, l’idea è la seguente:

I si ha a disposizione un insieme di istanze delle qualiè nota la classe;

I data una nuova istanza, essa viene ricondotta aduno o più dei casi noti:

I nearest neighbourI k-nearest neighbour

I diverse nozioni di “distanza”;

I l’output può essere qualitativo o quantitativo.

12/20

Page 13: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Modelli di regressione lineare

Output numerico (variabile dipendente), sulla base diattributi in input numerici (variabili indipendenti).

I si vuole esprimere la variabile dipendente comecombinazione di una o più variabili indipendenti:

x = w0 + w1a1 + w2a2 + ...+ wkak

I metodo semplice e di intuitiva interpretazione,tuttavia ha delle limitazioni:

I la relazione fra variabile dipendente ed indipendentideve essere lineare;

I le variabili indipendenti non devono essere“correlate” fra loro (no multicollinearità);

I altre condizioni di applicabilità: https://en.wikipedia.org/wiki/Linear_regression.

13/20

Page 14: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Modelli di regressione lineare (2)

Durata eruzione Tempo attesa2.883 551.883 542.167 521.600 521.750 471.967 55

14/20

Page 15: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Modelli di regressione lineare (3)

Esistono varianti del modello di regressione (ed ancorapiù algoritmi che le implementano):

I regressione polinomiale: per relazioni non lineari

I regressione multivariata: per predire il valore di più diuna variabile

I regressione logistica: per classificazione binaria

I regressione logistica multinomiale e analisidiscriminante lineare: per classificazione multiclasse

15/20

Page 16: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Naive Bayes

I Naive Bayes sono una famiglia di classificatoriprobabilistici, basati sul teorema di Bayes dellaprobabilità condizionata:

I l’idea alla base è che ciascuna feature nel datasetcontribuisca in modo indipendente, e con lo stessopeso, alla determinazione della classe dell’istanza;

I l’assunzione è molto forte;

I tuttavia, il metodo Naive Bayes funzionasorprendentemente bene nei casi reali.

16/20

Page 17: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Naive Bayes (2)

Tabella con dati riassuntivi sul Weather Problem:

Supponiamo ora di voler classificare una nuova istanza:

Condizioni Temp. Umidità Vento Si_giocasoleggiato fredda alta vero ?

17/20

Page 18: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Naive Bayes (3)

Come classificare la nuova istanza?

I otteniamo la “tendenza” a giocare moltiplicando lefrazioni corrispondenti:

(2/9) ∗ (3/9) ∗ (3/9) ∗ (3/9) ∗ (9/14) = 0.0053

I allo stesso modo otteniamo la “tendenza” a nongiocare:

(3/5) ∗ (1/5) ∗ (4/5) ∗ (3/5) ∗ (5/14) = 0.0206

I dunque, la tendenza a non giocare è circa 4 voltesuperiore a quella di farlo;

I possiamo trasformare i numeri in probabilità:I a favore: 0.0053/(0.0053 + 0.0206) = 20.5%I contro: 0.0206/(0.0053 + 0.0206) = 79.5%

18/20

Page 19: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Naive Bayes (4)

Metodo basato sul Teorema di Bayes:

Pr [H|E ] = (Pr [E |H] ∗ Pr [H])/Pr [E ]

Nel nostro caso:I H: corrisponde al fatto di giocare o meno;I E : corrisponde alla combinazione dei valori delle 4

feature E1,E2,E3,E4

Sostituendo nella formula otteniamo, facendo usodell’ipotesi di indipendenza delle variabili:

Pr [si |E ]

=(Pr [E1|si] ∗ Pr [E2|si] ∗ Pr [E3|si] ∗ Pr [E4|si] ∗ Pr [si])/Pr [E ]

=[(2/9) ∗ (3/9) ∗ (3/9) ∗ (3/9) ∗ (9/14)]/Pr [E ]

Il denominatore scompare effettuando la normalizzazionedei valori, ottenendo lo stesso risultato di prima.

19/20

Page 20: Introduzione al Data Mining 1mm e applicazioni al dominio ...datasciencelab.dimi.uniud.it/images/teaching/data_mining/data_mini… · Data Mining Andrea Brunello Modelli principali

Introduzione alData Mining

Andrea Brunello

Modelli principali(Supervised)Alberi di decisione

Regole di classificazione

Instance-based learning

Regressione

Naive Bayes

Riferimenti

Riferimenti

I. H. Witten, E. Frank, M. A. Hall: Data Mining:Practical Machine Learning Tools and Techniques.Morgan Kaufmann Publishers, 3rd edition, 2011.

G. James, D. Witten, T. Hastie, R. Tibshirani: AnIntroduction to Statistical Learning with Applicationsin R. Springer, 2013.

20/20