You are on page 1of 96

Data Mining

Anlisis de Clusters : Conceptos Bsicos

Seminario de Data Mining con Aplicacion


a la Deteccion de Fraudes
Profesor: Dr. Juan M Ale

18/03/2014

Seminario de Data Mining - ESPE

1
FACULTAD DE INFORMATICA

Qu es el Anlisis de Cluster ?

Hallar grupos de objetos tal que los objetos en un grupo


sean similares entre si (o relacionados) y diferentes (o no
relacionados) a los objetos en otros grupos.
Se maximiza la
distancia Intercluster

Se minimiza la
distancia Intracluster

18/03/2014

Seminario de Data Mining - ESPE

Aplicaciones del Anlisis de Clusters


Discovered Clusters

Descriptiva

Los grupos relacionan


2
documentos para
browsing,
agrupamiento de
3
genes y proteinas que
4
tienen similar
funcionalidad o grupos
de acciones con
similares fluctuaciones
de precios

Applied-Matl-DOWN,Bay-Network-Down,3-COM-DOWN,
Cabletron-Sys-DOWN,CISCO-DOWN,HP-DOWN,
DSC-Comm-DOWN,INTEL-DOWN,LSI-Logic-DOWN,
Micron-Tech-DOWN,Texas-Inst-Down,Tellabs-Inc-Down,
Natl-Semiconduct-DOWN,Oracl-DOWN,SGI-DOWN,
Sun-DOWN
Apple-Comp-DOWN,Autodesk-DOWN,DEC-DOWN,
ADV-Micro-Device-DOWN,Andrew-Corp-DOWN,
Computer-Assoc-DOWN,Circuit-City-DOWN,
Compaq-DOWN, EMC-Corp-DOWN, Gen-Inst-DOWN,
Motorola-DOWN,Microsoft-DOWN,Scientific-Atl-DOWN
Fannie-Mae-DOWN,Fed-Home-Loan-DOWN,
MBNA-Corp-DOWN,Morgan-Stanley-DOWN
Baker-Hughes-UP,Dresser-Inds-UP,Halliburton-HLD-UP,
Louisiana-Land-UP,Phillips-Petro-UP,Unocal-UP,
Schlumberger-UP

Industry Group

Technology1-DOWN

Technology2-DOWN

Financial-DOWN
Oil-UP

Sumarizacin
Reducir el tamao de
grandes data sets
18/03/2014

Clustering de
precipitaciones en
Australia
Seminario de Data Mining - ESPE

Qu no es Anlisis de Clusters ?
Clasificacin Supervisada
Tiene informacin del label de clase

Segmentacin Simple
Divisin de los estudiantes en diferenes grupos
alfabticamente, por apellido

Resultados de una consulta


Agrupamiento resultado de una especificacin externa

Particionamiento de un Grafo
Hay alguna relacin pero las reas no son identicas
18/03/2014

Seminario de Data Mining - ESPE

La Nocin de un Cluster puede ser Ambigua

Cuntos clusters?

Seis Clusters

Dos Clusters

Cuatro Clusters

18/03/2014

Seminario de Data Mining - ESPE

Tipos de Clusterings
Un clustering es un conjunto de clusters
Hay una importante distincin entre clustering
Jerrquico y particional
Clustering Particional
Una divisin de los objetos de dato en subconjuntos
disjuntos (clusters) tal que cada objeto de datos est en
exactamente un subconjunto

Clustering Jerrquico
Un conjunto de clusters anidados organizados como un
rbol
18/03/2014

Seminario de Data Mining - ESPE

Clustering Particional

Puntos Originales
18/03/2014

Clustering particional
Seminario de Data Mining - ESPE

Clustering Jerrquico

p1
p3

p4

p2

p1 p2
Clustering JerrquicoTradicional

p3 p4

Dendograma Tradicional

p1
p3

p4

p2

p1 p2
Clustering Jerrquico No-tradicional
18/03/2014

p3 p4

Dendograma No-tradicional

Seminario de Data Mining - ESPE

Otras Distinciones entre Conjuntos de Clusters


Exclusivos vs. no-exclusivos
En clustering no-exclusivos, los puntos pueden pertenecer a
mltiples clusters.
Pueden representar mltiples clases o puntos frontera

Fuzzy vs. no-fuzzy


En clustering fuzzy, un punto pertenece a todo cluster con
algun peso entre 0 y 1
Los pesos deben sumar 1
Clustering probabilistico tiene caractrsticas similares

Parcial vs completo
En algunos casos se desea agrupar solo algunos datos

Heterogneo vs homogneo
Clusters de tamaos, formas y densidades ampliamente
diferentes.
18/03/2014

Seminario de Data Mining - ESPE

Tipos de Clusters

Clusters Bien Separados

Clusters Basados en Centros

Clusters Contiguos

Clusters Basados en Densidad

Propiedad o Conceptual

Descriptos por una Funcin Objetivo

18/03/2014

Seminario de Data Mining - ESPE

10

Tipos de Clusters: Bien-Separados


Clusters Bien-Separados:
Un cluster es un conjunto de puntos tal que
cualquier punto en un cluster est ms prximo (o
es ms similar) a todo otro punto en el cluster que
a cualquier punto que no est en el cluster.

3 clusters bien-separados
18/03/2014

Seminario de Data Mining - ESPE

11

Tipos de Clusters: Basados en Centro


Basados en Centros
Un cluster es un conjunto de objetos tal que un objeto en
un cluster es ms prximo (ms similar) al centro del
cluster, que al centro de cualquier otro cluster
El centro de un cluster es frecuentemente un centroide,
el promedio de todos los puntos en el cluster, o un
medioide, el punto ms representativo de un cluster

4 cluster basados en centro


18/03/2014

Seminario de Data Mining - ESPE

12

Tipos de Clusters: Basados en Contigidad


Cluster Contiguo (Vecino ms Cercano o
Transitivo)
Un cluster es un conjunto de puntos tal que un punto en
un cluster es ms prximo (o ms similar) a uno o ms
otros puntos en el cluster que a cualquier otro punto no en
el cluster.

8 cluster contiguos
18/03/2014

Seminario de Data Mining - ESPE

13

Tipos de Clusters: Basados en Densidad


Basado en Densidad
Un cluster es una regin densa de puntos, la que est
separada de otras regiones de alta densidad por regiones
de baja densidad.
Usado cuando los clusters son irregulares o entrelazados,
y cuando estn presentes ruido y outliers.

6 clusters basados en densidad


18/03/2014

Seminario de Data Mining - ESPE

14

Tipos de Clusters: Clusters Conceptuales


Propiedades Compartidas o Clusters
Conceptuales
Hallar clusters que comparten alguna propiedad comn o
representan un concepto particular.

2 crculos superpuestos
18/03/2014

Seminario de Data Mining - ESPE

15

Caracteristicas de los datos de entrada son Importantes

Tipo de medida de proximidad o densidad

Medida derivada pero central a clustering

Baja densidad

Dicta el tipo de similitud


Contribuye a la eficiencia

Tipo de Atributo

Dicta el tipo de similitud

Tipo de Datos

Dicta el tipo de similitud


Otras caractersticas, p.ej., autocorrelacin

Dimensionalidad
Ruido y Outliers
Tipo de Distribucin

18/03/2014

Seminario de Data Mining - ESPE

16

Algoritmos de Clustering

K-means y sus variantes


Clustering Jerrquico
Clustering Basado en Densidad

18/03/2014

Seminario de Data Mining - ESPE

17

Clustering K-means

Enfoque Particional
Cada cluster est asociado con un centroide (punto
central)
Cada punto se asigna al cluster con el centroide ms
prximo
Se debe especificar el nmero de clusters, K.
El algoritmo bsico es muy simple

18/03/2014

Seminario de Data Mining - ESPE

18

Clustering K-means Detalles

Los centroides iniciales son frecuentemente


elegidos al azar.
Los clusters producidos varan de una corrida a otra.
El centroide es (tpicamente) la media de los
puntos en el cluster.
Proximidad se mide por la distancia Euclidea,
similitud de coseno, correlacin, etc.
K-means converge para medidas comunes de
similitud como las mencionadas.
La mayor parte de la convergencia sucede en las
primeras iteraciones.
Frecuentemente, la condicin de detencin se cambia a
Hasta que pocos puntos cambien de clusters

Complejidad es O( n * K * I * d )
n = nmero de puntos, K = nmero de clusters,

I = nmero de iteraciones, d = nmero de atributos

18/03/2014

Seminario de Data Mining - ESPE

19

Dos clustering K-means diferentes


3

2.5

Puntos Originales

1.5

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

1.5

-2

-1.5

-0.5

0.5

1.5

Clustering ptimo
18/03/2014

-1

Clustering Sub-ptimo

Seminario de Data Mining - ESPE

20

Importancia de la eleccin de Centroides iniciales


Iteration 6
1
2
3
4
5
3

2.5

1.5

0.5
0

-2

-1.5

-1

-0.5

0.5

1.5

18/03/2014

Seminario de Data Mining - ESPE

21

Importancia de la elecin de Centroides iniciales


Iteration 1

Iteration 2

Iteration 3

2.5

2.5

2.5

1.5

1.5

1.5

0.5

0.5

0.5

-2

-1.5

-1

-0.5

0.5

1.5

-2

-1.5

-1

-0.5

0.5

1.5

-2

Iteration 4

Iteration 5
2.5

1.5

1.5

1.5

0.5

0.5

0.5

-0.5

18/03/2014

0.5

1.5

0.5

1.5

1.5

2.5

2.5

-1

-0.5

Iteration 6

-1.5

-1

-2

-1.5

-2

-1.5

-1

-0.5

0.5

1.5

Seminario de Data Mining - ESPE

-2

-1.5

-1

-0.5

0.5

22

Evaluacin de Clustering K-means

La medida ms comn es Sum of Squared Error


(SSE) o suma de errores al cuadrado

Para cada punto, el error es la distancia al centroide ms


cercano
Para SSE, elevamos al cuadrado esos errores y los
sumamos.
K
SSE =

2
dist
(mi , x )

i =1 xC i

x es un punto de dato en cluster Ci y mi es el punto

representativo para cluster Ci


se puede mostrar que mi corresponde al centro (media) del cluster
Dados dos clusters, se puede elegir el que tiene el error
ms pequeo
Una forma simple de reducir SSE es incrementar K, el
nmero de clusters
Un buen clustering con un K ms pequeo puede tener un SSE
menor que un clustering pobre con un K superior

18/03/2014

Seminario de Data Mining - ESPE

23

Importancia de la eleccin de Centroides iniciales


Iteration 5
1
2
3
4
3

2.5

1.5

0.5
0

-2

-1.5

-1

-0.5

0.5

1.5

18/03/2014

Seminario de Data Mining - ESPE

24

Importancia de la eleccin de Centroids inciales


Iteration 1

Iteration 2

2.5

2.5

1.5

1.5

0.5

0.5

-2

-1.5

-1

-0.5

0.5

1.5

-2

-1.5

-1

-0.5

0.5

Iteration 3

2.5

1.5

1.5

1.5

2.5

2.5

0.5

0.5

0.5

-1

-0.5

18/03/2014

0.5

Iteration 5

-1.5

1.5

Iteration 4

-2

1.5

-2

-1.5

-1

-0.5

0.5

1.5

Seminario de Data Mining - ESPE

-2

-1.5

-1

-0.5

0.5

1.5

25

Problemas con la Seleccin de Puntos Iniciales

Si hay K clusters reales luego la probabilidad de


seleccionar un centroide de cada cluster es pequea.

La probabilidad es relativamente pequea cuando K es


grande
Si los clusters son del mismo tamao, n, luego

Por ej., si K = 10, la probabilidad = 10!/1010 = 0.00036


Algunas veces los centroides iniciales se reajustarn
solos de la forma correcta y a veces no
Consideremos un ejemplo de 5 pares de clusters

18/03/2014

Seminario de Data Mining - ESPE

26

Ejemplo de 10 Clusters
Iteration 4
1
2
3
8
6
4

2
0
-2
-4
-6
0

10

15

20

x
Comienza con 2 centroides iniciales en un cluster de cada par de clusters
18/03/2014

Seminario de Data Mining - ESPE

27

Ejemplo de 10 Clusters
Iteration 2
8

Iteration 1
8

-2

-2

-4

-4

-6

-6
0

10

15

20

15

20

-2

-2

-4

-4

-6

-6
10

20

Iteration 4
8

Iteration 3

15

10

15

20

10

Comienza con 2 centroides iniciales en un cluster de cada par de clusters


18/03/2014

Seminario de Data Mining - ESPE

28

Ejemplo de 10 Clusters
Iteration 4
1
2
3
8
6
4

2
0
-2
-4
-6
0

10

15

20

x
Comenzando con algunos pares de clusters que tienen 3 centroides iniciales mientras otros tienen
1. 18/03/2014
Seminario de Data Mining - ESPE
29

Ejemplo de 10 Clusters
Iteration 2
8

Iteration 1
8

-2

-2

-4

-4

-6

-6
0

10

15

20

-2

-4

-4

-6

-6
5

10

15

20

15

20

-2

10

x
Iteration
4

x
Iteration
3

15

20

10

Comenzando con algunos pares de clusters que tienen 3 centroides iniciales mientras otros tienen 1.
18/03/2014

Seminario de Data Mining - ESPE

30

Soluciones al Problema de Centroides Iniciales


Mltiples corridas
Ayuda, pero la probabilidad no es favorable
Muestrear y usar clustering jerrquico para determinar
los centroides iniciales
Seleccionar mas de K centroides iniciales y luego
seleccionar entre esos centroides iniciales
Seleccionar los ms ampliamente separados
Postprocesar
Usar Bisecting K-means
No tan susceptible a problemas de inicializacin
18/03/2014

Seminario de Data Mining - ESPE

31

Manejo de Clusters Vacos


El algoritmo K-means bsico puede
producir clusters vacos
Varias estrategias
Elegir el punto que ms contribuye a SSE
Elegir un punto desde el cluster con el SSE
ms alto.
Si hay varios clusters vacos, lo anterior se
puede repetir varias veces.
18/03/2014

Seminario de Data Mining - ESPE

32

Actualizacin Incremental de los Centros


En el algoritmo K-means bsico, los centroides se actualizan
despus que todos los puntos son asignados a un centroide
Una alternativa es actualizar los centroides despus de cada
asignacin (enfoque incremental)
Cada asignacin actualiza cero o ms centroides
Ms costoso
Introduce una dependencia de orden
Nunca obtiene un cluster vaco
Puede usar pesos para cambiar el impacto

18/03/2014

Seminario de Data Mining - ESPE

33

Pre-procesamiento y Post-procesamiento
Pre-procesamiento
Normalizar los datos
Eliminar outliers
Post-procesamiento
Eliminar los clusters pequeos que pueden representar outliers
Split clusters con relativamente alto SSE
Mezclar clusters que estn prximos y que tiene relativamente
bajo SSE
Se pueden usar esos pasos durante el proceso de clustering
ISODATA

18/03/2014

Seminario de Data Mining - ESPE

34

Limitaciones de K-means: Diferentes Tamaos

Puntos Originales

18/03/2014

K-means (3 Clusters)

Seminario de Data Mining - ESPE

35

Limitaciones de K-means: Diferentes Densidades

Puntos Originales

18/03/2014

K-means (3 Clusters)

Seminario de Data Mining - ESPE

36

Limitaciones de K-means: Formas No-esfricas

Puntos Originales

18/03/2014

K-means (2 Clusters)

Seminario de Data Mining - ESPE

37

Superacin de las limitaciones de K-means

Puntos Originales

Clusters K-means

Una solucin es usar varios Cluster.


Hallar partes de clusters, sin necesidad de ponerlos juntos.
18/03/2014

Seminario de Data Mining - ESPE

38

Superacin de las Limitaciones de K-means

Puntos Originales

18/03/2014

Clusters K-means

Seminario de Data Mining - ESPE

39

Superacin de las Limitaciones de K-means

Puntos Originales

18/03/2014

Clusters K-means

Seminario de Data Mining - ESPE

40

Clustering Jerrquico
Produce un conjunto de clusters anidados
organizados como un rbol
Se puede visualizar como un dendrograma
Un diagrama arbreo que registra las secuencias
de merges o splits
5

6
0.2

4
3

0.15

5
2

0.1

1
0.05

3
0

18/03/2014

Seminario de Data Mining - ESPE

41

Fortalezas del Clustering Jerrquico


No tiene que asumir ningn nmero
particular de clusters
Cualquier nmero deseado de clusters se
puede obtener cortando el dendograma en el
nivel apropiado

Pueden corresponder a taxonomas con


algn sentido
Ejemplo en ciencias biolgicas (P.ej., reino
animal, reconstruccin filogentica, )
18/03/2014

Seminario de Data Mining - ESPE

42

Clustering Jerrquico
Dos tipos principales de clustering jerrquico
Aglomerativo:
Comienza con los puntos como clusters individuales
En cada paso, combinar los pares de clusters ms prximos en
cada paso, combinar los pares ms prximos hasta que slo
quede un cluster (o k clusters).

Divisivo:
Comenzar con un cluster que incluya todos los puntos.
En cada paso, separar un cluster hasta que cada cluster
contenga un punto (o haya k clusters)

Los algoritmos tradicionales de clustering jerrquico


usan una matriz de similitud
Combinar o separar un cluster por vez
18/03/2014

Seminario de Data Mining - ESPE

43

Algoritmo Aglomerativo de Clustering

Tcnica de clustering jerrquico ms popular


El algoritmo bsico es simple
1.
2.
3.
4.
5.
6.

Computar la matriz de proximidad


Sea cada punto un cluster
Repeat
Combinar los dos clusters ms prximos
actualizar la matriz de proximidad
Until slo quede un nico cluster

La operacin clave es el cmputo de la


matriz de proximidad de dos clusters

18/03/2014

Los diferentes algoritmos se distinguen por


diferentes enfoques para el cmputo de la
distancia entre clusters.

Seminario de Data Mining - ESPE

44

Situacin Inicial
Comenzar con clusters de puntos
individuales y una matriz de proximidad
p1

p2

p3

p4 p5

...

p1
p2
p3
p4
p5
.
.

Matriz de Proximidad

18/03/2014

Seminario de Data Mining - ESPE

45

Situacin Intermedia
Despus de algunos pasos (de combinaciones), nos
quedan algunos clusters
C1

C2

C3

C4

C5

C1
C2
C3

C3
C4
C4
C5

Matriz de Proximidad

C1

C2

18/03/2014

C5

Seminario de Data Mining - ESPE

46

Situacin Intermedia
Queremos combinar los dos clusters ms prximos
(C2 y C5) y actualizar la matriz de proximidad.
C1

C2

C3

C4

C5

C1
C2
C3

C3
C4
C4
C5

Proximity Matrix

C1

C2

18/03/2014

C5

Seminario de Data Mining - ESPE

47

Despus de la Combinacin
Pregunta: Cmo actualizar la matriz de proximidad?
C1
C1
C2 U C5

C3
C4

C2
U
C5

C3

C4

?
?

C3

C4

Matriz de Proximidad

C1

C2 U C5

18/03/2014

Seminario de Data Mining - ESPE

48

Cmo Definir Similitud Inter-Cluster


p1

Similitud?

p2

p3

p4 p5

...

p1
p2
p3
p4

p5

MIN
.
MAX
.
Promedio de Grupo
.
Matriz de Proximidad
Distancia entre Centroides
Otros mtodos orientados por una
funcin objetivo
Mtodo de Ward usa error cuadrtico

18/03/2014

Seminario de Data Mining - ESPE

49

Cmo Definir Similitud Inter-Cluster


p1

Similitud?

p2

p3

p4 p5

...

p1
p2
p3
p4

p5

MIN
.
MAX
.
Promedio de Grupo
.
Matriz de Proximidad
Distancia entre Centroides
Otros mtodos orientados por una
funcin objetivo
Mtodo de Ward usa error cuadrtico

18/03/2014

Seminario de Data Mining - ESPE

50

Cmo Definir Similitud Inter-Cluster


p1

Similitud?

p2

p3

p4 p5

...

p1
p2
p3
p4

p5

MIN
.
MAX
.
Promedio de Grupo
.
Matriz de Proximidad
Distancia entre Centroides
Otros mtodos orientados por una
funcin objetivo
Mtodo de Ward usa error cuadrtico

18/03/2014

Seminario de Data Mining - ESPE

51

Cmo Definir Similitud Inter-Cluster


p1

Similitud?

p2

p3

p4 p5

...

p1
p2
p3
p4

p5

MIN
.
MAX
.
Promedio de Grupo
.
Matriz de Proximidad
Distancia entre Centroides
Otros mtodos orientados por una
funcin objetivo
Mtodo de Ward usa error cuadrtico

18/03/2014

Seminario de Data Mining - ESPE

52

Cmo Definir Similitud Inter-Cluster


p1

Similitud?

p2

p3

p4 p5

...

p1
p2
p3
p4

p5

MIN
.
MAX
.
Promedio de Grupo
.
Matriz de Proximidad
Distancia entre Centroides
Otros mtodos orientados por una
funcin objetivo
Mtodo de Ward usa error cuadrtico

18/03/2014

Seminario de Data Mining - ESPE

53

Similitud de Cluster: MIN o Single Link


Similitud de dos clusters est basada en los
dos puntos ms similares (prximos) en los
diferentes clusters
Determinado por uno de los pares de puntos,
es decir, por un link en el grafo de proximidad.
I1
I2
I3
I4
I5
18/03/2014

I1
1.00
0.90
0.10
0.65
0.20

I2
0.90
1.00
0.70
0.60
0.50

I3
0.10
0.70
1.00
0.40
0.30

I4
0.65
0.60
0.40
1.00
0.80

I5
0.20
0.50
0.30
0.80
1.00

Seminario de Data Mining - ESPE

5
54

Clustering Jerrquico: MIN


1

3
5

0.2

0.15

0.1

0.05

4
4

Clusters anidados
18/03/2014

Dendrograma
Seminario de Data Mining - ESPE

55

Fortaleza de MIN

Puntos Originales

Dos Clusters

Puede manejar formas no-elipticas


18/03/2014

Seminario de Data Mining - ESPE

56

Limitaciones de MIN

Puntos Originales

Dos Clusters

Sensible a ruido y outliers


18/03/2014

Seminario de Data Mining - ESPE

57

Similitud de Clusters: MAX o Complete Linkage


La similitud de dos clusters se basa en los
dos puntos menos similares (ms distantes)
en los diferentes
Determinado por todos los pares de puntos en
los dos clusters
I1
I1 1.00
I2 0.90
I3 0.10
I4 0.65
I5 0.20
18/03/2014

I2 I3 I4 I5
0.90 0.10 0.65 0.20
1.00 0.70 0.60 0.50
0.70 1.00 0.40 0.30
0.60 0.40 1.00 0.80
0.50 0.30 0.80 1.00

Seminario de Data Mining - ESPE

5
58

Clustering Jerrquico: MAX


4

0.4
0.35

0.3

0.25

3
3

0.2
0.15

1
4

0.1
0.05
0

Clusters anidados

18/03/2014

Dendrograma

Seminario de Data Mining - ESPE

59

Fortalezas de MAX

Puntos Originales

Dos Clusters

Menos susceptible a ruido y outliers


18/03/2014

Seminario de Data Mining - ESPE

60

Limitaciones de MAX

Puntos Originales

Dos Clusters

Tiende a partir clusters grandes


Sesgado hacia clusters esfricos
18/03/2014

Seminario de Data Mining - ESPE

61

Similitud de Cluster: Promedio de Grupo


La proximidad de dos clusters es el promedio de la
proximidad de a pares entre puntos en los dos clusters.

proximidad(p , p )
i

proximidad(Clusteri , Clusterj ) =

piClusteri
p jClusterj

|Clusteri ||Clusterj |

Necesita usar conectividad promedio para escalabilidad ya


que la pdroximidad total favorece clusters grandes

I1
I2
I3
I4
I5

I1
1.00
0.90
0.10
0.65
0.20

18/03/2014

I2
0.90
1.00
0.70
0.60
0.50

I3
0.10
0.70
1.00
0.40
0.30

I4
0.65
0.60
0.40
1.00
0.80

I5
0.20
0.50
0.30
0.80
1.00

Seminario de Data Mining - ESPE

5
62

Clustering Jerrquico: Promedio de Grupo

1
0.25

2
5

0.2

2
0.15

6
1

0.1
0.05

4
3

Clusters anidados
18/03/2014

Dendrograma
Seminario de Data Mining - ESPE

63

Clustering Jerrquico: Promedio de Grupo

Compromiso entre Single y Complete


Link

Fortalezas
Menos susceptible a ruido y outliers

Limitaciones
Sesgado hacia clusters esfricos
18/03/2014

Seminario de Data Mining - ESPE

64

Similitud de Clusters: Mtodo de Ward

Similitud de dos clusters est basada en el


incremento del error cuadrtico cuando se
combinan dos clusters

Similar al promedio de grupo si la distancia entre


puntos es la distancia cuadrtica

Menos susceptible a ruido y outliers


Sesgado hacia clusters esfricos
Jerrquico anlogo de K-means

Puede ser usado para inicializar K-means

18/03/2014

Seminario de Data Mining - ESPE

65

Clustering Jerrquico: Comparacin


1

3
5

MIN

5
2

MAX

3
3

2
Mtodo de Ward

2
3

1
4

Promedio de Grupo

6
1

3
18/03/2014

Seminario de Data Mining - ESPE

66

DBSCAN
DBSCAN es un algoritmo basado en
densidad.

Densidad = nmero de puntos dentro de un radio


especificado (Eps)

Un punto es un punto core si tiene ms de un nmero


especificado de puntos (MinPts) dentro de Eps
Estos son los puntos que estn en el interior de un
cluster

Un punto border tiene menos que MinPts dentro de


Eps, pero est en el vecindario de un punto core

Un punto noise es cualquier punto que no es un


punto core ni un punto border.

18/03/2014

Seminario de Data Mining - ESPE

67

DBSCAN: Puntos Core, Border y Noise

18/03/2014

Seminario de Data Mining - ESPE

68

Algoritmo DBSCAN
Eliminar puntos noise
Realizar clustering sobre los puntos restantes

18/03/2014

Seminario de Data Mining - ESPE

69

DBSCAN: Puntos Core, Border y Noise

Puntos Originales

Tipos de Puntos: core,


border y noise

Eps = 10, MinPts = 4


18/03/2014

Seminario de Data Mining - ESPE

70

Cuando DBSCAN trabaja bien

Puntos Originales

Clusters

Resistente a ruido
Puede manejar clusters de diferentes formas y tamaos
18/03/2014

Seminario de Data Mining - ESPE

71

Cundo DBSCAN NO trabaja bien

(MinPts=4, Eps=9.75).

Puntos Originales

Densidades Variables
Datos de alta dimensionalidad
18/03/2014

(MinPts=4, Eps=9.92)

Seminario de Data Mining - ESPE

72

DBSCAN: Determinar EPS y MinPts


La idea es que para puntos en un cluster, sus k

vecinos ms prximos estn aproximadamente a


la misma distancia
Los puntos Noise tienen los k vecinos ms
prximos a una distancia mayor
Un plot de distancias ordenadas de todo punto a
sus k vecinos ms prximos

18/03/2014

Seminario de Data Mining - ESPE

73

Validez de Clusters
Para clasificacin supervisada tenemos una

variedad de medidas para evaluar cun bien


clasifica un modelo
Accuracy, precision, recall
Para anlisis de clusters, la cuestin anloga es
cmo evaluar la bondad del clustering resultante
Sin embargo, los clusters dependen del cristal con
que se miren!
Luego, por qu queremos evaluar un clustering?
Para evitar hallar patrones en ruido
Para comparar algoritmos de clustering
Para comparar dos conjuntos de clusters
Para comparar dos clusters

18/03/2014

Seminario de Data Mining - ESPE

74

Clusters hallados en Datos Random


1

0.9

0.9

0.8

0.8

0.7

0.7

0.5

0.5
0.4

0.4

0.3

0.3

0.2

0.2

0.1

0.1

DBSCAN

0.6

0.6

Random
Points

0
0

0.2

0.4

0.6

0.8

0.2

0.4

x
1

0.9

0.9

0.8

0.8

0.7

0.7

0.6

0.6

0.5

0.5

K-means

0.4

0.4

0.3

0.3

0.2

0.2

0.1

0.1

18/03/2014

0.2

0.4

0.6

0.8

0.6

0.8

Complete
Link

0.2

0.4

Seminario de Data Mining - ESPE

0.6

0.8

75

Diferentes Aspectos de Validacin de Clusters


1. Determinacin de la tendencia de clustering de un data set,
es decir, distinguir si realmente existe una estructura norandom en los datos.
2. Comparacin de los resultados de un anlisis de clusters con
resultados conocidos, como labels de clase.
3. Evaluacin de cun bien los resultados del anlisis de cluster
ajustan los datos sin referencia a informacin externa
- Usa slo los datos

4. Comparacin de los resultados de dos conjuntos de clusters


diferentes para determinar cul es mejor.
5. Determinacin del nmero correcto de clusters.

Para 2, 3 y 4, se puede tambin distinguir si se desea evaluar el


clustering completo o slo clusters individuales.
18/03/2014

Seminario de Data Mining - ESPE

76

Medidas de Validez de Clusters

Las medidas numricas que son aplicadas para juzgar


varios aspectos de la validez de clusters se pueden
clasificar en tres tipos.

Indice externo: Usado para medir el grado en que los labels

de los clusters coinciden con los labels de clase


proporcionados externamente.
Entropa
Indice interno: Usado para medir la bondad de una
estructura de clustering sin tener en cuenta informacin
externa.
Sum of Squared Error (SSE)
Indice relativo: Usado para comparar dos clustering o
clusters diferentes.
Se usa un ndice interno o externo (SSE o entropa)

Tambin se conocen como criterios en lugar de ndices


A veces criterio es la estrategia general e indice es la medida numrica
que implementa el criterio.

18/03/2014

Seminario de Data Mining - ESPE

77

Medicin de la Validez de un Cluster via Correlacin

Dos matrices

Matriz de Proximidad
Matriz de Incidencia

Computar la correlacin entre las dos matrices

Una fila y una columna para cada punto de dato


Una entrada es 1 si el par de puntos asociados pertenece al mismo cluster
Una entrada es 0 si el par de puntos asociado pertenece a diferentes
clusters

Puesto que las matrices son simtricas, slo la correlacin entre


n(n-1) / 2 entradas necesita ser calculada.

Alta correlacin indica que los puntos que pertenecen al


mismo cluster estn prximos entre si.
No es una buena medida para algunos cluster basados
en densidad o contiguidad.

18/03/2014

Seminario de Data Mining - ESPE

78

Medicin de la Validez de Clusters Via Correlacin

Matrices de Correlacin de incidencia y

0.9

0.9

0.8

0.8

0.7

0.7

0.6

0.6

0.5

0.5

proximidad para clusterings K-means de los


siguientes dos data sets.

0.4

0.4

0.3

0.3

0.2

0.2

0.1

0.1

0.2

0.4

0.6

0.8

0.2

0.4

Corr = -0.9235
18/03/2014

0.6

0.8

Corr = -0.5810
Seminario de Data Mining - ESPE

79

Uso de la Matriz de Similitud para Validacin de Clusters

Ordenar la matriz de similitud con respecto a los


labels de los clusters e inspeccionar visualmente.
1

1
0.9
0.8
0.7

Points

0.6
0.5
0.4
0.3
0.2
0.1
0

10

0.9

20

0.8

30

0.7

40

0.6

50

0.5

60

0.4

70

0.3

80

0.2

90

0.1

100
0

0.2

0.4

0.6

0.8

20

40

18/03/2014

Seminario de Data Mining - ESPE

60

80

0
100 Similarity

Points

80

Uso de la Matriz de Similitud para Validacin de Clusters

Los Clusters en datos random no son tan


crisp
1

10

0.9

0.9

20

0.8

0.8

30

0.7

0.7

40

0.6

0.6

50

0.5

0.5

60

0.4

0.4

70

0.3

0.3

80

0.2

0.2

90

0.1

0.1

100

20

40

60

80

0
100 Similarity

Points

0.2

Points

0.4

0.6

0.8

DBSCAN
18/03/2014

Seminario de Data Mining - ESPE

81

Uso de la Matriz de Similitud para Validacin de Clusters

Los Clusters en datos random no son tan crisp


1

10

0.9

0.9

20

0.8

0.8

30

0.7

0.7

40

0.6

0.6

50

0.5

0.5

60

0.4

0.4

70

0.3

0.3

80

0.2

0.2

90

0.1

0.1

100

20

40

60

80

0
100 Similarity

Points

0.2

0.4

0.6

0.8

Points

K-means

18/03/2014

Seminario de Data Mining - ESPE

82

Uso de la Matriz de Similitud para Validacin de Clusters

Los Clusters en datos random no son tan crisp


1

10

0.9

0.9

20

0.8

0.8

30

0.7

0.7

40

0.6

0.6

50

0.5

0.5

60

0.4

0.4

70

0.3

0.3

80

0.2

0.2

90

0.1

0.1

100

20

40

60

80

0
100 Similarity

Points

0.2

Points

0.4

0.6

0.8

Complete Link
18/03/2014

Seminario de Data Mining - ESPE

83

Uso de la Matriz de Similitud para Validacin de Clusters

1
0.9
500

1
2

0.8

0.7

1000

0.6
1500

0.5
0.4

2000

0.3

0.2

2500

0.1

7
3000

500

1000

1500

2000

2500

3000

DBSCAN

18/03/2014

Seminario de Data Mining - ESPE

84

Medidas Internas: SSE


Los Clusters en figuras ms complicadas no son bien separados
Indice Interno: Usado para medir la bondad de una estructura de

10
6

9
8

7
2

SSE

clustering sin considerar informacin externa


SSE
SSE es bueno para comparar dos clusterings o dos clusters (SSE
promedio).
Tambin se puede usar para estimar el nmero de clusters

5
4

-2

3
2

-4

-6
5

10

15

10

15

20

25

30

18/03/2014

Seminario de Data Mining - ESPE

85

Medidas Internas: SSE


Curva SSE para un data set ms complicado
1
2

SSE de clusters hallados usando K-means

18/03/2014

Seminario de Data Mining - ESPE

86

Framework para Validacin de Clusters

Necesidad de un framework para interpretar


medidas.

P. ej., si nuestra medida de evaluacin tiene el valor 10, es buena,


regular o pobre?

Estadstica proporciona un framework para


validacin de clusters

Cuanto ms atpico es el resultado de un clustering, ms


probablemente represente una estructura vlida en los datos
Permite comparar los valores de un ndice que resulta de datos
random o clusterings con los de un resultado de un clustering.

Si el valor del ndice es improbable, luego los resultados del cluster son
vlidos

Estos enfoques son ms complicados y difciles de comprender.

Un framework no es tan necesario para comparar los


resultados de dos conjuntos diferentes de clusters.

Una cuestin es si la diferencia entre los valores de dos ndices es


significativa.

18/03/2014

Seminario de Data Mining - ESPE

87

Framework Estadstico para SSE

Ejemplo
Comparar SSE de 0.005 contra tres clusters en datos
random
El histograma muestra el SSE de tres clusters en 500
conjuntos de puntos de datos random de tamao 100
distribuido en el rango 0.2 0.8 para valores de x e y
1

50

0.9

45

0.8

40

0.7

35
30

Count

0.6
0.5
0.4

20

0.3

15

0.2

10

0.1
0

25

5
0

0.2

0.4

0.6

18/03/2014

0.8

0
0.016 0.018

0.02

0.022 0.024 0.026 0.028

0.03

0.032 0.034

SSE

Seminario de Data Mining - ESPE

88

Framework Estadstico para Correlacin

Correlacin de matrices de incidencia y

0.9

0.9

0.8

0.8

0.7

0.7

0.6

0.6

0.5

0.5

proximidad para clustering K-means de los


siguientes dos data sets.

0.4

0.4

0.3

0.3

0.2

0.2

0.1

0.1

0.2

0.4

0.6

Corr = -0.9235

18/03/2014

0.8

0.2

0.4

0.6

0.8

Corr = -0.5810

Seminario de Data Mining - ESPE

89

Medidas Internas: Cohesin y Separacin

Cohesin de Cluster: Mide cun intimamente

estn relacionados los objetos en un cluster


Ejemplo: SSE
Separacin de Clusters: Mide cun distinto o
bien separado es un clusters de otros clusters
Ejemplo: Squared Error
Cohesion se mide por la suma de los cuadrados
dentro del cluster (SSE)

WSS = ( x mi ) 2
i xC i

B
S
S

Separacin se mide por la suma de los cuadrados


entre clusters
= C (m m )
2

donde |Ci| es el tamao del cluster i

18/03/2014

Seminario de Data Mining - ESPE

90

Medidas Internas: Cohesin y Separacin


Ejemplo: SSE
BSS + WSS = constante
m
1

m1

K=1 cluster:

m2

WSS= (1 3) 2 + ( 2 3) 2 + ( 4 3) 2 + (5 3) 2 = 10
BSS= 4 (3 3) 2 = 0
Total = 10 + 0 = 10

K=2 clusters:

WSS = (1 1 . 5 ) 2 + ( 2 1 . 5 ) 2 + ( 4 4 . 5 ) 2 + ( 5 4 . 5 ) 2 = 1
BSS = 2 ( 3 1 . 5 ) 2 + 2 ( 4 . 5 3) 2 = 9
Total = 1 + 9 = 10

18/03/2014

Seminario de Data Mining - ESPE

91

Medidas Internas: Cohesin y Separacin


Un enfoque basado en un grafo de proximidad se
puede usar tambin para cohesin y separacin.
Cohesin del Cluster es la suma de los pesos de todos los links
dentro de un cluster.
Separacin del Cluster es la suma de los pesos entre nodos en el
cluster y los nodos fuera del cluster.

cohesin
18/03/2014

separacin
Seminario de Data Mining - ESPE

92

Medidas Internas: Coeficiente de Silhouette


Coeficiente Silhouette combina ideas de cohesin y

separacin, pero para puntos individuales, como as


tambin para clusters y clusterings
Para un punto individual, i
Calcular a = distancia promedio de i a los puntos en su cluster
Calcular b = min (distancia promedio de i a puntos en otro cluster)
Silhouette para un punto est dado por
s = 1 a/b si a < b,

(o s = b/a - 1

si a b, no el caso usual)
b

Tipicamente entre 0 y 1.
Cuanto ms prximo a 1 mejor.

Puede calcular el ancho promedio Silhouette para un


cluster o un clustering
18/03/2014

Seminario de Data Mining - ESPE

93

Medidas Externas de Validacin de Cluster: Entropa y Pureza

18/03/2014

Seminario de Data Mining - ESPE

94

Bibliografa

R. Ng and J. Han. Efficient and effective clustering method for spatial data mining. In VLDB'94, pp. 144-155, Santiago, Chile, Sept. 1994.

E. Schikuta. Grid clustering: An efficient hierarchical clustering method for very large data sets. Proc. 1996 Int. Conf. on Pattern Recognition,
101-105.

M. Ester, H.-P. Kriegel, J. Sander, and X. Xu. A density-based algorithm for discovering clusters in large spatial databases. In KDD'96, pp. 226231, Portland, Oregon, August 1996.

W. Wang, Yang, R. Muntz, STING: A Statistical Information grid Approach to Spatial Data Mining, VLDB97, 1997.

S. Guha, R. Rastogi, and K. Shim. ROCK: A robust clustering algorithm for categorical attributes. In ICDE'99, pp. 512-521, Sydney, Australia,
March 1999.

R. Agrawal, J. Gehrke, D. Gunopulos, and P. Raghavan. Automatic subspace clustering of high dimensional data for data mining applications.
In SIGMOD'98, pp. 94-105, Seattle, Washington, June 1998.

G. Karypis, E.-H. Han, and V. Kumar. CHAMELEON: A Hierarchical Clustering Algorithm Using Dynamic Modeling. COMPUTER, 32(8): 68-75,
1999.

Wei Wang, Jiong Yang, Richard Muntz. STING+: an approach to active spatial data mining. ICDE 99, pp. 116-125. 1999.

T. Zhang, R. Ramakrishnan, and M. Livny. BIRCH: An efficient data clustering method for very large databases. In SIGMOD'96, pp. 103-114,
Montreal, Canada, June 1996.

S. Guha, R. Rastogi, and K. Shim. CURE: An efficient clustering algorithm for large databases. In SIGMOD'98, pp. 73-84, Seattle, Washington,
June 1998.

M. Ankerst, M. Breunig, H.-P. Kriegel, and J. Sander. Optics: Ordering points to identify the clustering structure. In SIGMOD'99, pp. 49-60,
Philadelphia, PA, June 1999.

V. Ganti, J. Gehrke, R. Ramakrishan. CACTUS Clustering Categorical Data Using Summaries. Proc. 1999 Int. Conf. Knowledge Discovery and
Data Mining (KDD'99), San Diego, CA, 261-270, Aug. 1999. (Journal version: citeseer)

M. M. Breunig, H.-P. Kriegel, R. Ng, J. Sander. LOF: Identifying Density-Based Local Outliers. In Proc. ACM SIGMOD Int. Conf. on
Management of Data (SIGMOD 2000), Dallas, TX, 2000, pp. 93-104.

H. Wang, W. Wang, J. Yang, and P.S. Yu. Clustering by pattern similarity in large data sets, Proc. the ACM SIGMOD International
Conference on Management of Data (SIGMOD), Madison, Wisconsin, 2002.

18/03/2014

Seminario de Data Mining - ESPE

95

18/03/2014

Seminario de Data Mining - ESPE

96

You might also like