23
K-Means Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

Embed Size (px)

Citation preview

Page 1: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

K-Means

IntegrantesNatalia Merino (85828)

Gastón Sabatelli (85523)M. Florencia Pereira (88816)

Page 2: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

El algoritmo en el contexto

Supervisado

Técnicas de Data Mining

No Supervisado

ClusteringReglas de asociación

Jerárquico Particionado

K-Means SOM

Agrupación en conjuntos

con propiedades

comunes Es necesario especificar el

número Inicial de clusters

No existen clases

predefinidas

Utiliza como medida de similitud la

distancia de los objetos a cada

centroide (media)

Page 3: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

Introducción al problemaK-Means resuelve un problema de clustering, que consisteen:

Se tiene un conjunto de datos u observaciones (x1, x2, …, xn) donde cada dato representa un vector de n variables.

Se desea particionar las observaciones en k grupos.Se elige para cada grupo un centro o “media” y se ubica

cada observación en el grupo cuya media sea más cercana.

Page 4: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

Introducción al problema (cont.)Para medir la cercanía se utiliza la norma euclídea y se busca

minimizar la siguiente función:

donde μi es la media de la partición Si (un grupo).

Page 5: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

Características del algoritmoSiempre se tienen K clusters predefinidos.Siempre hay por lo menos un objeto en cada cluster.Método no supervisado de aprendizajeLos objetos deberán poder representarse mediante

atributos numéricos.Los clusters son mutuamente expluyentes. Los objetos

pertenecientes a un cluster están lo más cerca posible entre sí y lo más lejos posible de los elementos de otros clusters.

Método particionado

Page 6: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

1. Se eligen arbitrariamente k centros o medias, una por cada partición. En la práctica usualmente se eligen en forma aleatoria.

2. Paso de asignación: se asignan las observaciones a la partición cuyo centro sea más cercano.

3. Paso de actualización: se calculan cuales son los nuevos centros de cada partición. El centro representaría el “centro de masa” o “el promedio” de todas las observaciones que pertenecen a esa partición.

4. Se repiten los pasos 2 y 3 hasta que no haya más movimientos en las particiones (entonces se dice que el algoritmo converge).

Algoritmo

Page 7: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

Análisis gráfico

Page 8: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

Ejemplo numérico (I)Se tiene 4 tipos de remedios que se desean agrupar en k=2 clusters, considerando 2 atributos que son: peso y PH.

Remedio atributo 1 (X): peso Atributo 2 (Y): pH

Remedio A 1 1

Remedio B 2 1

Remedio C 4 3

Remedio D 5 4

Page 9: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

Ejemplo numérico (II)Iteración 0:Inicialmente elegimos como centros a los remedios A y B.

0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 5.50

0.5

1

1.5

2

2.5

3

3.5

4

4.5

Iteración 0

Peso

pH

A B

C

D

C1 C2

Page 10: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

Ejemplo numérico (III)Iteración 0:Calculamos la distancia de cada centro a cada remedio, usando la distancia Euclídea.

C1C2

A B C D

Asignamos a cada remedio un cluster. Para A el C1, para B el C2, para C el C2 y para D el C2.

Page 11: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

Ejemplo numérico (IV)Iteración 1:Obtenemos los nuevos centros.El C1 solo tiene un miembro, el remedio A.El C2 tiene 3 miembros, el nuevo centroide es el promedio de sus coordenadas.

0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 5.50

0.5

1

1.5

2

2.5

3

3.5

4

4.5

Iteración 1

Peso

pH A B

C

D

C1

C2

Page 12: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

Ejemplo numérico (V)Iteración 1:Calculamos la distancia de cada centro a cada remedio, usando la distancia Euclídea.

Asignamos a cada remedio un cluster. Para A el C1, para B el C1, para C el C2 y para D el C2.

C1C2

A B C D

Page 13: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

Ejemplo numérico (VI)Iteración 2:Obtenemos los nuevos centros.

0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 5.50

0.51

1.52

2.53

3.54

4.5

Iteración 2

Peso

PH

A

C1

B

D

C

C2

Page 14: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

Ejemplo numérico (VII)Iteración 2:Calculamos la distancia de cada centro a cada remedio, usando la distancia Euclídea.

Asignamos a cada remedio un cluster. Para A el C1, para B el C1, para C el C2 y para D el C2.Al no haber cambios ya no se necesitan más iteraciones.

C1C2

A B C D

Page 15: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

Resultado

Remedio Peso pH Cluster N°Remedio A 1 1 1 Remedio B 2 1 1 Remedio C 4 3 2 Remedio D 5 4 2

Page 16: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

VentajasEs un algoritmo sencillo y computacionalmente rápido.Fácil de implementar. Por esta razón, la mayoría de las

herramientas de Data Mining incluyen al algoritmo.Es práctico si no se tiene un gran número de

observaciones.La forma clásica de implementación de Kmeans es

usando la distancia Euclídea, sin embargo la misma metodología funciona bien con otro tipo de distancias.

Page 17: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

DesventajasEl resultado del algoritmo es muy sensible a la configuración inicial de

los agrupamientos, es decir cómo se asignaron los centros inicialmente. En cada ejecución podría generar resultados muy variados dependiendo de esta elección inicial.

La necesidad de definir la cantidad de particiones de antemano, ya que la elección de un k inadecuado puede derivar en un resultado lejano al óptimo.

Posibilidad de que se presenten óptimos locales al asignar los centros, es decir que la partición sea óptima en la forma que minimiza las distancias dentro de cada grupo pero no a nivel total (no tiende a obtener mínimos globales).

Muchas veces es necesario realizar sucesivas ocasiones para obtener un resultado mas óptimo.

Page 18: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

Desventajas (cont.)Es susceptible a valores extremos porque distorsionan la

distribución de los datos. No funciona bien si los grupos son de distinto tamaño y

densidad o no convexos.

Page 19: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

Variaciones del algoritmoExisten varios algoritmos como por ejemplo GRASP

[Greedy Randomized Adaptive Search Procedure] que utilizan heurísticas tales como Ant Colony para evitar óptimos locales.

k-Modes (Huang’1998) utiliza modas en vez de medias (para poder trabajar con atributos de tipo categórico).

k-Medoids utiliza medianas en vez de medias para limitar la influencia de los observaciones distantes del resto.

Page 20: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

Ejemplo en WEKA

Page 22: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

¿Preguntas?

Page 23: Integrantes Natalia Merino (85828) Gastón Sabatelli (85523) M. Florencia Pereira (88816)

Gracias