Pattern Recognition
Lez.13: Unsupervised
classification: clustering
gerarchico
Clustering per “dicotomie successive”
• Quando una popolazione va divisa in
sottogruppi? Quando al suo interno non
c’è sufficiente omogeneità.
• Questa idea è alla base di un altro
approccio al clustering, detto clustering
gerarchico.
• L’idea si concretizza in un paio di algoritmi
abbastanza facili da descrivere e
implementare.
La popolazione e la matrice delle
distanze
• Possiamo didatticamente presentare il clustering
gerarchico assumendo che siano date una
popolazione di N record da ripartire e una
matrice D, di N x N elementi in cui ciascun
elemento Dij riporta la “distanza” tra il record iesimo e il record j-esimo.
• Attenzione non sempre nelle reali
implementazioni tale matrice è calcolata per
intero (per ragioni di efficienza o di limiti di
memoria).
Un esempio “saccheggiato” da
Internet
BA
FI
MI
NA
RM
TO
BA
0
662
877
255
412
996
FI
662
0
295
468
268
400
MI
877
295
0
754
564
138
NA
255
468
754
0
219
869
RM
412
268
564
219
0
669
TO
996
400
138
869
669
0
Distanze in chilometri tra città italiane
Struttura di ogni algoritmo di
clustering gerarchico
Passo 0: ogni record è l’unico rappresentante di
una classe che lo contiene. Ci sono quinid
all’inizio N classi ciascuna con un solo elemento.
Passo 1: fondere assieme le due classi che sono
le più vicine possibili secondo la tabella delle
distanze.
Passo 2: ri-calcolare le distanze tra la nuova
classe, nata dalla fusione, e le altre classi.
I passi 1 e 2 vanno ripetuti alternativamente
fino a che tutti i record non sono stati fusi in
una unica mega classe onnicomprensiva.
Un unico “punto sottile”: passo 2
• Se le distanze iniziali tra record sono ben
definite cosa sono le distanze tra “classi”?
• Non esiste un unico approccio alla
distanza tra “cluster” e nel contesto del
clustering gerarchico si parla di due
approcci:
– Single-linkage;
– Complete-linkage;
– Average-linkage;
Single-linkage
(metodo della connessione o della minima distanza)
• La distanza tra due gruppi di record è
definita come la minima distanza
osservata tra tutte le coppie formate da un
elemento del primo gruppo e un elemento
del secondo gruppo.
La distanza è
posta eguale alla
distanza tra la
coppia di record
più vicini
Complete-linkage
(metodo del diametro o della massima distanza)
• La distanza tra due gruppi di record è
definita come la massima distanza
osservata tra tutte le coppie formate da un
elemento del primo gruppo e un elemento
del secondo gruppo.
La distanza è
posta eguale alla
distanza tra la
coppia di record
più lontani
Average-linkage
(metodo della distanza media)
• La distanza tra due gruppi di record è
definita come la distanza media osservata
tra tutte le coppie formate da un elemento
del primo gruppo e un elemento del
secondo gruppo.
Variante:
considerare la
mediana invece
della media.
Simuliamo il single-linkage sulle
città italiane
BA
FI
MI/T
O
NA
RM
BA
0
662
877
255
412
FI
662
0
295
468
268
MI/T
O
877
295
0
754
564
NA
255
468
754
0
219
RM
412
268
564
219
0
Prima fusione
Simuliamo il single-linkage sulle
città italiane
BA
FI
MI/
TO
NA/
RM
BA
0
662
877
255
FI
662
0
295
268
MI/
TO
877
295
0
564
NA/
RM
255
268
564
0
Seconda fusione
Simuliamo il single-linkage sulle
città italiane
BA/N
A/RM
FI
MI/T
O
BA/N
A/RM
0
268
564
FI
268
0
295
MI/T
O
564
295
0
Terza fusione
Simuliamo il single-linkage sulle
città italiane
BA/N
A/RM
FI
MI/T
O
BA/N
A/RM
0
268
564
FI
268
0
295
MI/T
O
564
295
0
Quarta fusione
Simuliamo il single-linkage sulle
città italiane
BA/FI/N
A/RM
MI/TO
BA/FI/N
A/RM
0
295
MI/TO
295
0
Quinta fusione
La sesta fusione
ovviamente forma un
unico blocco
La sequenza
L’”albero” delle fusioni è una
guida alla “partizione” in
classi.
Tagliando l’albero a vari
livelli si possono ottenere
classi più fini o più generali.
• PRO
Pro e Contro
– Algoritmo facile e non richiede analisi matematica
complessa per la convergenza e per la ottimizzazione;
– L’albero “spiega” le relazioni tra cluster ed è facile per
un esperto (in generale) interpretare i risultati
dell’algoritmo;
• CONTRO
–
–
–
–
Quale livello di “taglio” scegliere per formare le classi?
Forte dipendenza dalla misura di similarità.
Impossibile gestire le similarità “fuzzy”.
Complessità elevata (la matrice iniziale e le successive
matrici richiedono O(N2) passi per il loro
aggiornamento.
– (Antipole?)
Scarica

lezione 13