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