Se presentan las principales técnicas de clasificación automática, también conocidas como de aprendizaje no supervisado (o clustering, en inglés). Se inicia con los temas de medidas de semejanza y se revisan las técnicas jerárquicas y de particiones, como k-medias.
1. J. Trejos: Clasificaión Automática
CIMPA-UCR
Clasificación Automática
Javier Trejos
CIMPA – Escuela de Matemática
Universidad de Costa Rica
2. J. Trejos: Clasificaión Automática
CIMPA-UCR
Medidas de Semejanza
• Distancias y Disimilitudes
Semejanza entre individuos u objetos
• Agregaciones
Semejanza entre conjuntos de individuos
u objetos
3. J. Trejos: Clasificaión Automática
CIMPA-UCR
Distancias y Disimilitudes
+
→
:
d
( ) ( )
j
i
d
j
i ,
,
con ( ) j
i
j
i
d =
= 0
, definida
( ) ( )
i
j
d
j
i
d ,
, = simétrica
“Entre menor sea d, más parecidos son i, j.
Entre mayor sea d, más diferentes son i, j.”
( ) ( ) ( )
j
k
d
k
i
d
j
i
d ,
,
, +
Distancia = Disimilitud + Desigualdad triangular
Disimilitud:
4. J. Trejos: Clasificaión Automática
CIMPA-UCR
Ultramétricas
Ultramétrica = Disimilitud + Desigualdad ultramétrica
( ) ( ) ( )}
,
,
,
{
, j
k
d
k
i
d
Max
j
i
d
•Desig. Ultramétrica desig. Triangular
•Geometría: todos los triángulos son isóceles agudos
no se puede hacer
una representación plana
de más de 3 puntos
Obs:
5. J. Trejos: Clasificaión Automática
CIMPA-UCR
Datos cuantitativos (2)
j
i
Minkowski:
+
,
0
r
City-block,
Manhattan o L1:
( )
1
=
r
( )
=
−
=
p
k
jk
ik x
x
j
i
d
1
1 ,
Chebychev o L :
( ) jk
ik x
x
j
i
d −
=
max
,
( )
→
r
( )
r
p
k
r
jk
ik
r x
x
j
i
d
1
1
,
−
=
=
9. J. Trejos: Clasificaión Automática
CIMPA-UCR
Clasificación Jerárquica
• Construcción de un árbol jerárquico
de clasificación
• El dendrograma es fácil de interpretar
en términos de clasificación
10. J. Trejos: Clasificaión Automática
CIMPA-UCR
Ejemplo 1: min
0 1 3 5
.
5
0 2 5
.
4
0 5
.
2
0
a
a
b
b
c
c
d
d
0 2 5
.
4
0 5
.
2
0
}
,
{ b
a
}
,
{ b
a
c
d
d
c
a b c d
1
2
3
0 5
.
2
0
}
,
,
{ c
b
a
}
,
,
{ c
b
a
d
d
11. J. Trejos: Clasificaión Automática
CIMPA-UCR
Ejemplo 1: max
0 1 3 5
.
5
0 2 5
.
4
0 5
.
2
0
a
a
b
b
c
c
d
d
0 3 5
.
5
0 5
.
2
0
}
,
{ b
a
}
,
{ b
a
c
d
d
c
0 5
.
5
0
}
,
{ b
a
}
,
{ b
a
}
,
{ d
c
}
,
{ d
c
a b c d
1
2
3
4
5
12. J. Trejos: Clasificaión Automática
CIMPA-UCR
Ejemplo 1: prom
0 5
.
2 5
0 5
.
2
0
}
,
{ b
a
}
,
{ b
a
c
d
d
c
Tomar una decisión
0 1 3 5
.
5
0 2 5
.
4
0 5
.
2
0
a
a
b
b
c
c
d
d
a b c d
1
2
3
13. J. Trejos: Clasificaión Automática
CIMPA-UCR
Resultados con prom
}
,
{ b
a
0
75
.
3
0
}
,
{ d
c
}
,
{ d
c
}
,
{ b
a
a b c d
1
2
3
4
5
0 16
.
4
0
}
,
,
{ c
b
a
}
,
,
{ c
b
a
d
d
a b c d
1
2
3
4
5
14. J. Trejos: Clasificaión Automática
CIMPA-UCR
Diferentes resultados
0 1 3 5
.
5
0 2 5
.
4
0 5
.
2
0
a
a
b
b
c
c
d
d
a b c d
1
2
3
min
a b c d
1
2
3
4
5
max
a b c d
1
2
3
4
5
a b c d
1
2
3
4
5
pro
m
15. J. Trejos: Clasificaión Automática
CIMPA-UCR
Fórmula de recurrencia
2
1
2
1
2
1 2
1
0
0
0
0
0
0
2
1
−
2
1
−
2
1
1
h
h
h
+
2
1
1
h
h
h
h
h
+
+
+
2
1
1
h
h
h
+
2
1
2
h
h
h
+
2
1
2
h
h
h
h
h
+
+
+
2
1
2
h
h
h
+
2
1 h
h
h
h
+
+
−
( )2
2
1
2
1
h
h
h
h
+
−
1
a 2
a 3
a 4
a
min
max
ave
ward
cg
( ) ( ) ( ) ( )
2
1
3
2
2
1
1
2
1 ,
,
,
, h
h
a
h
h
a
h
h
a
h
h
h
+
+
=
( ) ( )
2
1
4 ,
, h
h
h
h
a
−
+
Lance & Williams (1967), Jambu (1978)
16. J. Trejos: Clasificaión Automática
CIMPA-UCR
Inversiones en CJA
Sea ( )
f
H ,
Inversión: If H
h
h
, st ( ) ( )
h
f
h
f
h
h
h
h
17. J. Trejos: Clasificaión Automática
CIMPA-UCR
Batalegj-Diday Theorem
Cuando se usa la fórmula de Lance & Williams
no hay inversiones si y sólo si:
}
,
{
) 2
1
4 a
a
mín
a
a −
0
) 2
1
+ a
a
b
1
) 3
2
1
+
+ a
a
a
c
Hay inversiones }
,
{ 2
1
4 a
a
mín
a −
1
,
0 3
2
1
2
1
+
+
+ a
a
a
a
a
No tienen inversiones: min max ave ward
18. J. Trejos: Clasificaión Automática
CIMPA-UCR
CJ Descendente
Problema combinatorio: 2n-1-1 dicotomías
• Williams & Lambert: cada variable genera
dicotomía → tomar la que maximiza Var Inter.
• Hubert: tomar clase de mayor diámetro, agregar
alrededor de los “polos”
• Roux: inercia asociada a una bipartición (pares)
• Lacoste: análisis factorial
• Cavalli-Sforza: · todas las dicotomías
· escoger la que mín W
19. J. Trejos: Clasificaión Automática
CIMPA-UCR
Ejemplo de Clasificación
Notas Escolares CR ( 1 )
Arbol Jerárquico: ( Ward )
Lucía
María
Andrés
Carlos
Luis
Sonia
Pedro
Carmen
Ana
José
0 1
Corte del árbol
20. J. Trejos: Clasificaión Automática
CIMPA-UCR
Ejemplo de Clasificación
Notas Escolares C.R. ( 2 )
Corte en tres clases: B = 19.72
Clase
1: Lucía, María, Andrés, Carlos
Mat Cie Esp His E.Fi
6.5 6.5 8.5 8.9 7.4
Interpretación
Humanística
2: Luis, Sonia 5.5 6.2 6.5 6.2 8.8 Flojos; Ed, Físic
3: Pedro, Carmen, Ana, José 7.7 9.5 8.0 7.8 6.7 Buenos; Cient.
6.8 7.7 7.9 7.9 7.4
Promedio general:
26. J. Trejos: Clasificaión Automática
CIMPA-UCR
Corte del árbol
a b c d e f
una partición
}
,
,
{
1 c
b
a
c =
}
,
,
{
2 f
e
d
c =
•“Mayor salto” del índice
( )
h
f
•Método del codo: inercias (caso cuantitativo )
w
•Max
1
−
k
k
w
w
•Control difuso
•Mojena, Jambu, Lerman,...
27. J. Trejos: Clasificaión Automática
CIMPA-UCR
Teorema de Benzécri
Hay una biyección entre el conjunto J de
jerarquías indexadas de y el conjunto U
de ultramétricas definidas sobre .
28. J. Trejos: Clasificaión Automática
CIMPA-UCR
Consecuencias
( )( )
=
•
( )( ) ( )
f
H
f
H ,
, =
•
, son funciones
inversas
Consecuencia: medir “distancias” sobre un árbol
jerárquico, es la medición de una ultramétrica
i j
( )
j
i,
29. J. Trejos: Clasificaión Automática
CIMPA-UCR
Observaciones a la CJA
Desventajas
• Se ajusta los datos a una ultrametrica
• Resultado depende de
• Resultado depende de cómo resolver las igualdades
• Cargar en memoria tabla de n2 disimilitudes
• Una jerarquía impone restricciones de inclusión
Ventajas
•Complejidad O ( n2 )
•Dadas d y , hay una única solución.
30. J. Trejos: Clasificaión Automática
CIMPA-UCR
Clasificación por Particiones
• Encontrar clases homogéneas
internamente y bien separadas
• Caso numérico o cuantitativo:
= {x1,x2,…,xn} Rp
• Caso binario:
= {x1,x2,…,xn} {0,1}p
• Partición: P = (C1,C2,…,CK) [K dado]
31. J. Trejos: Clasificaión Automática
CIMPA-UCR
Homogeneidad (numérica)
• Minimizar la inercia
(varianza) intraclases:
• donde gk es el centro
de gravedad de Ck
=
−
=
K
k C
k
i
n
k
i
P
W
1
2
1
||
||
)
(
x
g
x
32. J. Trejos: Clasificaión Automática
CIMPA-UCR Separación (numérica)
• Maximizar la inercia
(varianza) interclases:
Donde g es el c.grav. total
Nota:
Total = W(P) + B(P)
min max
=
−
=
K
k
k
k
n
C
P
B
1
2
||
||
|
|
)
( g
g
33. J. Trejos: Clasificaión Automática
CIMPA-UCR
Criterios de inercia
nota:
Inercia = W(P) + B(P)
min max
=
−
=
k
l
l
l
n
C
P
B
1
2
||
||
|
|
)
( g
g
=
−
=
k
l C
l
i
n
l
i
P
W
1
2
1
||
||
)
(
x
g
x
34. J. Trejos: Clasificaión Automática
CIMPA-UCR Problema Combinatorio
• Número de particiones en clases no vacías:
• Ver Stirling.xls
• Se necesitan métodos aproximados
n
K
i
i
K
i
i
K
K
K
n
S
K
K
n
S
K
n
S
=
−
−
=
−
+
−
−
=
0
)
1
(
!
1
)
,
1
(
)
1
,
1
(
)
,
(
36. J. Trejos: Clasificaión Automática
CIMPA-UCR Algunos resultados
• La mejor partición tiene exactamente K
clases y no menos
• Monotonicidad:
min{W(P´) : P´P*
K+1} min{W(P) : PP*
K}
donde P*
K es el conjunto de todas las
particiones de en K clases no vacías
38. J. Trejos: Clasificaión Automática
CIMPA-UCR
Método de K-Medias
Principio:
• Cada clase se representa por su
baricentro (vector de medias)
• Hacer iteraciones, hasta converger:
– Asignar objetos a la clase más de
baricentro más cercano
– Recalcular los baricentros
Ver ilustración
39. J. Trejos: Clasificaión Automática
CIMPA-UCR
MATE CIEN. ESPA HIS. GIM
LUCIA 7.0 6.5 9.2 8.6 8.0
PEDRO 7.5 9.4 7.3 7.0 7.0
INES 7.6 9.2 8.0 8.0 7.5
LUIS 5.0 6.5 6.5 7.0 9.0
ANDRES 6.0 6.0 7.8 8.9 7.3
ANA 7.8 9.6 7.7 8.0 6.5
CARLOS 6.3 6.4 8.2 9.0 7.2
JOSE 7.9 9.7 7.5 8.0 6.0
SONIA 6.0 6.0 6.5 5.5 8.7
MARÍA 6.8 7.2 8.7 9.0 7.0
PROM 6.79 7.65 7.74 7.9 7.42
Ejemplo: notas escolares
43. J. Trejos: Clasificaión Automática
CIMPA-UCR
Observaciones a K-medias
• El algoritmo es muy rápido
• La solución depende de la partición
inicial
• Es una buena idea hacer varias corridas
(cientos o miles!) antes de guardar una
• El número de clases K es fijado a
priori
• Inercia: tiende a dar clases esféricas
44. J. Trejos: Clasificaión Automática
CIMPA-UCR
Nubes Dinámicas
• Cada clase es representada por un
núcleo
• Hacer iteraciones sobre
• Dos pasos:
– Asignación: cada objeto se asigna a la
clase del núcleo más cercano
– Representación: recalcular los núcleos
• Hasta estabilidad
45. J. Trejos: Clasificaión Automática
CIMPA-UCR
Ejemplos de Núcleos
•Caso Euclídeo: baricentro
(objeto promedio) *
•Caso no Euclídeo : una muestra
(objetos más representativos)
•Caso explicativo: regresiones parciales
46. J. Trejos: Clasificaión Automática
CIMPA-UCR
Ejemplos de Núcleos
•Reconocimiento de patrones: métricas o distancias adaptativas
Una única métrica
*
*
Una métrica por clase
**
*
47. J. Trejos: Clasificaión Automática
CIMPA-UCR
Ejemplos de Núcleos
• Descripción conceptual
A: {altura [1.75, 1.80]}
B: {alt < 1.75} {peso < 68}
C: {alt < 1.75} {peso 68} {sexo= Fem}
D: {alt < 1.75} {peso 68} {sexo= Masc}
1.80
1.75
68
A
B
C
D
weight (kg)
height (mt)
48. J. Trejos: Clasificaión Automática
CIMPA-UCR
Pasos en Nubes Dinámicas
Asignación: k
i C
x → si
( ) ( )
h
i
k
i N
x
d
N
x
d ,
, para
K
h ,...,
1
ie: ( ) ( )
h
i
h
k
i N
x
d
N
x
d ,
min
, =
En caso de igualdad, asignar xi a la clase de menor índice
Representación
Nl es el núcleo de Cl si el criterio W es mínimo para Nl
Caso Euclídeo: Nl = gl , el baricentro, gracias al teorema de
Huygens
49. J. Trejos: Clasificaión Automática
CIMPA-UCR
Requisitos para MND
• Debe definirse una proximidad entre objetos
y núcleos
• Debe definirse un criterio W
• Debe probarse un teorema tipo Huygens
para poder establecer:
– Convergencia
– Núcleo óptimo
50. J. Trejos: Clasificaión Automática
CIMPA-UCR
Ventajas e inconvenientes
Ventajas
•Rápido
•Converge
•Interpretación intuitiva
Inconvenientes
•Solución depende de la configuración inicial
•El número de clases debe ser escogido
•Solution suboptimal (mínimo local de W)
51. J. Trejos: Clasificaión Automática
CIMPA-UCR
Observaciones a K-medias
• El algoritmo es muy rápido
• La solución depende de la partición
inicial
• Es una buena idea hacer varias corridas
(cientos o miles!) antes de guardar una
• El número de clases K es fijado a
priori
• Inercia: tiende a dar clases esféricas
52. J. Trejos: Clasificaión Automática
CIMPA-UCR
Recomendaciones
Se recomienda
•Ejecutar el método varias veces para
estudiar la estabilidad de las clases
•Cambiar el número K (en caso que
elusuario no conozca el número exacto de
clases)
53. J. Trejos: Clasificaión Automática
CIMPA-UCR
Análisis de las Formas Fuertes
• Al aplicar varias veces el método de k-
medias, se estudia la estabilidad de las
clases
• Se genera un árbol jerárquico al definir una
disimilitud como el conteo de cuantas veces
cada par de formas fuertes han quedado
clasificadas juntas
54. J. Trejos: Clasificaión Automática
CIMPA-UCR Datos de CO2: clasificación de
las estaciones meteorológicas
CJA, agregación de Ward,
distancia Euclídea clásica
Datos: concentración
filtrada de CO2
55. J. Trejos: Clasificaión Automática
CIMPA-UCR Datos de CO2: clasificación de
los instantes
CJA, agregación de Ward,
distancia Euclídea clásica
56. J. Trejos: Clasificaión Automática
CIMPA-UCR Fabes asturianas: clasificación de las
variedades para distintas agregaciones
57. J. Trejos: Clasificaión Automática
CIMPA-UCR Fabes asturianas: clasificación
de las variables