Sei sulla pagina 1di 89

Fundamentos de Minera de Datos

Clster automtico Deteccin

CHALCO HUARACHI ELMER ANDER


Clustering
Introduccin
Sinnimos segn el contexto
Similitud
Mtodos Clustering (IA)
K-Means
Jerrquicos
Densidad Aprendizaje no supervisado (IA)
Otros
Subspace
clustering Clasificacin (Estadstica)
Validacin
Bibliografa
Ordenacin (Psicologa)

Segmentacin (Marketing)

2
Clustering
Introduccin Objetivo
Similitud
Mtodos
Agrupar objetos similares entre s que sean
K-Means distintos a los objetos de otros agrupamientos
Jerrquicos [clusters].
Densidad
Otros
Subspace
Aprendizaje no supervisado
clustering No existen clases predefinidas
Validacin

Los resultados obtenidos dependern de:


El algoritmo de agrupamiento seleccionado.
El conjunto de datos disponible
La medida de similitud utilizada para
comparar objetos. 3
Clustering
Encontrar agrupamientos de tal forma que los
objetos de un grupo sean similares entre s y
diferentes de los objetos de otros grupos:

Maximizar
Minimizar distancia
distancia inter-
intra-cluster cluster

4
Clustering
Aplicaciones
Reconocimiento de formas.
Mapas temticos (GIS)
Marketing: Segmentacin de clientes
Clasificacin de documentos
Anlisis de web logs (patrones de acceso
similares)

Aplicaciones tpicas en Data Mining:


Exploracin de datos (segmentacin & outliers)
Preprocesamiento (p.ej. reduccin de datos)
5
Clustering
Cul es la forma natural de agrupar los
personajes?

Hombres
vs.
Mujeres

6
Clustering
Cul es la forma natural de agrupar los personajes?

Simpsons
vs.
Empleados
de la escuela
de Springfield
7
Clustering
Cul es la forma natural de agrupar los
personajes?

El clustering es subjetivo !!!


8
Medidas de similitud

Peter Pedro

0.23 342.7

3 9
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 a j

La definicin de la mtrica de similitud/distancia


ser distinta en funcin del tipo de dato y
de la interpretacin semntica que nosotros
hagamos.

En otras palabras, la similitud entre objetos es


subjetiva.
10
Medidas de similitud

Cuntos Dos?
agrupamiento
s?

Seis? Cuatro?

11
Medidas de similitud
Atributos continuos
Usualmente, se estandarizan a priori:

Desviacin absoluta media:

s f 1n (| x1 f m f | | x2 f m f | ... | xnf m f |)

m f 1n (x1 f x2 f ... xnf )


.

z-score (medida estandarizada):

xif m f
zif sf 12
Medidas de similitud
Mtricas de distancia
Distancia de Minkowski

Distancia de Manhattan (r=1) / city block /


taxicab

Distancia eucldea (r=2):

Distancia de Chebyshev (r) / dominio /


chessboard
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 d(i,i) = 0

Propiedad simtrica d(i,j) = d(j,i)

Desigualdad triangular 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, reconocimiento
de voz, deteccin de plagios, anlisis de ADN

Para datos binarios: Distancia de Hamming 19


Medidas de similitud
Mtricas de distancia
Vecinos compartidos

i j i j
4

Mutual Neighbor Distance

donde NN(xi,xj) es el nmero de vecino


de xj con respecto a xi 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

Modelo de Gregson = Coeficiente de Jaccard

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)
Interpretabilidad / Usabilidad 26
Mtodos de agrupamiento
Tipos de algoritmos de clustering

Agrupamiento por particiones


k-Means, CLARANS

Clustering jerrquico
BIRCH, ROCK, CHAMELEON

Mtodos basados en densidad


DBSCAN


27
Mtodos de agrupamiento
Clustering por particiones

Datos originales Datos agrupados 28


Mtodos de agrupamiento
Clustering jerrquico

p1
p3 p4
p2
p1 p2 p3 p4
Tradicional DENDOGRAMA

p1
p3 p4
p2
p1 p2 p3 p4
29
No tradicional
Mtodos de agrupamiento
Mtodos basados en densidad
Un cluster en una regin densa de puntos,
separada por regiones poco densas de otras
regiones densas.
tiles cuando los clusters tienen formas
irregulares, estn entrelazados o hay ruido/outliers
en los datos.

30
k-Means
Algoritmo de agrupamiento por particiones
(MacQueen, 1967)
Nmero de clusters conocido (k)
Cada cluster tiene asociado un centroide
(centro geomtrico del cluster).
Los puntos se asignan al cluster cuyo centroide est
ms cerca (utilizando cualquier mtrica de distancia).
Iterativamente, se van actualizando los centroides en
funcin de las asignaciones de puntos a clusters,
hasta que los centroides dejen de cambiar.
Complejidad O(n*k*I*d)
donde n es el nmero de datos, k el nmero de
clusters,
I el nmero de iteraciones y d el nmero de atributos
31
k-Means
Iteration 6
1
2
3
4
5
3

2.5

1.5
y

0.5

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2


x
32
k-Means
Iteration 1 Iteration 2 Iteration 3
3 3 3

2.5 2.5 2.5

2 2 2

1.5
y 1.5 1.5

y
1 1 1

0.5 0.5 0.5

0 0 0

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2
x x x

Iteration 4 Iteration 5 Iteration 6


3 3 3

2.5 2.5 2.5

2 2 2

1.5 1.5 1.5


y

y
1 1 1

0.5 0.5 0.5

0 0 0

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2
x x x

33
k-Means
Iteration 5
1
2
3
4
3

2.5

1.5
y

0.5

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2


x

34
k-Means
Iteration 1 Iteration 2
3 3

2.5 2.5

2 2

1.5 1.5

y
1 1

0.5 0.5

0 0

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2


x x

Iteration 3 Iteration 4 Iteration 5


3 3 3

2.5 2.5 2.5

2 2 2

1.5 1.5 1.5


y

y
1 1 1

0.5 0.5 0.5

0 0 0

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2
x x x

35
k-Means
3

2.5

2
Puntos originales
1.5
y

0.5

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2


x

3 3

2.5 2.5

2 2

1.5 1.5
y

1 y 1

0.5 0.5

0 0

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2


x x
36
Solucin ptima ptimo local
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
Termina en un ptimo local:
El resultado depende de la seleccin inicial de
centroides.
Necesidad de conocer el nmero de agrupamientos k
Incapacidad para detectar ruido / identificar outliers.
No resulta adecuado para detectar clusters no
convexos
Si tenemos datos de tipo categrico,
cmo calculamos la media? 42
k-Means
Clusters de
distinto tamao

Clusters de
distinta densidad

Clusters
no convexos
43
k-Means
Variantes

GRASP [Greedy Randomized Adaptive Search


Procedure] para evitar ptimos locales.

k-Modes (Huang1998) utiliza modas en vez de


medias (para poder trabajar con atributos de tipo
categrico).

k-Medoids utiliza medianas en vez de medias para


limitar la influencia de los outliers

vg. PAM (Partitioning Around Medoids, 1987)


CLARA (Clustering LARge Applications, 1990)
CLARANS (CLARA + Randomized Search, 1994) 44
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

El DENDROGRAMA nos puede ayudar a determinar


el nmero adecuado de agrupamientos (aunque
normalmente no ser tan fcil). 47
Clustering jerrquico

Outlier

El DENDROGRAMA
tambin nos puede servir para detectar outliers. 48
Clustering jerrquico
0 1 2 3 4
aglomerativo
(AGNES)
a AGglomerative NESting
ab
b abcde
c
cde
d
de
e
divisivo
4 3 2 1 0 (DIANA)
Divisive ANAlysis

En lugar de establecer de antemano el nmero de


clusters, tenemos que definir un criterio de parada
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:
Single-link (mnima distancia entre agrupamientos)
Complete-link (mxima distancia entre agrupamientos)
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:
BIRCH: Balanced Iterative Reducing and Clustering using
Hierarchies (Zhang, Ramakrishnan & Livny,
SIGMOD1996)
ROCK: RObust Clustering using linKs
(Guha, Rastogi & Shim, ICDE1999)
CURE: Clustering Using REpresentatives
(Guha, Rastogi & Shim, SIGMOD1998)
CHAMELEON: Hierarchical Clustering Using Dynamic
Modeling (Karypis, Han & Kumar, 1999) 59
Clustering jerrquico

CURE 60
Clustering jerrquico
Agrupamientos
con distintas
densidades

CURE 61
Clustering jerrquico
Particin del grafo

Clusters finales
Combinar
particiones

CHAMELEON 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

Identifica clusters de formas arbitrarias.


Robusto ante la presencia de ruido
Escalable: Un nico recorrido del conjunto de datos
64
Density-based Clustering
Algoritmos

DBSCAN: Density Based Spatial Clustering of


Applications with Noise (Ester et al., KDD1996)
OPTICS: Ordering Points To Identify the Clustering
Structure (Ankerst et al. SIGMOD1999)
DENCLUE: DENsity-based CLUstEring
(Hinneburg & Keim, KDD1998)
CLIQUE: Clustering in QUEst
(Agrawal et al., SIGMOD1998)
SNN (Shared Nearest Neighbor) density-based
clustering
(Ertz, Steinbach & Kumar, SDM2003) 65
Density-based Clustering
Ejercicio

Agrupar los 8 puntos


de la figura utilizando
el algoritmo DBSCAN.

Nmero mnimo de puntos


en el vecindario:

MinPts = 2

Radio del vecindario:

Epsilon

66
Density-based Clustering
Ejercicio resuelto
Distancia eucldea

67
Density-based Clustering
Ejercicio resuelto Epsilon =

A1, A2 y A7 no tienen vecinos en su vecindario,


por lo que se consideran outliers (no estn en zonas densas):

68
Density-based Clustering
Ejercicio resuelto Epsilon =

Al aumentar el valor del parmetro Epsilon,


el vecindario de los puntos aumenta y todos quedan agrupados:

69
Density-based Clustering
DEMO: DBSCAN et al.
http://www.cs.ualberta.ca/~yaling/Cluster/Applet/Code/Cluster.html

70
Density-based Clustering

Clusters

DBSCAN cuando funciona bien 71


Density-based Clustering

DBSCAN sensible al valor inicial de sus


parmetros 72
Density-based Clustering

i j i j
4

SNN density-based clustering O(n273)


Otros mtodos
Grids multiresolucin

74
Otros mtodos
Grids multiresolucin
STING, a STatistical INformation Grid approach
(Wang, Yang & Muntz, VLDB1997)

WaveCluster, basado en wavelets


(Sheikholeslami, Chatterjee & Zhang,
VLDB1998)

CLIQUE: CLustering In QUEst


(Agrawal et al., SIGMOD1998)

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?
Los datos en una dimensin estn
relativamente cerca
Al aadir una nueva dimensin, los datos se
alejan.
Cuando tenemos muchas dimensiones, las
medidas de distancia no son tiles
(equidistancia).

78
Subspace clustering
La dimensionalidad de los datos

Soluciones

Transformacin de caractersticas (PCA, SVD)


til slo si existe correlacin/redundancia

Seleccin de caractersticas (wrapper/filter)


til si se pueden encontrar clusters en subespacios

Subspace clustering
Buscar clusters en todos los subespacios posibles.

vg. CLIQUE (Agrawal et al., SIGMOD1998)


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

Hay situaciones en las que nos interesa:


Evitar descubrir clusters donde slo hay ruido.

Comparar dos conjuntos de clusters

alternativos.
Comparar dos tcnicas de agrupamiento
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)


para comparar clusters

para estimar el nmero de clusters

Otras medidas:
cohesin, separacin, coeficientes de silueta 84
Validacin
Cul es el nmero adecuado de agrupamientos?
p.ej. SSE (Sum of Squared Error)

k=1 k=2 k=3


J = 873.0 J = 173.1 J = 133.6

85
Validacin
Cul es el nmero adecuado de agrupamientos?
p.ej. SSE (Sum of Squared Error)

J 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 2 3 4 5 6

El codo en k=2 sugiere que ste es el valor


k
adecuado para el nmero de agrupamientos.
86
Validacin
6

-2

-4

-6
5 10 15

10

6
SSE

0 87
2 5 10 15 20 25 30
K
Validacin
1
2 6

3
4

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
1
10 0.9
0.9
20 0.8
0.8

0.7 30 0.7

0.6 40 0.6

Points
0.5 50 0.5
y

0.4 60 0.4

0.3 70 0.3
0.2 80 0.2
0.1
90 0.1
0
0 0.2 0.4 0.6 0.8 1 100 0
20 40 60 80 100 Similarity
x
Points

89
Validacin
Matriz de similitud 10
1

0.9

Clusters en datos aleatorios 20 0.8

30 0.7

(DBSCAN y k-Means) 40 0.6

Points
50 0.5

60 0.4

70 0.3

1 80 0.2

0.9 90 0.1

100 0
0.8 20 40 60 80 100 Similarity
Points
0.7

0.6
1
0.5
y

10 0.9
0.4
20 0.8
0.3 30 0.7

0.2 40 0.6

Points
0.1 50 0.5

60 0.4
0
0 0.2 0.4 0.6 0.8 1
70 0.3
x
80 0.2

90 0.1

100
20 40 60 80 90 0
100 Similarity
Points
Validacin
Matriz de similitud
1
2 6

3
DBSCAN 4

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
0 91
Crditos
Jiawei Han (University of Illinois at Urbana-
Champaign): 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

92

Potrebbero piacerti anche