Clustering - DataBase and Data Mining Group

DB
MG
Data mining: clustering
DataBase and Data Mining Group of Politecnico di Torino
Database and data mining group, Politecnico di Torino
BG
DM
DataBase and Data Mining Group of Politecnico di Torino
Clustering
Elena Baralis
Politecnico di Torino
Copyright – Tutti i diritti riservati
Elena Baralis
Politecnico di Torino
DATA MINING: CLUSTERING - 1
Database and data mining group, Politecnico di Torino
BG
DM
DataBase and Data Mining Group of Politecnico di Torino
Definizione generale
• Clustering è la suddivisione di una collezione di
oggetti in gruppi, detti cluster, tali che
– gli oggetti in un cluster siano molto simili tra loro
– gli oggetti appartenenti a cluster diversi siano molto
diversi tra loro
• Detto anche unsupervised learning o
unsupervised classification perché manca
l’etichetta di classe
Copyright – Tutti i diritti riservati
Elena Baralis
Politecnico di Torino
DATA MINING: CLUSTERING - 2
Pag. 1
Elena Baralis
Politecnico di Torino
DB
MG
Data mining: clustering
DataBase and Data Mining Group of Politecnico di Torino
Database and data mining group, Politecnico di Torino
BG
DM
DataBase and Data Mining Group of Politecnico di Torino
Applicazioni
• Il clustering può essere utilizzato
– per analizzare la distribuzione dei dati
– in congiunzione con altre tecniche, quali la
classificazione
• Numerosi ambiti applicativi
– identificazione di popolazioni omogenee di clienti
– competitive intelligence: monitoraggio dell’attività di
aziende concorrenti
– valutazione dei risultati di esperimenti clinici
Copyright – Tutti i diritti riservati
Elena Baralis
Politecnico di Torino
DATA MINING: CLUSTERING - 3
Database and data mining group, Politecnico di Torino
BG
DM
DataBase and Data Mining Group of Politecnico di Torino
Qualità del clustering
• La qualità del risultato dipende
– dalla misura della somiglianza tra cluster
– dal modo in cui opera l’algoritmo
• La somiglianza è espressa in termini di funzione
di distanza
– diversa per tipi di dato diversi
• È difficile definire una soglia appropriata di
somiglianza
Copyright – Tutti i diritti riservati
Elena Baralis
Politecnico di Torino
DATA MINING: CLUSTERING - 4
Pag. 2
Elena Baralis
Politecnico di Torino
DB
MG
Data mining: clustering
DataBase and Data Mining Group of Politecnico di Torino
Database and data mining group, Politecnico di Torino
BG
DM
DataBase and Data Mining Group of Politecnico di Torino
Valutazione dei metodi di clustering
• Scalabilità in termini di
– cardinalità dell’insieme di oggetti
– numero di attributi
•
•
•
•
•
•
Capacità di individuare cluster di forma arbitraria
Capacità di gestire outlier e rumore
Necessità di pochi parametri di configurazione
Capacità di trattare tipi di dato diversi
Interpretabilità del risultato
Insensitività all’ordine dei dati in ingresso
Copyright – Tutti i diritti riservati
Elena Baralis
Politecnico di Torino
DATA MINING: CLUSTERING - 5
Database and data mining group, Politecnico di Torino
BG
DM
DataBase and Data Mining Group of Politecnico di Torino
Misura di distanza
• Variabili continue
– necessario normalizzare l’intervallo di variazione dei
dati (per esempio, z-score)
– attenzione alle variabili non lineari
– funzione di distanza “classica”
d (i, j) = q (| x − x |q + | x − x | q +...+ | x − x |q )
i1 j1
i2
j2
ip
jp
dove xi e xj sono due oggetti con p attributi
• per q=2 distanza Euclidea
• per q=1 distanza Manhattan
– ne esistono numerose altre
Copyright – Tutti i diritti riservati
Elena Baralis
Politecnico di Torino
DATA MINING: CLUSTERING - 6
Pag. 3
Elena Baralis
Politecnico di Torino
DB
MG
Data mining: clustering
DataBase and Data Mining Group of Politecnico di Torino
Database and data mining group, Politecnico di Torino
Misura di distanza
BG
DM
DataBase and Data Mining Group of Politecnico di Torino
• Variabili booleane
d (i, j) = p −pm
– Distanza simmetrica pesa nello stesso modo 1 uguali e
0 uguali
• p = num. totale di attributi booleani
• m = num. totale di attributi con lo stesso valore
– Distanza asimmetrica pesa solo gli 1 uguali (coefficiente
di Jaccard)
• p = num. totale di attributi booleani
• m = num. totale di attributi con lo stesso valore a 1
Copyright – Tutti i diritti riservati
Elena Baralis
Politecnico di Torino
DATA MINING: CLUSTERING - 7
Database and data mining group, Politecnico di Torino
Misura di distanza
BG
DM
DataBase and Data Mining Group of Politecnico di Torino
• Variabili categoriche o nominali
d (i, j) = p −pm
– simile alle variabili booleane
• p = num. totale di attributi categoriche
• m = num. totale di attributi con lo stesso valore
• Esistono formule generali per calcolare la distanza
tra oggetti aventi attributi di tipi diversi
Copyright – Tutti i diritti riservati
Elena Baralis
Politecnico di Torino
DATA MINING: CLUSTERING - 8
Pag. 4
Elena Baralis
Politecnico di Torino
DB
MG
Data mining: clustering
DataBase and Data Mining Group of Politecnico di Torino
Database and data mining group, Politecnico di Torino
BG
DM
Tipologie di algoritmi di
clustering
DataBase and Data Mining Group of Politecnico di Torino
• Algoritmi partizionali
– partizionano i dati e valutano le partizioni secondo un
opportuno criterio
• Algoritmi gerarchici
– creano una decomposizione gerachica dell’insieme
secondo un opportuno criterio di distanza
• Algoritmi basati sulla densità
– individuazione di aree dense di punti
• Reti neurali
Copyright – Tutti i diritti riservati
Elena Baralis
Politecnico di Torino
DATA MINING: CLUSTERING - 9
Database and data mining group, Politecnico di Torino
Algoritmi partizionali: K-means
BG
DM
DataBase and Data Mining Group of Politecnico di Torino
• Metodi partizionali
– applicano euristiche per non enumerare tutti i possibili
partizionamenti (K-means, PAM)
• K-means
Dato il numero K di cluster da ottenere
1. partiziona gli oggetti in K insiemi (casuali)
2. calcola i centroidi dei cluster
3. riassegna ogni oggetto al cluster con il centroide più
vicino
4. ripeti da 2 fino a quando nessun punto è spostato
Copyright – Tutti i diritti riservati
Elena Baralis
Politecnico di Torino
DATA MINING: CLUSTERING - 10
Pag. 5
Elena Baralis
Politecnico di Torino
DB
MG
Data mining: clustering
DataBase and Data Mining Group of Politecnico di Torino
Database and data mining group, Politecnico di Torino
BG
DM
DataBase and Data Mining Group of Politecnico di Torino
Valutazione di K-means
• Punti di forza
– efficiente (lineare rispetto al numero di oggetti)
– termina in un ottimo locale
• Punti di debolezza
– sensibile alla presenza di outliers e dati rumorosi
– non adatto per individuare cluster di forma non
convessa
– necessario definire K a priori
– difficile definire il punto medio per dati categorici
Elena Baralis
Politecnico di Torino
DATA MINING: CLUSTERING - 11
Copyright – Tutti i diritti riservati
Database and data mining group, Politecnico di Torino
BG
DM
DataBase and Data Mining Group of Politecnico di Torino
Algoritmi gerarchici
•
Agglomerativi
1. Ogni oggetto forma un cluster separato
2. Ad ogni passo sono accorpati i cluster più simili
3. Termina quando gli oggetti sono tutti in un unico
cluster
•
•
Sono possibili molte misure di distanza
-
single link
-
distanza tra centroidi
Non è necessario definire il numero di cluster
Copyright – Tutti i diritti riservati
Elena Baralis
Politecnico di Torino
DATA MINING: CLUSTERING - 12
Pag. 6
Elena Baralis
Politecnico di Torino
DB
MG
Data mining: clustering
DataBase and Data Mining Group of Politecnico di Torino
Database and data mining group, Politecnico di Torino
BG
DM
Dendogramma
DataBase and Data Mining Group of Politecnico di Torino
• Mostra graficamente l’albero di formazione dei
cluster
• Il punto di taglio dell’albero definisce il numero di
cluster
Tratto da Han, Kamber,”Data mining; Concepts and Techniques”, Morgan Kaufmann 2002
Copyright – Tutti i diritti riservati
Elena Baralis
Politecnico di Torino
DATA MINING: CLUSTERING - 13
Database and data mining group, Politecnico di Torino
BG
DM
Valutazione
degli algoritmi gerarchici
DataBase and Data Mining Group of Politecnico di Torino
• Punti di forza
– accurati
– varie misure di distanza, non è necessario un criterio di
arresto
• Punti di debolezza
– poco efficienti (non scalabili nel numero di oggetti)
– non riconsiderano le scelte effettuate (non riassegnano
i punti a nuovi cluster)
• Ne esistono numerose varianti recenti
Copyright – Tutti i diritti riservati
Elena Baralis
Politecnico di Torino
DATA MINING: CLUSTERING - 14
Pag. 7
Elena Baralis
Politecnico di Torino
DB
MG
Data mining: clustering
DataBase and Data Mining Group of Politecnico di Torino
Database and data mining group, Politecnico di Torino
BG
DM
Problemi degli algoritmi
tradizionali
DataBase and Data Mining Group of Politecnico di Torino
• K-means
• Gerarchico
– distanza tra centroidi
– distanza tra punti a
distanza minima
Tratto da Guha, Rastogi, Shim, ”CURE, Clustering
Using REpresentatives”, SIGMOD 1998
Copyright – Tutti i diritti riservati
Elena Baralis
Politecnico di Torino
DATA MINING: CLUSTERING - 15
Database and data mining group, Politecnico di Torino
BG
DM
DataBase and Data Mining Group of Politecnico di Torino
Algoritmi basati sulla densità
• Criterio di clustering locale
• Parametri di densità
– raggio del vicinato di un punto
– numero minimo di punti nel vicinato
• DBSCAN
– Sceglie un punto p arbitrario
– Misura la densità del vicinato di p
• Se p è un nucleo, forma un cluster e aggiunge i punti via via
raggiungibili da p
• Se p è un punto di confine, sceglie un nuovo punto fino a
quando tutti i punti sono stati considerati
Copyright – Tutti i diritti riservati
Elena Baralis
Politecnico di Torino
DATA MINING: CLUSTERING - 16
Pag. 8
Elena Baralis
Politecnico di Torino
DB
MG
Data mining: clustering
DataBase and Data Mining Group of Politecnico di Torino
Database and data mining group, Politecnico di Torino
BG
DM
DataBase and Data Mining Group of Politecnico di Torino
Algoritmi basati sulla densità
Outlier
Confine
Eps = 1
Nucleo
MinPts = 5
Tratto da Han, Kamber,”Data mining; Concepts
and Techniques”, Morgan Kaufmann 2002
Copyright – Tutti i diritti riservati
Elena Baralis
Politecnico di Torino
DATA MINING: CLUSTERING - 17
Database and data mining group, Politecnico di Torino
BG
DM
Valutazione degli algoritmi basati
sulla densità
DataBase and Data Mining Group of Politecnico di Torino
• Punti di forza
– individuano cluster di forma arbitraria
– gestiscono rumore e outliers
– eseguono una sola passata sui dati
• Punti di debolezza
– richiedono di definire parametri di densità
(valori non ovvi)
Copyright – Tutti i diritti riservati
Elena Baralis
Politecnico di Torino
DATA MINING: CLUSTERING - 18
Pag. 9
Elena Baralis
Politecnico di Torino