Está en la página 1de 76

Mtodos de agrupamiento

Clustering
Fernando Berzal
Intelligent Databases and Information Systems research group

Department of Computer Science and Artificial Intelligence E.T.S Ingeniera Informtica Universidad de Granada (Spain)

Analizador Numrico
Ejecutamos nc.bat:

Pinchamos sobre el botn Inicio y buscamos el fichero de configuracin necesario para acceder a nuestros datos (p.ej. Iris.cfg).

Analizador Numrico
Ahora podemos utilizar distintas tcnicas de aprendizaje sobre nuestro conjunto de datos:

Analizador Numrico
Empezamos viendo algunas caractersticas del conjunto de datos (Datos > Estadsticas):

Analizador Numrico
Tambin podemos ver grficamente la distribucin de las muestras (Datos > Representacin 2D):

Analizador Numrico
Cuando nuestro conjunto de patrones viene dado por un conjunto de imgenes (como es el caso de Galaxy o Igaliko) podemos acceder a la representacin visual de cada dimensin (Datos > Estadsticas > Ver imagen):

Mtodos de agrupamiento

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: El algoritmo de agrupamiento seleccionado. El conjunto de datos disponible La medida de similitud utilizada para comparar objetos.
6

Mtodos de agrupamiento
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 inter-cluster

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.
8

Medidas de similitud

Cuntos agrupamientos?

Dos?

Seis?

Cuatro?
9

Algoritmos de agrupamiento
Con nmero de clases desconocido

Mtodo adaptativo Algoritmo de mxima distancia (Batchelor & Wilkins)

Con nmero de clases conocido


Algoritmo Algoritmo Algoritmo Algoritmo

de las K Medias GRASP de agrupamiento secuencial ISODATA

Mtodos basados en grafos

Algoritmo basado en la matriz de similitud

10

Algoritmo adaptativo

11

Algoritmo adaptativo
Caractersticas principales
Ventajas til cuando no se conoce de antemano el nmero de clases del problema (nmero de clusters desconocido). Simplicidad y eficiencia. Desventajas Dependencia del orden de presentacin (comportamiento sesgado por el orden de presentacin de los patrones). Presupone agrupamientos compactos separados claramente de los dems (puede no funcionar adecuadamente en presencia de ruido).
12

Algoritmo adaptativo
Funcionamiento
Inicializacin Se forma un agrupamiento con el primer patrn del conjunto de datos. Mientras queden patrones por asignar El patrn se asigna a un cluster si la distancia del patrn al centroide del cluster no supera un umbral . En caso contrario, se crea un nuevo agrupamiento si la distancia del patrn al cluster ms cercano est por encima de .
13

Algoritmo adaptativo
Funcionamiento
Este algoritmo incluye una clase de rechazo: Algunas observaciones no son clasificadas.

14

Algoritmo adaptativo
Ejemplo

15

Algoritmo adaptativo
Ejemplo

16

Algoritmo adaptativo
Ejemplo

17

Algoritmo adaptativo
Parmetros

Umbral de distancia

Umbral de distancia utilizado para crear nuevos agrupamientos.

Fraccin

Fraccin del umbral de distancia que determina total confianza (utilizada para determinar si un patrn se le asigna a un cluster o no).
18

Algoritmo adaptativo
Resultados
Galaxia en espiral

El parmetro fundamental a la hora de conseguir un buen resultado es el umbral . Cuanto mayor sea este umbral, menos agrupamientos se 19 formarn. El parmetro influye menos.

Algoritmo adaptativo
Ejercicios: Iris
Encontrar los valores de los parmetros del algoritmo que permiten obtener un porcentaje de clasificacin mayor (bondad estimada del clasificador que aparece cuando pulsamos el botn Clasificador asociado).

20

Batchelor & Wilkins


Ejercicios: Iris
Encontrar los valores de los parmetros del algoritmo que reducen la dispersin media (esto es, la distancia media de un patrn al centroide de su cluster) sin afectar demasiado a la bondad del clasificador asociado ni incrementar en exceso el nmero de agrupamientos.

21

Batchelor & Wilkins

22

Batchelor & Wilkins


Caractersticas principales
Ventajas til cuando no se conoce de antemano el nmero de clases del problema (nmero de clusters desconocido). Un nico parmetro. Desventajas Sensibilidad al valor del parmetro.

23

Batchelor & Wilkins


Funcionamiento

Primer agrupamiento: Patrn escogido al azar. Segundo agrupamiento: Patrn ms alejado del primer agrupamiento . Mientras se creen nuevos agrupamientos, obtener el patrn ms alejado de los agrupamientos existentes (mximo de las distancias mnimas de los patrones a los agrupamientos). Si la distancia del patrn escogido al conjunto de agrupamientos es mayor que una fraccin f de la distancia media entre los agrupamientos, crear un agrupamiento con el patrn seleccionado. Asignar cada patrn a su agrupamiento ms cercano.
24

Batchelor & Wilkins


Ejemplo (f=0.5)

25

Batchelor & Wilkins


Ejemplo (f=0.5)

26

Batchelor & Wilkins


Ejemplo (f=0.5)

27

Batchelor & Wilkins


Ejemplo (f=0.5)

28

Batchelor & Wilkins


Parmetros

Fraccin f Fraccin de la distancia media entre los agrupamientos existentes (utilizada para determinar si se crea o no un nuevo agrupamiento).

29

Batchelor & Wilkins


Resultados
Galaxia en espiral

Conforme aumenta el valor de f, disminuye el nmero de agrupamientos hasta llega un momento en el que nos quedamos slo con 2 clusters.30

Batchelor & Wilkins


Ejercicios: Iris
Encontrar los valores de los parmetros del algoritmo que permiten obtener un porcentaje de clasificacin mayor a la vez que minimizan el nmero de clusters (idealmente, slo tres agrupamientos deberan ser necesarios).

31

k-Means

32

k-Means
Caractersticas principales El mtodo de las K Medias (MacQueen, 1967)
Ventajas Sencillo y eficiente. Un nico parmetro. Desventajas Sesgado por el orden de presentacin de los patrones (el resultado depende de la configuracin inicial de los agrupamientos). Necesidad de conocer el nmero de clusters k: Su comportamiento depende enormemente del valor 33 elegido para el parmetro k.

k-Means
Funcionamiento

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.

BASE TERICA: Algoritmo basado en la minimizacin de la distancia interna (suma de las distancias de los patrones asignados a un agrupamiento a su centroide). En realidad, se minimiza la suma de las distancias al 34 cuadrado de cada patrn al centroide de su cluster.

k-Means
Iteration 1 6 5 4 3 2
3 2.5

1.5

y
1 0.5 0 -2

-1.5

-1

-0.5

0.5

1.5

x
35

k-Means
Iteration 1
3 3 2.5 2.5

Iteration 2
3 2.5

Iteration 3

1.5

1.5

1.5

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

0.5

-2

-1.5

-1

-0.5

0.5

1.5

-1.5

-1

-0.5

0.5

1.5

Iteration 4
3 3 2.5 2.5

Iteration 5
3 2.5

Iteration 6

1.5

1.5

1.5

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

0.5

-2

-1.5

-1

-0.5

0.5

1.5

-1.5

-1

-0.5

0.5

1.5

36

k-Means
Iteration 1 5 4 3 2
3 2.5

1.5

y
1 0.5 0 -2

-1.5

-1

-0.5

0.5

1.5

37

k-Means
Iteration 1
3 3 2.5 2.5

Iteration 2

1.5

1.5

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.5

1.5

Iteration 3
3 3 2.5 2.5

Iteration 4
3 2.5

Iteration 5

1.5

1.5

1.5

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

0.5

-2

-1.5

-1

-0.5

0.5

1.5

-1.5

-1

-0.5

0.5

1.5

38

k-Means
3 2.5 2

Puntos originales

1.5

y
1 0.5 0 -2

-1.5

-1

-0.5

0.5

1.5

2.5

2.5

1.5

1.5

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.5

1.5

Solucin ptima

ptimo local

39

k-Means
Clusters de distinto tamao

Clusters de distinta densidad

Clusters no convexos
40

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)

41

k-Means
Parmetros

Nmero deseado de agrupamientos.

42

GRASP

43

GRASP
Caractersticas principales Greedy Randomized Adaptive Search Procedure
Ventajas Sencillo y eficiente. Evita caer en ptimos locales. Desventajas Necesidad de conocer el nmero de clusters k: Su comportamiento depende enormemente del valor elegido para el parmetro k.

44

GRASP
Funcionamiento
Se repite el siguiente proceso un nmero determinado de iteraciones Se busca una posible solucin (centroides escogidos aleatoriamente de entre aquellos patrones que estn ms lejos de los centroides ya escogidos). Se aplica una tcnica de optimizacin local (k-Means) para obtener un conjunto de agrupamientos. Opcionalmente, se puede alterar aleatoriamente el resultado obtenido [mutacin] y repetir la bsqueda de un ptimo local con la solucin mutada. De todas las soluciones obtenidas, nos quedamos con la mejor (aquella que minimiza la suma de las distancias 45 al cuadrado de cada patrn al centroide de su cluster).

GRASP
Parmetros

Nmero deseado de agrupamientos.

Iteraciones Nmero de iteraciones.


Longitud de ciclo Nmero de mutaciones por iteracin.

46

GRASP
Resultados: TITANIC (K=5, sin mutacin)

5 particiones del conjunto de datos J: Suma de las distancias al cuadrado. %TRA: Acierto sobre el conjunto de entrenamiento. %TST: Acierto sobre el conjunto de prueba.

47

GRASP
Resultados: TITANIC

Distribucin de J
48

Algoritmo secuencial

49

Algoritmo secuencial
Caractersticas principales
Ventajas Flexibilidad: Su comportamiento puede ajustarse gracias a su amplio conjunto de parmetros. Eficiencia: Clculos muy sencillos, basta con recorrer una vez el conjunto de datos. Desventajas Utilizacin: Los valores adecuados para los parmetros son difciles de establecer a priori, por lo que se suele emplear un proceso de prueba y error. Sesgado por los primeros patrones: Los resultados obtenidos dependen del orden de presentacin de los 50 patrones.

Algoritmo secuencial
Funcionamiento
Similar al K-Means, si bien introduce algunas novedades

El parmetro K se considera un valor mximo (puede devolver un nmero de agrupamientos menor). Partiendo de un nico agrupamiento, se van creando nuevos agrupamientos conforme se procesan nuevos patrones secuencialmente (algoritmo incremental). Los patrones se procesan secuencialmente por lotes. Al final de cada lote, se evalan los agrupamientos obtenidos y se reduce su nmero.

51

Algoritmo secuencial
Funcionamiento: Creacin de agrupamientos

Se selecciona arbitrariamente el centro del primer agrupamiento. Posteriormente, se procesan secuencialmente los dems patrones: Se calcula la distancia del patrn actual al agrupamiento ms cercano (a su centroide). Si sta es menor o igual a R se asigna el patrn a su agrupamiento ms cercano. En caso contrario, se crea un nuevo agrupamiento con el patrn actual.
52

Algoritmo secuencial
Funcionamiento: Mezcla de agrupamientos
Cada M patrones, se mezclan agrupamientos 1. Mezcla por cercana (se mezclan dos agrupamientos si la distancia entre ellos es menor que C). 2. Mezcla por tamao: Si, tras la mezcla por cercana, quedan ms agrupamientos que los deseados por el usuario (K), se mezclan los agrupamientos de menos del T% de M miembros con sus clusters ms cercanos. 3. Mezcla forzada: Si an quedan demasiados agrupamientos, se mezclan los agrupamientos ms cercanos hasta obtener el nmero deseado K.
El proceso de mezcla nos asegura que al final obtenemos el nmero deseado de agrupamientos y no ms (como suele suceder en el mtodo adaptativo o en el algoritmo de Batchelor y Wilkins). 53

Algoritmo secuencial
Parmetros

K R C M T

Nmero deseado de agrupamientos. Umbral de distancia para crear agrupamientos. Umbral de distancia para mezclar agrupamientos. Longitud del lote (patrones procesados entre procesos de mezcla) Umbral para la eliminacin de agrupamientos 54 (% sobre M)

Algoritmo ISODATA

55

Algoritmo ISODATA
Caractersticas principales Iterative Self-Organizing Data Analysis Techniques
Ventajas Flexibilidad: Su comportamiento puede ajustarse gracias a su amplio conjunto de parmetros. No est sesgado por el orden de presentacin de los patrones.

Desventajas Utilizacin: Los valores adecuados para los parmetros son difciles de establecer a priori, por lo que se suele emplear un proceso de prueba y error.
56

Algoritmo ISODATA
Funcionamiento
Similar al K-Means, si bien incorpora heursticas con tres objetivos:

Eliminar agrupamientos poco numerosos. Mezclar agrupamientos cercanos. Dividir agrupamientos dispersos.

57

Algoritmo ISODATA
Funcionamiento
Inicialmente se seleccionan los centros de A agrupamientos. En cada iteracin Se asigna cada patrn al cluster ms cercano. Se eliminan los agrupamientos de menos de N patrones. Si el nmero de agrupamientos es pequeo ( K/2), se dividen los agrupamientos ms dispersos. En las iteraciones pares o cuando el nmero de agrupamientos es elevado (>2K), mezclamos un mximo de L pares de agrupamientos cercanos.
58

Algoritmo ISODATA
Parmetros
K
A

s c L I

Nmero deseado de agrupamientos Nmero inicial de agrupamientos Umbral del nmero de patrones para la eliminacin de agrupamientos Umbral de desviacin tpica para la divisin de un agrupamiento Umbral de distancia para la unin de agrupamientos Mximo nmero de mezclas en una iteracin Mximo nmero de iteraciones permitidas

59

Mtodos basados en grafos

60

Mtodos basados en grafos


Caractersticas principales
p.ej. Agrupamiento basado en la matriz de similitud
Ventajas

A diferencia de los mtodos heursticos, no dependen del orden en que se presentan los patrones.

Desventajas

Su coste computacional los hace inviables en muchas ocasiones.


61

Mtodos basados en grafos


Matriz de similitud
Matriz cuadrada que representa la similitud entre cualquier pareja de patrones.
Dado un umbral de distancia, Sij=0 si d(Xi,Xj) > umbral Sij=1 si d(Xi,Xj) umbral Agrupamiento basado en la matriz de similitud: Se selecciona la fila i que contenga ms unos. Se crea un agrupamiento con los patrones j tales que Sij=1 Se aaden al agrupamiento todos aquellos patrones k tales que Sjk= 1, donde j es un patrn ya incluido en el nuevo agrupamiento, hasta que no se puedan 62 aadir ms patrones a dicho agrupamiento.

Mtodos basados en grafos


Matriz de similitud

63

Mtodos basados en grafos


Matriz de similitud: Variacin del umbral

64

Mtodos basados en grafos


Parmetros

Umbral de distancia utilizado para la construccin de la matriz de similitud

65

Mtodos basados en grafos


Resultados Galaxia en espiral

66

Mtodos basados en grafos


Resultados Galaxia en espiral

67

Mtodos basados en grafos


Resultados Galaxia en espiral

Se mejora en precisin pero se pierde una clase

68

Mtodos basados en grafos


Alternativa: Clustering jerrquico divisivo rbol generador minimal

69

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
70

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 K Otras medidas: cohesin, separacin, coeficientes de silueta

71

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 0.9 0.8 0.7

1 10 20 30 40 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 20 40 60 80 0 100 Similarity

Points
0 0.2 0.4 0.6 0.8 1

0.6 0.5 0.4 0.3 0.2 0.1 0

50 60 70 80 90 100

Points

72

Validacin
Matriz de similitud
Points
1 10 20 30 40 50 60 70 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 20 40 60 80 0 100 Similarity

Clusters en datos aleatorios (DBSCAN y k-Means)


1 0.9 0.8 0.7 0.6

80 90 100

Points

0.5
10 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 20 40 60 80 0 100 Similarity

0.4 0.3 0.2

20 30 40

Points
0 0.2 0.4 0.6 0.8 1

0.1 0

50 60 70 80 90 100

73

Points

Validacin
Matriz de similitud
DBSCAN
5 1 2 6 3 4

1 0.9 500 0.8 0.7 0.6 1500 0.5 0.4 2000 0.3 0.2 0.1 3000 500 1000 1500 2000 2500 3000 0

1000

2500

74

Crditos
Francisco J. Cortijo Bon: Apuntes de Reconocimiento de Formas, Universidad de Granada, 1999 Jiawei Han: 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

75