Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter...

48
Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie , Tibshirani and Friedman Clustering Lecture 10 Lecture 10

Transcript of Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter...

Page 1: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Mercoledì, 21 Febbraio 2007

Giuseppe Manco

Readings:Chapter 8, Han and Kamber

Chapter 14, Hastie , Tibshirani and Friedman

Clustering

Lecture 10Lecture 10

Page 2: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

OutlineOutline

• Introduction• K-means clustering• Hierarchical clustering: COBWEB

Page 3: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Apprendimento supervisionatoApprendimento supervisionato

• Dati– Un insieme X di istanze su dominio multidimensionale

– Un funzione target c

– Il linguaggio delle ipotesi H

– Un insieme di allenamento D = {<x,c(x)>}

• Determinare– L’ipotesi h H tale che h(x) = c(x) per ogni x D

– Che sia consistente con il training set

Page 4: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Supervised vs. Unsupervised LearningSupervised vs. Unsupervised Learning

• Supervised learning (classificazione)

– Supervisione: il training set contiene l’etichetta che indica la classe da apprendere

– I nuovi dati sono classificati sulla base di quello che si apprende dal training set

• Unsupervised learning (clustering)

– L’etichetta di classe è sconosciuta

– Le istanze sono fornite con l’obiettivo di stabilire se vi sono raggruppamenti (classi) tra i

dati

Page 5: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Classificazione, ClusteringClassificazione, Clustering

Classificazione: Apprende un metodo per predire la classe dell’istanza da altre istanze pre-classificate

Page 6: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

ClusteringClustering

Trova raggruppamenti “naturali” nei dati non etichettati

• Applicazioni tipiche– Tool stand-alone to get insight into data distribution – Passo di preprocessing per altri algoritmi

Page 7: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Clustering, clustersClustering, clusters

• Raggruppamento di dati in classi (clusters) che abbiano una significatività

– alta similarità intra-classe

– Bassa similarità inter-classe

• Qualità di uno schema di clustering

– La capacità di ricostruire la struttura nascosta

• similarità

Page 8: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Similarità, distanzaSimilarità, distanza

• Distanza d(x,y)– Misura la “dissimilarità tra gli oggetti”

• Similarità s(x,y)– S(x,y) 1/d(x,y)

– Esempio

• Proprietà desiderabili

• Definizione application-dependent– Può richiedere normalizzazione

– Diverse definizioni per differenti tipi di attributi

),(),( yxdeyxs

),(),(),(

),(),(

0),(

0),(

jkkiji

ijji

ii

ji

ddd

dd

d

d

xxxxxx

xxxx

xx

xx

Page 9: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

EsempioEsempio

Istanza X1 X2 X3

I1 0 0 0

I2 1 0 0

I3 2 0 0

I4 2.5 2 0

I5 3 0 0

I6 1 2 1

I7 1.5 0 1

I8 2 2 1

I9 3 2 1

I10 4 2 1

),(),(),(

..

.

.

..

.),(),(

),(...),(),(

1010210110

2212

1012111

IIdIIdIId

IIdIId

IIdIIdIId

Page 10: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Similarità e dissimilarità tra oggettiSimilarità e dissimilarità tra oggetti

• La distanza è utilizzata per misurare la similarità (o dissimilarità) tra due istanze

• Distanza di Minkowski (Norma Lp):

– Dove x = (x1, x2, …, xd) e y = (y1, y2, …, yd) sono due oggetti d-dimensionali, e p è l’ordine

della distanza

• se p = 1, d è la distanza Manhattan

• Se p=

d

iii yxyxdist

1

),(

pd

i

p

ii yxyxdist/1

1

),(

iidi

yxyxdist 1

sup),(

Page 11: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Similarità e dissimilarità tra oggetti [2]Similarità e dissimilarità tra oggetti [2]

• se p = 2, d è la distanza euclidea:

– Proprietà

• Translation-invariant

• Scale variant

• Varianti– Distanza pesata

– Distanza Mahalanobis

pd

i

p

iii yxwyxdist/1

1

),(

d

iii yxyxdist

1

2),(

)()(),( 1 yxyxyxdist T

Page 12: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

EsempioEsempio

00,93,67,658,14,57,655,48,112,6

0,900,95,853,65,45,854,55,48,1

3,60,905,850,98,15,855,44,55,4

7,655,855,8507,657,65185,855,857,65

8,13,60,97,65012,67,658,15,44,5

4,55,48,17,6512,607,650,93,68,1

7,655,855,85187,657,6505,855,857,65

5,44,55,45,858,10,95,8500,93,6

8,15,44,55,855,43,65,850,900,9

12,68,15,47,654,58,17,653,60,90

0124,5342,5567

1013,5231,5456

2102,5141,5345

4,53,52,502,52,541,51,52,5

3212,5052,5434

4342,5502,5123

2,51,51,542,52,502,53,54,5

5431,5412,5012

6541,5323,5101

7652,5434,5210

Euclidea

manhattan

mahalanobis

0123,201632,44951,802833,74174,5826

1012,522,23611,1182,449533,7417

2102,061612,44951,1182,23612,44953

3,20162,52,061602,06161,80282,44951,1181,1181,8028

3212,0616031,80282,44952,23612,4495

2,44952,23612,44951,8028302,0616123

1,80281,1181,1182,44951,80282,061602,06162,53,2016

32,44952,23611,1182,449512,0616012

3,741732,44951,1182,236122,5101

4,58263,741731,80282,449533,2016210

Page 13: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Similarità e dissimilarità tra oggetti [3]Similarità e dissimilarità tra oggetti [3]

• Similarità del coseno

– Proprietà

• Translation variant• Scale invariant

• Similarità di Jaccard (Tanimoto)

• Similarità di Jaccard (Tanimoto)

yx

yxyxsim

T

),(

yxyx

yxyxsim

T

T

22),(

yx

yxyxsim

),(

Page 14: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Rappresentazione graficaRappresentazione grafica

x = 2A1 + 3A2 + 5A3

y = 3A1 + 7A2 + A3

Q = 0A1 + 0A2 + 2A3A3

A1

A2

x = 2A1+ 3A2 + 5A3

y = 3A1 + 7A2 + A3

Q = 0A1 + 0A2 + 2A3

7

32

5

Page 15: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Rappresentazione graficaRappresentazione grafica

euclidea Coseno Jaccard

Page 16: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

EsempioEsempio

0123,201632,44951,802833,74174,5826

1012,522,23611,1182,449533,7417

2102,061612,44951,1182,23612,44953

3,20162,52,061602,06161,80282,44951,1181,1181,8028

3212,0616031,80282,44952,23612,4495

2,44952,23612,44951,8028302,0616123

1,80281,1181,1182,44951,80282,061602,06162,53,2016

32,44952,23611,1182,449512,0616012

3,741732,44951,1182,236122,5101

4,58263,741731,80282,449533,2016210

00,0080,0540,150,190,120,040,120,120

0,00800,020,180,120,190,0390,190,190

0,0540,02200,260,040,330,060,330,330

0,150,180,2600,430,160,350,160,160

0,190,120,040,4300,590,170,590,590

0,120,190,330,160,5900,21000

0,0450,030,060,350,170,2100,210,210

0,120,190,330,160,5900,21000

0,120,190,330,160,5900,21000

0000000000

00,9440,7650,4060,50,6670,8120,4710,2220

0,94400,9170,4680,6670,6430,9020,50,250

0,7650,91700,4850,8750,50,8780,4440,250

0,4060,4680,48400,370,5810,3850,7060,5450

0,50,6670,8750,3700,250,6670,250,1670

0,6670,6430,50,5810,2500,6380,8570,4280

0,8120,9020,8780,3850,6670,63800,540,2860

0,4710,50,4440,7060,250,8570,54100,6670

0,2220,250,250,5450,1670,4290,2860,66700

0000000000

Euclidea

Jaccard

Coseno

Page 17: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Attributi binariAttributi binari

• Distanza di Hamming

– Distanza Manhattan quando i valori possibili sono 0 o 1

• In pratica, conta il numero di mismatches

altrimenti0

se1),(

),(),(11

iiii

d

iii

d

iii

yxyx

yxyxyxdist

Page 18: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Attributi binariAttributi binari

• Utilizzando la tabella di contingenza

• Coefficiente di matching (invariante, se le variabili sono simmetriche):

• Coefficiente di Jaccard (noninvariante se le variabili sono asimmetriche):

dcbacb yxd

),(

cbacb yxd

),(

pdbca

dcdc

baba

totale

totale

0

1

01

Oggetto x

Oggetto y

Page 19: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Dissimilarità tra attributi binariDissimilarità tra attributi binari

• Esempio

– gender è simmetrico– Tutti gli altri sono asimmetrici– Poniamo Y e P uguale a 1, e N a 0

Name Gender Fever Cough Test-1 Test-2 Test-3 Test-4

Jack M Y N P N N NMary F Y N P N P NJim M Y P N N N N

75.0211

21),(

67.0111

11),(

33.0102

10),(

maryjimd

jimjackd

maryjackd

Page 20: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Variabili NominaliVariabili Nominali

• Generalizzazione del meccanismo di variabili binarie

• Metodo 1: Matching semplice

– m: # di matches, p: # di attributi nominali

• metodo 2: binarizzazione

• Metodo 3: Jaccard su insiemi

pmpyxd ),(

Page 21: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Combinare dissimilaritàCombinare dissimilarità

• x,y– xR, yR: attributi numerici

– xn, yn: attributi nominali

– Va garantita la stessa scala

),(),(),( nnRR yxdistyxdistyxdist

Page 22: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Metodi di clusteringMetodi di clustering

• Una miriade di metodologie differenti:– Dati numerici/simbolici– Deterministici/probabilistici– Partizionali/con overlap– Gerarchici/piatti– Top-down/bottom-up

Page 23: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Clustering per enumerazioneClustering per enumerazione

• Utilizzando come criterio

• Il numero di possibili clusterings sarebbe

• S(10,4)=34.105

Cx Cy

yxdistCw ),()(

nk

i

ik ii

k

kknS

1

)1(!

1),(

Page 24: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

L’algoritmo più semplice: K-meansL’algoritmo più semplice: K-means

• Algorithm K-Means(D, k)

– m D.size // numero di istanze

– FOR i 1 TO k DO

i random // scegli un punto medio a

caso

– WHILE (condizione di terminazione)

• FOR j 1 TO m DO // calcolo del cluster membership

• h argmin1≤i ≤kdist(xj, i)

C[h] xj

• FOR i 1 TO k DO

i

– RETURN Make-Predictor (w, P)

][

1

iCxj

i j

xn

Page 25: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Esempio [1]Esempio [1]

k1

k2

k3

X

Y

Scegliamo3 centri iniziali

Page 26: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Esempio [2]Esempio [2]

k1

k2

k3

X

Y

Assegniamoogni puntoal cluster piùvicino

Page 27: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Esempio [3]Esempio [3]

X

Y

Ricalcoliamoil centroide

k1

k2

k2

k1

k3

k3

Page 28: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Esempio [4]Esempio [4]

X

Y

Riassegniamoi punti ai clusters

k1

k2

k3

Page 29: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Esempio [5]Esempio [5]

X

Y

Punti riassegnati

k1

k3k2

Page 30: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Esempio [5]Esempio [5]

X

Y

Ricalcoliamoi centroidi

k1

k3k2

Page 31: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Esempio [7]Esempio [7]

X

Y

k2

k1

k3

Page 32: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Quale criterio di stop?Quale criterio di stop?

• Cos’è il centroide?

• Misura della compattezza di un cluster

• Misura della compattezza del clustering

• Teorema– Ad una generica iterazione t,

Cx

cxdistCt ),()(cos

SC

ik

i

CtCCSt )(cos]),...,[(cos 1

)(cos)(cos 1 tt StSt

),(minarg yxdistCxXy

c

Page 33: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Il metodo K-MeansIl metodo K-Means

• Vantaggi: Relativamente efficiente: O(tkn), dove n è il numero di oggetti, k il numero di

clusters e t il numero di iterazioni. Di solito, k, t << n.

• Al confronto: PAM: O(k(n-k)2 ), CLARA: O(ks2 + k(n-k))

• Converge ad un ottimo locale. L’ottimo globale può essere trovato ricorrendo a varianti

(ad esempio, basati su algoritmi genetici)

• Punti critici

– Applicabile solo quando il punto medio ha senso

• Attributi nominali?

– K va dato in input

• Qual’è il numero ottimale?

– Incapace di gestire outliers e rumore

– Non adatto a scoprire forme non convesse

Page 34: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

VariantiVarianti

• Selezione dei centri iniziali

• Strategie per calcolare i centroidi

• L’algoritmo k-modes (Huang’98)

– Dati categorici

– Usiamo le mode invece dei centroidi

– Usiamo Hamming

– L’update si basa sul cambiamento di frequenze

– Modelli misti: k-prototype

Page 35: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

VariantiVarianti

• K-medoids – invece del centroide, usa il punto mediano

– La media di 1, 3, 5, 7, 9 è

– La media di 1, 3, 5, 7, 1009 è

– La mediana di 1, 3, 5, 7, 1009 è

• Problema: come calcolare il medoide?

5205

5

),(minarg yxdistmCxCy

c

Page 36: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Algoritmo PAMAlgoritmo PAM

1. Seleziona k oggetti m1, …, mk arbitrariamente da D

• m1, …, mk rappresentano i medoidi

2. Assegna ogni oggetto xD al cluster j (1 ≤ j ≤ k) che ne minimizza la distanza dal medoide– Calcola cost(S)current

3. Per ogni coppia (m,x)1. Calcola cost(S)xm

4. Seleziona la coppia (m,x) per cui cost(S)xm è minimale

5. Se cost(S)xm < cost(S)current

• Scambia m con x

6. Ritorna al passo 3 (2)

Page 37: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Problemi con PAMProblemi con PAM

• Più robusto del k-means in presenza di rumore e outliers

– Un medoide è meno influenzato del centroide dalla presenza di outliers

• Efficiente su pochi dati, non scala su dati di grandi dimensioni.

– O(k(n-k)2 ) per ogni iterazione

• Alternative basate sul campionamento

– CLARA(Clustering LARge Applications)

– CLARANS

Page 38: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Varianti al K-MedoidVarianti al K-Medoid

• CLARA [Kaufmann and Rousseeuw,1990]– Parametro addizionale: numlocal– Estrae numlocal campioni dal dataset– Applica PAM su ogni campione– Restituisce il migliore insieme di medoidi come output

– Svantaggi:

– L’efficienza dipende dalla dimensione del campione

– Non necessariamente un clustering buono sul campione rappresenta un clustering

buono sull’intero dataset

• Sample bias

• CLARANS [Ng and Han, 1994)– Due ulteriori parametri: maxneighbor e numlocal– Vengono valutate al più maxneighbor coppie (m,x)– La prima coppia (m,x) per cui cost(S)xm < cost(S)current è scambiata

• Evita il confronto con la coppia minimale– Si ripete la progedura numlocal volte per evitare il minimo locale.

• runtime(CLARANS) < runtime(CLARA) < runtime(PAM)

Page 39: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Scelta dei punti inizialiScelta dei punti iniziali

• [Fayyad, Reina and Bradley 1998]– costruisci m campioni differenti da D– Clusterizza ogni campione, fino ad ottenere m stime per i k rappresentanti

• A = (A1, A2, …, Ak), B = (B1, B2, …, Bk), ..., M = (M1, M2, …, Mk)

– Clusterizza DS= A B … M m volte• utilizzando gli insiemi A, B, ..., M come centri iniziali

• Utilizza il risultato migliore come inizializzazione sull’intero dataset

Page 40: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

InizializzazioneInizializzazione

D Centri su 4 campioni

Centri effettivi

Page 41: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Scelta del parametro kScelta del parametro k

• Iterazione– Applica l’algoritmo per valori variabili di k

• K=1, 2, …– Scegli il clustering “migliore”

• Come scegliere il clustering migliore?– La funzione cost(S) è strettamente decrescente

• K1> k2 cost(S1) < cost(S2)

• Indici di bontà di un cluster

Page 42: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Indici di bontàIndici di bontà

• In generale, si valuta intra-similarità e intersimilarità

• a(x): distanza media di x dagli oggetti del cluster A cui x appartiene• b(x): distanza media di x dagli oggetti del secondo cluster B più prossimo a x• Coefficiente su x

– sx=-1: x è più prossimo agli elementi di B

– sx = 0: non c’è differenza tra A e B

– sx = 1: x è stato clusterizzato bene

• Generalizzazione sc

– Media dell’indice su tutti gli oggetti

– Valori bassi: clustering debole

– Valori alti: clustering robusto

)}(),(max{

)()(

xbxa

bbxasx

i ji i i Cx

jiCyC Cx Cy

yxdistyxdist ),()1(),(

Page 43: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Minimum description LengthMinimum description Length

• Il principio del Minimum Description Length– Rasoio di Occam: le ipotesi più semplici sono più probabili

• (Il termine Pr(D) non dipende da M e può essere ignorato)

• Più alto è Pr(M|D), migliore è il modello

)Pr()|Pr()|Pr(

)Pr(

)Pr()|Pr()|Pr(

)Pr()|Pr(),Pr(

MMDDM

D

MMDDM

MMDDM

Page 44: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Minimum Description Length, Numero ottimale di Minimum Description Length, Numero ottimale di clustersclusters

• Fissiamo un range possibile di valori per k– k = 1...K (con K abbastanza alto)

• Calcoliamo Pr(Mk|D) per ogni k

– Il valore k che esibisce il valore più alto è il migliore

• Problema: Come calcoliamo Pr(Mk|D)?

Page 45: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Bayesian Information Criterion e Minimum Bayesian Information Criterion e Minimum Description LengthDescription Length

• Problema: calcolare

• Idea: adottiamo il trick del logaritmo

• Cosa rappresentano i due termini?

– = accuratezza del modello

– = complessità del modello

)Pr()|Pr( MMD

)Pr(log)|Pr(log)Pr()|Pr(log MMDMMD

)|Pr(log MD

)Pr(log M

Page 46: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Bayesian Information CriterionBayesian Information Criterion

– = accuratezza del modello

• Assunzione: algoritmo K-Means, distanza euclidea

• La giustificazione è data dall’interpretazione “gaussiana” del clustering K-Means

)|Pr(log MD

)|()|(log)|(log)|Pr(log MDCostMxpMxpMD iii

i

k Cxkii

Cxkik

kik

ki

k

i

k

k

xdMxp

xd

Cxxd

Mxp

,)|(log

,

t.c.,

exp2

1)|(

22

2

2

Page 47: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Bayesian Information CriterionBayesian Information Criterion

• = complessità del modello

– Intuitivamente, quanti più cluster ci sono, più il clustering è complesso• E quindi, meno è probabile

– Adottando un criterio basato sull’encoding (in bit) dell’informazione relativa i clusters, otteniamo

• Per ogni tuple nel dataset, codifichiamo a quale cluster appartiene

)Pr(log M

knM log)Pr(log

Page 48: Clustering Mercoledì, 21 Febbraio 2007 Giuseppe Manco Readings: Chapter 8, Han and Kamber Chapter 14, Hastie, Tibshirani and Friedman Clustering Lecture.

Clustering

Bayesian Information CriterionBayesian Information Criterion

• Codifica il costo di un clustering M fatto di k clusters– Direttamente proporzionale al costo del clustering dei dati

• Più i cluster sono omogenei, meno costoso è il clustering– Inversamente proporzionale al costo del modello

• Quanti meno clusters ci sono, meno costoso è il clustering• α è una costante di normalizzazione

– (serve a confrontare valori che potrebbero avere scale diverse)

knMDCostMBIC log)|()(