Professional Documents
Culture Documents
Clustering
Fernando Berzal
fberzal@decsai.ugr.es
http://elvex.ugr.es/idbis/dm/
Intelligent Databases and Information Systems research group
Clustering
Introduccin
Similitud
Mtodos
K-Means
Jerrquicos
Densidad
Otros
Subspace
clustering
Validacin
Bibliografa
Clustering (IA)
Clasificacin (Estadstica)
Ordenacin (Psicologa)
Segmentacin (Marketing)
Clustering
Introduccin
Similitud
Mtodos
K-Means
Jerrquicos
Densidad
Otros
Subspace
clustering
Validacin
Bibliografa
Objetivo
Agrupar objetos similares entre s que sean
distintos a los objetos de otros agrupamientos
[clusters].
Aprendizaje no supervisado
No existen clases predefinidas
Los resultados obtenidos dependern de:
Clustering
Encontrar agrupamientos de tal forma que los
objetos de un grupo sean similares entre s y
diferentes de los objetos de otros grupos:
Minimizar
distancia
intra-cluster
Maximizar
distancia
intercluster
Clustering
Aplicaciones
Reconocimiento de formas.
Mapas temticos (GIS)
Marketing: Segmentacin de clientes
Clasificacin de documentos
Anlisis de web logs (patrones de acceso
similares)
Clustering
Cul es la forma natural de agrupar los
personajes?
Hombres
vs.
Mujeres
Clustering
Cul es la forma natural de agrupar los
personajes?
Simpsons
vs.
Empleados
de la escuela
de Springfield
Clustering
Cul es la forma natural de agrupar los
personajes?
Medidas de similitud
Peter Pedro
342.7
0.23
3
Medidas de similitud
Usualmente, se expresan en trminos de
distancias:
d(i,j) > d(i,k)
nos indica que el objeto i es ms parecido a k que
aj
Medidas de similitud
Cuntos
agrupamiento
s?
Seis?
Dos?
Cuatro?
11
Medidas de similitud
Atributos continuos
Usualmente, se estandarizan a priori:
s f 1n (| x1 f m f | | x2 f m f | ... | xnf m f |)
m f 1n (x1 f x2 f
...
xnf )
xif m f
zif
sf
12
Medidas de similitud
Mtricas de distancia
Distancia de Minkowski
13
Medidas de similitud
Mtricas de distancia
Distancia de Minkowski
Distancia de Manhattan = 12
Distancia Eucldea 8.5
Distancia de Chebyshev = 6
14
Medidas de similitud
Mtricas de distancia
Distancia de Minkowski d(i,j) 0
Propiedad reflexiva
Propiedad simtrica
Desigualdad triangular
d(i,i) = 0
d(i,j) = d(j,i)
d(i,j) d(i,k)+d(k,j)
15
Medidas de similitud
Mtricas de distancia
Distancia de Chebyshev
Tambin conocida
como distancia de
tablero de ajedrez
(chessboard distance):
Nmero de
movimientos
que el rey ha de hacer
para llegar de una
casilla a otra en un
tablero de ajedrez.
16
Medidas de similitud
Mtricas de distancia
Distancia de Mahalanobis
Considera las
correlaciones
entre variables.
No depende de la
escala de medida.
17
Medidas de similitud
Mtricas de distancia
Distancia de edicin = Distancia de
Levenshtein
Nmero de operaciones necesario
para transformar una cadena en otra.
d(data mining, data minino) = 1
d(efecto, defecto) = 1
d(poda, boda) = 1
d(night,natch) = d(natch,noche) =
3
Aplicaciones:
Aplicaciones Correctores ortogrficos,
19
reconocimiento de voz, deteccin de plagios,
Medidas de similitud
Mtricas de distancia
Vecinos compartidos
i
20
Medidas de similitud
Medidas de correlacin
Producto escalar
Cosine similarity
Coeficiente de Tanimoto
21
Medidas de similitud
Modelos basados en Teora de
Conjuntos
Modelo de Tversky
Modelo de Restle
Interseccin
23
Medidas de similitud
Modelos basados en Teora de
Conjuntos
Modelo proporcional
Distancia de Tanimoto
24
Mtodos de agrupamiento
Requisitos del algoritmo perfecto
Escalabilidad
Manejo de distintos tipos de datos
Identificacin de clusters con formas arbitrarias
Nmero mnimo de parmetros
Tolerancia frente a ruido y outliers
Independencia con respecto al orden de
presentacin de los patrones de entrenamiento
Posibilidad de trabajar en espacios con muchas
dimensiones diferentes
Capacidad de incorporar restricciones
especificadas por el usuario (domain
knowledge)
26
Interpretabilidad / Usabilidad
Mtodos de agrupamiento
Tipos de algoritmos de clustering
27
Mtodos de agrupamiento
Clustering por particiones
Datos originales
Datos agrupados
28
Mtodos de agrupamiento
Clustering jerrquico
p1
p3 p4
p2
p1 p2
Tradicional
p3 p4
DENDOGRAMA
p1
p3
p4
p2
p1 p2
No tradicional
p3 p4
29
Mtodos de agrupamiento
Mtodos basados en densidad
30
k-Means
Algoritmo de agrupamiento por particiones
(MacQueen, 1967)
31
k-Means
Iteration 6
1
2
3
4
5
3
2.5
2
1.5
1
0.5
0
-2
-1.5
-1
-0.5
0.5
1.5
32
k-Means
Iteration 1
Iteration 2
1.5
1.5
1.5
2.5
2.5
2.5
0.5
0.5
0.5
-2
-1.5
-1
-0.5
0.5
1.5
-2
Iteration 4
-1.5
-1
-0.5
0.5
1.5
-2
Iteration 5
1.5
1.5
1.5
0.5
0.5
0.5
-1
-0.5
0.5
1.5
-1
-0.5
0.5
1.5
1.5
Iteration 6
2.5
2.5
-1.5
-1.5
2.5
-2
Iteration 3
-2
-1.5
-1
-0.5
0.5
1.5
-2
-1.5
-1
-0.5
0.5
33
k-Means
Iteration 5
1
2
3
4
3
2.5
2
1.5
1
0.5
0
-2
-1.5
-1
-0.5
0.5
1.5
34
k-Means
Iteration 1
1.5
1.5
2.5
2.5
0.5
0.5
-2
-1.5
-1
-0.5
0.5
Iteration 3
Iteration 2
1.5
-2
-1.5
-1
Iteration 4
-0.5
1.5
1.5
1.5
0.5
0.5
0.5
-1
-0.5
0.5
1.5
1.5
Iteration 5
2.5
2.5
-1.5
0.5
2.5
-2
-2
-1.5
-1
-0.5
0.5
1.5
-2
-1.5
-1
-0.5
0.5
1.5
35
k-Means
3
2.5
Puntos originales
1.5
1
0.5
0
-2
-1.5
-1
-0.5
0.5
1.5
2.5
2.5
1.5
1.5
0.5
0.5
-2
-1.5
-1
-0.5
0.5
Solucin ptima
1.5
-2
-1.5
-1
-0.5
ptimo local
0.5
1.5
36
k-Means
Ejercicio
Agrupar los 8 puntos de la
figura en 3 clusters usando
el algoritmo de las K medias.
Centroides iniciales:
A1, A7 y A8
Mtricas de distancia:
Distancia eucldea
Distancia de Manhattan
Distancia de Chebyshev
37
k-Means
Ejercicio resuelto
Distancia eucldea
38
k-Means
Ejercicio resuelto
Distancia eucldea
Primera iteracin
Segunda iteracin
39
k-Means
Ejercicio resuelto
Distancia eucldea
Tercera iteracin
Configuracin final
40
k-Means
DEMO: K-Means
http://www.elet.polimi.it/upload/matteucc/Clustering/tutorial_html/AppletKM.html
41
k-Means
Ventaja
Eficiencia O(nkId)
vs. PAM
O(Ik(n-k)2)
CLARA O(ks2+k(n-k))
Desventajas
42
k-Means
Clusters de
distinto tamao
Clusters de
distinta densidad
Clusters
no convexos
43
k-Means
Variantes
k-Means
DEMO: Fuzzy C-Means
http://www.elet.polimi.it/upload/matteucc/Clustering/tutorial_html/AppletFCM.html
45
Clustering jerrquico
DENDROGRAMA:
DENDROGRAMA La similitud entre dos objetos
viene dada por la altura del nodo comn ms
cercano.
46
Clustering jerrquico
Clustering jerrquico
Outlier
El DENDROGRAMA
tambin nos puede servir para detectar outliers.48
Clustering jerrquico
0
a
b
aglomerativo
(AGNES)
AGglomerative NESting
ab
abcde
cde
de
e
4
divisivo
(DIANA)
Divisive ANAlysis
49
Clustering jerrquico
Cmo medir la distancia entre clusters?
MIN
single-link
MAX
complete
linkage
(diameter)
50
Clustering jerrquico
Cmo medir la distancia entre clusters?
Promedio
Centroides
p.ej. BIRCH
51
Clustering jerrquico
Ejercicio
Utilizar un algoritmo aglomerativo de clustering jerrquico para
agrupar los datos descritos por la siguiente matriz de
distancias:
Variantes:
52
Clustering jerrquico
Ejercicio resuelto
Single-link
Complete-link
53
Clustering jerrquico
DEMO: Algoritmo aglomerativo
http://www.elet.polimi.it/upload/matteucc/Clustering/tutorial_html/AppletH.html
54
Clustering jerrquico
Datos sintticos (4 clusters): Single-link
55
Clustering jerrquico
Datos sintticos (4 clusters): Complete-link
56
Clustering jerrquico
Datos sintticos (aleatorios): Single-link
57
Clustering jerrquico
Datos sintticos (aleatorios): Complete-link
58
Clustering jerrquico
Principal inconveniente del clustering
jerrquico:
Baja escalabilidad
O(n2)
Algoritmos escalables:
59
Clustering jerrquico
CURE
60
Clustering jerrquico
Agrupamientos
con distintas
densidades
CURE
61
Clustering jerrquico
Particin del grafo
Clusters finales
CHAMELEON
Combinar
particiones
62
Clustering jerrquico
CHAMELEON
63
Density-based Clustering
Criterio de agrupamiento local:
Densidad de puntos
Regin densas de puntos separadas
de otras regiones densas por regiones poco
densas
Caractersticas
64
Density-based Clustering
Algoritmos
Density-based Clustering
Ejercicio
Agrupar los 8 puntos
de la figura utilizando
el algoritmo DBSCAN.
66
Density-based Clustering
Ejercicio resuelto
Distancia eucldea
67
Density-based Clustering
Ejercicio resuelto
Epsilon =
68
Density-based Clustering
Ejercicio resuelto
Epsilon =
69
Density-based Clustering
DEMO: DBSCAN et al.
http://www.cs.ualberta.ca/~yaling/Cluster/Applet/Code/Cluster.html
70
Density-based Clustering
Clusters
71
Density-based Clustering
72
Density-based Clustering
Otros mtodos
Grids multiresolucin
74
Otros mtodos
Grids multiresolucin
75
Otros mtodos
Clustering basado en modelos
Ajustar los datos a un modelo matemtico
Se supone que los datos provienen de la
superposicin de varias distribuciones de
probabilidad.
Algoritmos
Estadstica:
EM [Expectation Maximization], AutoClass
Clustering conceptual (Machine Learning):
COBWEB, CLASSIT
Redes neuronales:
SOM [Self-Organizing Maps]
76
Otros mtodos
Clustering con restricciones
p.ej. Clustering con obstculos
Posibles aplicaciones:
Distribucin de cajeros
automticos/supermercados
77
Subspace clustering
La dimensionalidad de los datos
Por qu es un problema?
78
Subspace clustering
La dimensionalidad de los datos
Soluciones
79
Subspace clustering
80
Subspace clustering
81
Subspace clustering
DEMO: CLIQUE et al.
http://www.cs.ualberta.ca/~yaling/Cluster/Applet/Code/Cluster.html
82
Validacin
Cmo se puede evaluar
la calidad de los clusters obtenidos?
Depende de lo que estemos buscando
83
Validacin
Criterios externos
(aportando informacin adicional)
p.ej. entropa/pureza (como en clasificacin)
Criterios internos
(a partir de los propios datos),
p.ej. SSE (Sum of Squared Error)
Validacin
Cul es el nmero adecuado de agrupamientos?
p.ej. SSE (Sum of Squared Error)
k=1
J = 873.0
k=2
J = 173.1
k=3
J = 133.6
85
Validacin
Cul es el nmero adecuado de agrupamientos?
p.ej. SSE (Sum of Squared Error)
1.00E+03
9.00E+02
8.00E+02
7.00E+02
6.00E+02
5.00E+02
4.00E+02
3.00E+02
2.00E+02
1.00E+02
0.00E+00
1
k
86
Validacin
6
4
2
0
-2
-4
-6
5
10
15
10
9
8
7
SSE
6
5
4
3
2
1
0
10
15
20
25
30
87
Validacin
1
5
7
88
Validacin
Matriz de similitud
Ordenamos los datos en la matriz de similitud
con respecto a los clusters en los que quedan
los datos e inspeccionamos visualmente
1
10
0.9
20
0.8
0.7
30
0.7
0.6
40
0.6
50
0.5
60
0.4
0.3
70
0.3
0.2
80
0.2
90
0.1
0.9
Points
0.8
0.5
0.4
0.1
0
0.2
0.4
0.6
0.8
100
20
40
60
Points
80
0
100 Similarity
89
Validacin
Matriz de similitud
1
10
0.9
20
0.8
30
0.7
40
0.6
50
0.5
60
0.4
70
0.3
80
0.2
0.9
90
0.1
Points
100
0.8
20
0.7
40
60
Points
80
0
100 Similarity
0.6
1
0.5
0.4
10
0.9
0.8
30
0.7
0.2
40
0.6
50
0.5
60
0.4
70
0.3
80
0.2
90
0.1
Points
20
0.3
0.1
0
0.2
0.4
0.6
0.8
100
20
40
60
Points
80
90
0
100 Similarity
Validacin
Matriz de similitud
DBSCAN
5
7
1
0.9
500
0.8
0.7
1000
0.6
1500
0.5
0.4
2000
0.3
0.2
2500
0.1
3000
500
1000
1500
2000
2500
3000
91
Bibliografa
92
Bibliografa
93
Crditos
Jiawei Han (University of Illinois at UrbanaChampaign): Data Mining: Concepts and
Techniques, captulo 7, 2006
Pang-Ning Tan (Michigan State University),
Michael Steinbach & Vipin Kumar (University of
Minnesota): Introduction to Data Mining,
captulos 8 y 9, 2006
94
Apndice: Notacin O
El impacto de la eficiencia de un algoritmo
n
10
100
1000
10000
100000
O(n)
10ms
0.1s
1s
10s
100s
O(nlog2 n)
33ms
0.7s
10s
2 min
28 min
O(n2)
100ms
10s
17 min
O(n3)
1s
17min
12 das 31 aos 32
milenios
95