Está en la página 1de 158

Centro de Investigación y de Estudios Avanzados

del Instituto Politécnico Nacional

Unidad Cinvestav Tamaulipas

Agrupamiento automático evolutivo con


adaptación del criterio de similitud basado en
análisis del tipo de separabilidad de los datos

Tesis que presenta:

Adán José García

Para obtener el grado de:

Doctor en Ciencias
en Computación

Director de la Tesis:
Dr. Wilfrido Gómez Flores

Ciudad Victoria, Tamaulipas, México. Diciembre, 2017


c Derechos reservados por
Adán José García
2017
La tesis presentada por Adán José García fue aprobada por:

__________________________________________

Dr. José Torres Jiménez

Dr. José Juan García Hernández

Dr. Edwyn Javier Aldana Bobadilla

Dr. Alan Díaz Manríquez

Dr. Wilfrido Gómez Flores, Director

Ciudad Victoria, Tamaulipas, México., 1 de Diciembre de 2017


A mi padre Roberto.
Agradecimientos

Primeramente, agradezco a DIOS por el regalo de la vida, por rodearme de personas


extraordinarias, por mantener en mí esas ganas inmensas de luchar por cada meta trazada,
por regalarme una vida llena de bendiciones.

Agradezco a mi familia, especialmente a mi padre Roberto y a mis hermanas Fabiola,


Gabriela y Jesús, porque ellos han representado una fuente constante de motivación, por
enseñarme que las metas se pueden alcanzar a través del esfuerzo y porque la familia
siempre es primero.

Agradezco enormemente al Dr. Wilfrido Gómez Flores, mi supervisor de tesis por su guía,
paciencia, y especialmente por la amistad y confianza brindada durante el desarrollo de
este proyecto de investigación.

Me gustaría agradecer al Dr. José Juan García Hernández, Dr. José Torres Jiménez, Dr.
Edwyn Javier Aldana Bobadilla y Dr. Alan Díaz Manríquez por participar como revisores
de esta tesis. Sus comentarios han contribuido ampliamente a mejorar la calidad de este
trabajo de investigación. También, me gustaría agradecer a la Dra. Ana Ríos Alvarado por
su participación como miembro del comité de evaluación de mi examen predoctoral. Sus
valiosas observaciones fueron beneficiosas para la culminación de este proyecto.

Agradezco a mis compañeros y especialmente a mis amigos Giomara, Auraham, Arturo,


Rafael, Lázaro, Idelfonso y Daniel que han compartido esta grandiosa e inolvidable
aventura conmigo en el Cinvestav-Tamaulipas. Agradezco a los profesores de este centro de
investigación por compartir conmigo sus conocimientos y experiencias. Además, agradezco
a todo el personal del Cinvestav-Tamaulipas por todo el apoyo y facilidades brindadas
durante mi estancia en esta gran institución.

Agradezco a mis amigos Hillel, Misael y David por brindarme su amistad sincera y apoyo
incondicional, son muchos los momentos y anécdotas que hemos compartido.

Finalmente, agradezco al CONACyT por el apoyo brindado a través de una beca


para continuar mis estudios de postgrado en el Cinvestav-Tamaulipas. Extiendo mi
reconocimiento al CONACyT por incentivar e impulsar el desarrollo tecnológico en el país
mediante apoyos económicos.
Índice General

Índice General I

Índice de Figuras V

Índice de Tablas VII

Índice de Algoritmos IX

Publicaciones XI

Resumen XIII

Abstract XV

Nomenclatura 1

1. Introducción 3
1.1. Antecedentes y motivación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2. Planteamiento del problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3. Propuesta de solución . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4. Objetivos de la tesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.5. Organización del documento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2. Marco teórico 9
2.1. Notación y componentes básicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2. Métricas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2.1. Métrica de Minkowski . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2.2. Métrica MED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3. Índices de validez de grupos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.4. Algoritmos de agrupamiento convencionales . . . . . . . . . . . . . . . . . . . . . . 12
2.4.1. Algoritmo K-means . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.4.2. Métodos Single-linkage y WARD . . . . . . . . . . . . . . . . . . . . . . . . 14
2.4.3. Algoritmo DBSCAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.5. Algoritmos de agrupamiento metaheurísticos . . . . . . . . . . . . . . . . . . . . . . 16
2.5.1. Algoritmo TGCA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.5.2. Algoritmo ACDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.5.3. Algoritmo MEPSO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

i
2.6. Evaluación del desempeño de agrupamiento . . . . . . . . . . . . . . . . . . . . . . . 21
2.6.1. Conjuntos de datos de prueba . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.6.2. Índices de desempeño . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.6.3. Pruebas de significación estadística . . . . . . . . . . . . . . . . . . . . . . . 27
2.6.4. Plataforma de experimentación . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.7. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3. Estado del arte 29


3.1. Componentes de un algoritmo de agrupamiento metaheurístico . . . . . . . . . . . . 29
3.1.1. Representación de soluciones de agrupamiento . . . . . . . . . . . . . . . . . 30
3.1.2. Función objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.2. Enfoques basados en programación evolutiva . . . . . . . . . . . . . . . . . . . . . . 32
3.3. Enfoques basados en estrategias evolutivas . . . . . . . . . . . . . . . . . . . . . . . 32
3.4. Enfoques basados en algoritmos genéticos . . . . . . . . . . . . . . . . . . . . . . . . 33
3.4.1. Codificación de longitud fija . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.4.2. Codificación de longitud variable . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.4.3. Aplicaciones específicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.5. Enfoques basados en evolución diferencial . . . . . . . . . . . . . . . . . . . . . . . . 37
3.6. Enfoques basados en optimización por cúmulo de partículas . . . . . . . . . . . . . . 38
3.7. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

4. Estudio comparativo de IVGs 43


4.1. Preliminares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
4.2. Resultados del estudio comparativo . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.2.1. Calidad del agrupamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.2.2. Balance entre los índices de evaluación . . . . . . . . . . . . . . . . . . . . . 47
4.3. Discusión de resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.4. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5. Agrupamiento automático evolutivo 55


5.1. Influencia de la métrica en el IVG . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.1.1. Criterios de similitud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.1.2. Experimentos y resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5.2. Selector de la métrica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5.2.1. Extracción de características . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
5.2.2. Selección de características . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.2.3. Clasificador basado en SVM . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.2.4. Resultados del clasificador basado en SVM . . . . . . . . . . . . . . . . . . . 68
5.3. Algoritmo de agrupamiento CADE . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
5.3.1. Componentes del algoritmo CADE . . . . . . . . . . . . . . . . . . . . . . . . 70
5.3.2. Representación de soluciones . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
5.3.3. Función objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

ii
5.3.4. Pseudocódigo del algoritmo CADE . . . . . . . . . . . . . . . . . . . . . . . 73
5.3.5. Complejidad temporal de CADE . . . . . . . . . . . . . . . . . . . . . . . . . 74

6. Resultados experimentales 77
6.1. Diseño experimental . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
6.1.1. Configuración de parámetros de entrada . . . . . . . . . . . . . . . . . . . . 78
6.2. Algoritmos de agrupamiento convencionales versus CADE . . . . . . . . . . . . . . . 79
6.3. Algoritmos de agrupamiento metaheurísticos versus CADE . . . . . . . . . . . . . . . 82
6.4. Segmentación automática de imágenes de texturas . . . . . . . . . . . . . . . . . . . 90
6.4.1. Método de segmentación de texturas . . . . . . . . . . . . . . . . . . . . . . 90
6.4.2. Diseño experimental para la segmentación de texturas . . . . . . . . . . . . . 92
6.4.3. Resultados de segmentación de texturas . . . . . . . . . . . . . . . . . . . . . 94
6.5. Discusión de resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
6.6. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

7. Conclusiones 101
7.1. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
7.2. Contribuciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

Apéndice A. Listado de índices de validez de grupos 107

Apéndice B. Metaheurísticas 113

Apéndice C. Listado de criterios de agrupamientos 119

Apéndice D. Parámetros del algoritmo DBSCAN 123

Bibliografía 125

iii
Índice de Figuras

1.1. Conjuntos de puntos con diferentes tipos de separabilidad: (a) linealmente separables
sin traslape, (b) linealmente separables con traslape y (c) no linealmente separables.
Las líneas rojas señalan los hiperplanos de separación, mientras que las estrellas
indican los prototipos de los grupos. . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2. Esquema general del enfoque de agrupamiento propuesto. . . . . . . . . . . . . . . . 7

2.1. Estructura y etiquetado ideal de los conjuntos de datos sintéticos tomados de la


literatura. Los conjuntos de datos en (a)–(h) pertenecen a G1 , los datos en (i)–(p)
pertenecen a G2 y los conjuntos de datos en (q)–(x) pertenecen a G3 . . . . . . . . . 24
2.2. Estructura y etiquetado ideal de los conjuntos de datos sintéticos propuestos en esta
investigación. Los conjuntos de datos en (a)–(e) pertenecen a G1 , los datos en (f)–(j)
pertenecen a G2 y los conjuntos de datos en (k)–(o) pertenecen a G3 . . . . . . . . . 25

4.1. Valores ARI obtenidos por cada IVG estudiado. Se presentan los resultados generales
para cada categoría de conjuntos de datos: (a) G1 , (b) G2 , (c) G3 , y (d) G4 . . . . . . 51
4.2. Valores NAE obtenidos por cada IVG estudiado. Se presentan los resultados generales
para cada categoría de conjuntos de datos: (a) G1 , (b) G2 , (c) G3 , y (d) G4 . . . . . . 52
4.3. Valores NED obtenidos del balance entre los índices ARI y NAE para cada IVG. Se
presentan los resultados para cada categoría de datos: (a) G1 , (b) G2 , (c) G3 , y (d) G4 .
El símbolo “ 4” indica que los resultados del IVG no son estadísticamente diferentes
(p > 0.05) con respecto al IVG con el mejor desempeño en términos del índice NED,
señalado con el símbolo “ N”. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

5.1. Diagrama del enfoque propuesto que incluye al selector de la métrica (cSVM) y al
algoritmo de agrupamiento automático (CADE). . . . . . . . . . . . . . . . . . . . . 56
5.2. Proyecciones de MDS de los conjuntos de datos (a) Orange, (b) Data_5_2 y (c)
Spirals obtenidas por las distancias Euclidiana y MED. . . . . . . . . . . . . . . . . 57
5.3. Valores ARI obtenidos por los algoritmos de agrupamiento para las diferentes
categorías de datos: (a) G1 , (b) G2 y (c) G3 . El símbolo “ 4” indica que los resultados
del algoritmo no son estadísticamente diferentes (p > 0.05) con respecto al algoritmo
con el mejor desempeño, señalado con el símbolo “ N”, en términos del índice ARI. . . 60
5.4. Diagrama de flujo del selector del criterio de similitud basado en SVM. . . . . . . . . 62
5.5. Diagrama del análisis de datos para el i-ésimo conjunto de datos y el j-ésimo criterio. 63
5.6. Gráficas de convergencia de cada criterio de agrupamiento para las tres categorías
G1 , G2 y G3 : (a)–(j) criterios de dispersión intragrupo y (k)–(t) criterios de separación
intergrupo. Las gráficas muestran el valor promedio de los criterios para cada categoría
de datos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.7. SVM con clases separables en (a) y con clases separables con traslape en (b). . . . . 66

v
5.8. Valores MCC obtenidos por el clasificador SVM: (a) paisaje de aptitud para diferentes
valores de cuantificación (Q) y número de características y (b) valores MCC para el
mejor nivel de cuantificación, Q = 2. . . . . . . . . . . . . . . . . . . . . . . . . . . 68
5.9. Ejemplo de la representación real basada en centroides con Kmáx = 5 y D = 2.
Los centroides activados se indican con círculos rellenos, mientras que los centroides
desactivados se indican con círculos blancos. . . . . . . . . . . . . . . . . . . . . . . 72

6.1. Gráficas de convergencia de los conjuntos datos sintéticos de la categoría G1 . . . . . 86


6.2. Gráficas de convergencia de los conjuntos datos sintéticos de la categoría G2 . . . . . 87
6.3. Gráficas de convergencia de los conjuntos datos sintéticos de la categoría G3 . . . . . 88
6.4. Diagrama a bloques del método de segmentación de textura basado en filtros de Gabor. 90
6.5. Ejemplo de descomposición multi-canal: (a) imagen de entrada, (b) banco de filtros
con pasos de 45 y (c) descomposición multi-canal para diferentes valores de ✓ y uk . 92
6.6. Imágenes de textura sintéticas (a)–(j) e imágenes de textura reales (k)–(n) utilizadas. 94
6.7. Segmentación de texturas de los algoritmos K-means y CADE: (a) textura01, (b)
textura02, (c) textura03, (d) textura04 y (e) textura05. . . . . . . . . . . . . . . . . 96
6.8. Segmentación de texturas de los algoritmos K-means y CADE: (a) textura06, (b)
textura07, (c) textura08, (d) textura09 y (e) textura10. . . . . . . . . . . . . . . . . 96
6.9. Segmentación de texturas de los algoritmos K-means y CADE: (a) zebra, (b) frog,
(c) mantas y (d) field. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

vi
Índice de Tablas

2.1. Complejidad computacional de los 22 IVGs estudiados, donde N es el número de


patrones en X, D denota laPdimensionalidad, K representa el número de grupos
de una solución C y nw = ck 2C n2k denota el número de pares de objetos que
están en un mismo grupo. Los IVGs están ordenados de menor a mayor complejidad
computacional. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2. Conjuntos de datos sintéticos tomados de la literatura para los diferentes experimentos. 22
2.3. Conjuntos de datos sintéticos propuestos para los experimentos del Capítulo 5. El
símbolo “#” denota el número de conjunto de datos creados para cada caso. . . . . . 23
2.4. Conjuntos de datos reales considerados para los diferentes experimentos. . . . . . . . 25

3.1. Algoritmos de agrupamiento metaheurísticos para abordar el problema AAD.


“Codificación” indica el tipo de representación: representación real basada en
centroides de longitud fija (C-LF) o longitud variable (C-LV), representación entera
basada en etiquetas (E) o representación binaria (B); “IVG” se refiere a la función
objetivo; “Datos sintéticos”, “Datos reales” y “Aplicación” denotan el tipo y/o el
número de conjuntos de prueba utilizados. . . . . . . . . . . . . . . . . . . . . . . . 41

4.1. Configuración de los parámetros de entrada del algoritmo ACDE [1]. . . . . . . . . . 45

5.1. Resultados de media y desviación estándar (en paréntesis) obtenidos por las distancias
Euclidiana y MED usando el algoritmo CDE en términos de los índice ARI y NSR.
Además, se presentan los resultados obtenidos por los algoritmos K-means y Single-
linkage. “Cat.” indica la categoría del tipo de separabilidad y “#” denota el número
de conjuntos de datos en una colección. . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.2. Características del mejor modelo generado por el clasificador SVM. . . . . . . . . . . 68

6.1. Configuración de los parámetros de entrada para los algoritmos de agrupamiento


metaheurísticos considerados en este trabajo de investigación [1, 2]. . . . . . . . . . . 79
6.2. Valores ARI y NSR obtenidos por CADE y otros algoritmos de agrupamiento
convencionales al abordar el problema AAD. Los estadísticos de media y desviación
estándar (en paréntesis) son presentados. “Cat.” indica la categoría de separabilidad
de los datos y “#” denota el número de conjuntos de datos en una colección. . . . . 81
6.3. Resumen de los resultados obtenidos por CADE y otros cuatro algoritmos de
agrupamiento convencionales en términos de los índices ARI y NSR. Los estadísticos
de media y desviación estándar (en paréntesis) son presentados. El símbolo “#” denota
el número de conjuntos de datos en una categoría. . . . . . . . . . . . . . . . . . . . 82

vii
6.4. Valores ARI y NSR obtenidos por CADE y otros algoritmos de agrupamiento
metaheurísticos al abordar el problema AAD. Los estadísticos de media y desviación
estándar (en paréntesis) son presentados. “Cat.” indica la categoría de separabilidad
de los datos y “#” denota el número de conjuntos de datos en una colección. . . . . 84
6.5. Resumen de los resultados obtenidos por CADE y otros cuatro algoritmos de
agrupamiento metaheurísticos en términos de los índices ARI y NSR. Los estadísticos
de media y desviación estándar (en paréntesis) son presentados. El símbolo “#” denota
el número de conjuntos de datos en una categoría. . . . . . . . . . . . . . . . . . . . 85
6.6. Valores de aptitud del índice Silhouette obtenidos por CADE y otros cuatro algoritmos
de agrupamiento metaheurísticos. Los estadísticos de media y desviación estándar
(en paréntesis) son presentados para los conjuntos de datos sintéticos tomados de la
literatura. Además, los mejores resultados para cada conjunto de datos están indicados
en negrita. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
6.7. Imágenes de textura utilizadas en el experimento: (a) características de cada imagen
y (b) parámetros de los filtros de Gabor usados en cada imagen. . . . . . . . . . . . 93
6.8. Valores del índice ARI, valores de aptitud del índice Silhouette (Sil) y número de
grupos (K) obtenidos por los algoritmos K-means, K-means+ y CADE. . . . . . . . . 95

D.1. Parámetros de los conjuntos de datos sintéticos propuestos para este proyecto. . . . . 123
D.2. Parámetros de los conjuntos de datos sintéticos propuestos en la literatura. . . . . . 124
D.3. Parámetros de los conjuntos de datos reales propuestos en la literatura. . . . . . . . 124

viii
Índice de Algoritmos

1. Pseudocódigo para la evaluación del clasificador SVM. . . . . . . . . . . . . . . . . . 67

2. Pseudocódigo de un algoritmo genético simple. . . . . . . . . . . . . . . . . . . . . . 114


3. Pseudocódigo del algoritmo DE/rand/1/bin. . . . . . . . . . . . . . . . . . . . . . . . 116
4. Pseudocódigo del algoritmo PSO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

ix
Publicaciones

José-García, A., and Gómez-Flores, W. Automatic Clustering Using Nature-Inspired


Metaheuristics: A Survey. Applied Soft Computing 41, (2016), 192–213.

José-García, A., and Gómez-Flores, W. A Evolutionary Clustering Using Multi-prototype


Representation and Connectivity Criterion. In Mexican Conference on Pattern Recognition
(MCPR’2017), Springer Berlin Heidelberg, pp. 63-73.

xi
Resumen

Agrupamiento automático evolutivo con adaptación del


criterio de similitud basado en análisis del tipo de
separabilidad de los datos
por

Adán José García


Unidad Cinvestav Tamaulipas
Centro de Investigación y de Estudios Avanzados del Instituto Politécnico Nacional, 2017
Dr. Wilfrido Gómez Flores, Director

El agrupamiento automático de datos consiste en revelar la estructura subyacente de los patrones


en grupos y simultáneamente determinar el número de grupos. Esta tarea se ha abordado mediante
algoritmos de agrupamiento metaheurísticos (AAMs), los cuales utilizan como función objetivo un
índice de validez de grupos (IVG). Comúnmente, los IVGs cuantifican dos criterios de agrupamiento:
separación intergrupo y dispersión intragrupo, donde un criterio de similitud, generalmente la
distancia Euclidiana, determina la cercanía entre patrones. Ambos criterios de agrupamiento se
satisfacen cuando los datos son linealmente separables, es decir, se pueden generar grupos compactos
y separados; por tanto, el IVG es capaz de distinguir entre soluciones inferiores y superiores. Sin
embargo, en el caso de datos no linealmente separables, la distancia Euclidiana solo medirá la
proximidad entre patrones sin considerar el grado de conectividad entre ellos. Consecuentemente, el
IVG pierde su capacidad discriminante, debido a que ambos criterios de agrupamiento no se satisfacen
simultáneamente. En la práctica, se desconoce el tipo de separabilidad de los datos; por tanto, en este
trabajo de investigación se propone adaptar el criterio de similitud en el IVG en función del tipo de
separabilidad de los datos para incrementar el desempeño de un algoritmo de agrupamiento evolutivo.
El enfoque propuesto está compuesto de dos partes principales: un selector del criterio de
similitud y un algoritmo de agrupamiento automático basado en evolución diferencial, denominado
CADE. Además, se consideran dos criterios de similitud: distancia Euclidiana y distancia de la
arista máxima (MED), los cuales miden proximidad y conectividad, respectivamente. El índice
Silhouette (Sil) se eligió como el IVG que guía la búsqueda de soluciones de agrupamiento potenciales
en el algoritmo CADE. Por otro lado, mediante aprendizaje supervisado, se entrenó el selector del
criterio de similitud para distinguir entre datos linealmente separables sin traslape (G1 ), linealmente
separables con traslape (G2 ), y no linealmente separables (G3 ) con base en sus propiedades de

xiii
dispersión intragrupo. De este modo, datos clasificados como G1 y G3 se agrupan usando distancia
MED, mientras que datos clasificados como G2 se agrupan usando distancia Euclidiana.
En la experimentación se consideraron 180 conjuntos de datos sintéticos y reales, lo cuales
incluyen los tipos de separabilidad G1 , G2 , y G3 . Además, el enfoque propuesto se comparó contra
cuatro algoritmos de agrupamiento convencionales: K-means, Single-linkage, WARD y DBSCAN.
Los resultados mostraron que los algoritmos convencionales obtuvieron un buen desempeño de
agrupamiento para un tipo de separabilidad en específico, mientras que CADE fue capaz de resolver
adecuadamente el agrupamiento de todos los tipos de separabilidad. Por otro lado, el selector del
criterio de similitud junto con el índice Sil fueron incorporados en cuatro AAMs del estado del arte:
CDE, ACDE, MEPSO y TGCA. Los AAMs obtuvieron un buen desempeño de agrupamiento en todos los
tipos de separabilidad, aunque en general CADE obtuvo mejores desempeños en términos de calidad
del agrupamiento, número de grupos y velocidad de convergencia. Como prueba de concepto, CADE se
utilizó para la segmentación automática de imágenes de textura, mostrando su capacidad de segmentar
adecuadamente las regiones de textura y estimar el número correcto de regiones.
Los resultados obtenidos sugieren que la adaptación del criterio de similitud en el IVG de acuerdo
al tipo de separabilidad de los datos es una estrategia adecuada para incrementar el desempeño de
agrupamiento de los AAMs. Por tanto, es recomendable continuar los esfuerzos en el diseño de nuevos
IVGs y criterios de similitud considerando estos hallazgos.

xiv
Abstract

Evolutionary clustering with adaptation of the similarity


criterion based on the analysis of distinct types of
separability
by

Adán José García


Cinvestav Tamaulipas
Center for Research and Advanced Studies from the National Polytechnic Institute, 2017
Dr. Wilfrido Gómez Flores, Advisor

The automatic clustering involves both reveling the underlying structure of the patterns in clusters
and simultaneously determining the number of groups. This problem has been addressed by using
metaheuristic clustering algorithms (MCAs), which use as fitness function a cluster validity index
(CVI). CVIs quantify two clustering criteria: intercluster separation and intracluster cohesion, where a
similarity criterion, usually the Euclidean distance, is used to measure the closeness between patterns.
Both clustering criteria are satisfied when the input data is linearly separable, that is, compact and well-
separated clusters can be generated; therefore, the CVI is capable to discriminate between inferior
and superior solutions. However, in the case of nonlinearly separable data, Euclidian distance only
measures the proximity between patterns without considering the degree of connectivity between
them. Consequently, the CVI loses its discriminating capability because both clustering criteria are
unsatisfied simultaneously. In practice, the type of data separability is often unknown; therefore, this
research is concerned with the adaptation of the similarity criterion in the CVI according to the type of
data separability in order to increase the performance of an evolutionary clustering algorithm.
The proposed approach consists of two main components: a similarity criterion selector and
an automatic clustering algorithm based on differential evolution named CADE. Additionally, two
similarity criteria are considered: Euclidean distance and maximum edge distance (MED), which
measure proximity and connectivity, respectively. The Silhouette index (Sil) was chosen to guide the
search for potential clustering solutions in the CADE algorithm. On the other hand, through supervised
learning, the similarity criterion selector was trained to distinguish between linearly separable data
having well-separated clusters (G1 ), linearly separable data having overlapped clusters (G2 ), and
nonlinearly separable data (G3 ) based on their intracluser dispersion properties. Hence, data classified
as G1 and G3 are grouped using MED distance, whereas data classified as G2 are grouped using
Euclidian distance.

xv
In the experiments a total of 180 synthetic and real-life datasets were considered, including the
G1 , G2 , and G3 separability types. The proposed approach was compared against four conventional
clustering algorithms: K-means, Single-linkage, WARD and DBSCAN. The results have shown that
conventional algorithms obtained good clustering performance for a specific type of separability,
whereas CADE was able to adequately solve the clustering for all the separability types. On the other
hand, the similarity criterion selector along with the Sil index were incorporated into four state-of-
the-art MCAs: CDE, ACDE, MEPSO and TGCA. The results revealed that the MCAs obtained adequate
clustering performances for all types of separability, although CADE algorithm performed better in
terms of cluster quality, number of clusters and convergence speed. As proof of concept, the CADE
algorithm was used for the automatic segmentation of texture images, where it demonstrated its ability
to adequately segment texture regions and to estimate the correct number of regions.
The obtained results suggest that the adaptation of the similarity criterion in the CVI according to
the type of data separability is a suitable strategy for increasing the clustering performance of MCAs.
Therefore, considering these findings, it is suggested to continue the efforts on the designing of new
CVIs and similarity criteria.

xvi
Nomenclatura

Acrónimos principales
AAD Agrupamiento Automático de Datos
IVG Índice de Validez de Grupos
MED Distancia de la Arista Máxima
AAM Algoritmo de Agrupamiento Metaheurístico
AG Algoritmo Genético
PE Programación Evolutiva
EEs Estrategias Evolutivas
ED Evolución Diferencial
PSO Optimización por Cúmulo de Partículas
SVM Máquina de Vectores de Soporte

Símbolos y notación
x Es un patrón representado como x = [x1 , x2 , . . . , xD ]T , donde xi 2 R es una característica
y D denota su dimensionalidad.
X Es un conjunto de datos denotado por X = {x1 , x2 , . . . , xN } 2 RD , donde N es el número
total de patrones en el conjunto de datos.
C Es un agrupamiento denotado por C = {ck | k = 1, . . . , K} que divide a X en K grupos.
nk Es el número de patrones en el k-ésimo grupo denotado por nk = |ck |.
P
c̄k Es el centroide del k-ésimo grupo expresado como c̄k = 1
nk xi 2ck xi .
G1 Datos linealmente separables sin traslape.
G2 Datos linealmente separables con traslape.
G3 Datos no linealmente separables.
G4 Datos del mundo real.

1
Introducción
1
1.1 Antecedentes y motivación

U NA de las actividades más primitivas, comunes y básicas del ser humano consiste en
clasificar objetos similares en categorías. En la vida cotidiana, la organización de objetos
en grupos es parte esencial de nuestro proceso de aprendizaje [3]. Esta actividad conceptual
básica también desempeña un papel importante en la mayoría de las ramas de la ciencia.
En Biología, por ejemplo, la clasificación de los organismos es conocida generalmente como
Taxonomía. En Química la clasificación de los elementos de la tabla periódica es otro ejemplo
representativo. En el campo de aprendizaje automático a la tarea de agrupar objetos se le
conoce como aprendizaje no supervisado, análisis de grupos o agrupamiento de datos [4].
En las últimas décadas, el agrupamiento de datos ha desempeñado un papel fundamental en
una amplia variedad de áreas científicas tales como reconocimiento de patrones, minería de
datos, análisis de imágenes, recuperación de información, entre otras [3–6].
El objetivo del agrupamiento de datos es revelar la estructura subyacente de los patrones
en grupos. El agrupamiento se define como: dada una representación de N objetos, encontrar
K grupos a partir de un criterio de similitud, tal que los objetos de un mismo grupo presenten
alta similitud, mientras que objetos de grupos diferentes posean baja similitud. El criterio de
similitud se determina generalmente mediante una función de distancia (i.e., una métrica);
mientras que el criterio de agrupamiento se relaciona con el tipo de grupos que se desean
descubrir (e.g., compactos, arbitrarios, ovalados, etc.) y suele expresarse a través de una
función de costo [4].

3
4 1.1. Antecedentes y motivación

El agrupamiento de datos puede ser complicado debido a varios factores, como la presen-
cia de grupos con forma arbitraria, existencia de grupos traslapados, variaciones aleatorias,
etc. Desde el punto de vista computacional, encontrar la mejor solución de agrupamiento
implica identificar todas las posibles combinaciones de los N patrones en K grupos. Nótese
que realizar esta búsqueda puede ser computacionalmente intratable, incluso para valores
pequeños de N, ya que el número de total de posibles particiones está definido por el número
de Stirling de segundo orden [4]. Por ejemplo, si se desea agrupar 100 puntos en 5 grupos,
se deben explorar aproximadamente 1068 posibles soluciones. Por tanto, el agrupamiento de
datos es un problema combinatorio y se ha demostrado que es NP-completo [7, 8].

Cuando el número de grupos es desconocido, la complejidad del agrupamiento de datos


aumenta al incluir K en el proceso de búsqueda de la solución. Esta problemática es conocida
en la literatura especializada como el agrupamiento automático de datos (AAD) y representa
una de las áreas de investigación más activas y desafiantes en el campo de aprendizaje
automático [1, 7]. Dicho problema involucra encontrar tanto el número de grupos como el
agrupamiento natural de los datos de entrada. Lo anterior ha motivado el uso de diversas
metaheurísticas, donde el problema AAD suele plantearse como uno de optimización. En
particular, el cómputo evolutivo ha sido ampliamente utilizado para abordar el problema AAD
y representa aproximadamente el 80 % de todos los enfoques basados en metaheurísticas [9].
Este uso considerable de los algoritmos evolutivos se debe principalmente a que han sido
utilizados en problemas de optimización con funciones separables, inseparables, unimodales
y multimodales. Además, estos algoritmos han demostrado su eficiencia en la resolución de
problemas de optimización en diferentes dominios del mundo real [10].

Los algoritmos de agrupamiento metaheurísticos (AAMs) que abordan el problema AAD


utilizan como función objetivo un índice de validez de grupos (IVG). Este es responsable de
guiar la búsqueda hacia el descubrimiento de agrupamientos que satisfagan adecuadamente
los criterios de máxima separación intergrupo (grupos aislados) y mínima dispersión
intragrupo (grupos compactos). Para evaluar las soluciones, el IVG considera a ambos criterios
de agrupamiento y utiliza una métrica como criterio de similitud. No obstante, la definición
a priori del criterio de similitud puede originar un desempeño pobre del IVG cuando las
características de los datos de entrada no satisfacen la expectativa del criterio de similitud
preestablecido. Por ejemplo, si el criterio de agrupamiento consiste en descubrir grupos hiper-
esféricos, entonces el IVG evaluará las soluciones bajo el supuesto que los datos de entrada
se aproximan a una distribución normal; sin embargo, cuando no se satisface la condición de
normalidad, la solución final no representará el agrupamiento natural de los datos [11].
1. Introducción 5

1 1 1
(a) (b) (c)

0 0 0
0 1 0 1 0 1

Figura 1.1: Conjuntos de puntos con diferentes tipos de separabilidad: (a) linealmente separables
sin traslape, (b) linealmente separables con traslape y (c) no linealmente separables. Las líneas rojas
señalan los hiperplanos de separación, mientras que las estrellas indican los prototipos de los grupos.

Por tanto, la selección del criterio de similitud en el IVG es un factor importante para
el éxito del AAM. Dado este contexto, este proyecto de investigación abordará el problema
AAD utilizando algoritmos evolutivos, donde la métrica deberá adaptarse de acuerdo con las
características intrínsecas de separabilidad de los datos de entrada.

1.2 Planteamiento del problema


Sea X = {x1 , x2 , . . . , xN } un conjunto con N objetos, donde el i-ésimo elemento es un vector D-
dimensional de atributos denotado como xi = [xi,1 , xi,2 , . . . , xi,D ]T , tal que el j-ésimo atributo
xi,j 2 R. Sea C = {c1 , c2 , . . . , cK } un agrupamiento de los N objetos en K grupos que satisface
las siguientes tres condiciones [4]:

ci 6= ;, i = 1, . . . , K;
c1 [ c2 [ . . . [ cK = X; y
ci \ cj = ;, i, j = 1, . . . , K y i 6= j.

En este sentido, el problema AAD implica determinar tanto el número K de grupos como
el agrupamiento natural C a partir del conjunto de datos X. Este problema puede plantearse
como uno de optimización discreta o continua. En el primer caso, la solución candidata
considera K grupos formados por subconjuntos de X, de modo que cada solución C está
representada por todos los N objetos en X. En el segundo planteamiento, la solución candidata
se compone de K prototipos1 que representan a los K grupos en C. En ambos planteamientos,
para evaluar la calidad de una solución de agrupamiento, se utiliza un IVG como función
1 Un prototipo suele ser un centroide computado como la media aritmética de los atributos de los objetos en un grupo.
6 1.2. Planteamiento del problema

de costo que cuantifica los criterios de separación intergrupo y dispersión intragrupo. Para
estimar la aportación de cada criterio, el IVG considera un esquema de evaluación basado en
la cercanía entre puntos y prototipos o basado en la cercanía entre cada par de puntos en el
conjunto de datos. Dicha cercanía se calcula empleando una métrica (o criterio de similitud),
donde la distancia Euclidiana es la más utilizada. Por tanto, el IVG es un elemento importante
en el diseño del AAM, de modo que si se define de forma inapropiada, puede guiar hacia
soluciones pobres o inaceptables [10].
Por otro lado, los enfoques reportados en la literatura que abordan el problema AAD
comúnmente asumen características específicas de los datos de entrada. En particular, la
separabilidad lineal es una característica importante que debe considerarse cuando se aborda
el problema AAD. De manera general, dos subconjuntos de X, denotados como X1 y X2 en
RD , son linealmente separables si existe un hiperplano H 2 RD tal que todos los elementos de
X1 y aquellos de X2 están en lados opuestos de H [12].
Cuando no se satisface la propiedad de separabilidad lineal, el IVG pierde su capacidad
discriminatoria debido a que el criterio de similitud basado en la distancia Euclidiana
únicamente informa sobre la proximidad que hay entre puntos sin considerar otros aspectos
como la interconectividad entre puntos. Considérese el ejemplo en la Figura 1.1a, que
contiene dos grupos linealmente separables. Además, asúmase que el IVG está basado en
prototipos, de modo que los puntos asociados a cada prototipo crean grupos separados.
Inclusive en el caso de grupos traslapados de la Figura 1.1b, aun es posible formar dos grupos
relativamente bien separados. Nótese que en ambos casos la conectividad intragrupo es alta,
es decir, prácticamente no hay espacios vacíos entre los puntos de un grupo. Sin embargo,
cuando los grupos son no linealmente separables como en el ejemplo de la Figura 1.1c, los
puntos se asocian a su prototipo más cercano generando grupos con baja conectividad.
A pesar de los notables avances en el estado del arte relacionado al problema AAD, aun
los IVGs utilizan criterios de similitud fijos limitando la funcionalidad del AAM únicamente
a conjuntos de datos que satisfacen el criterio preestablecido. Por tanto, es conveniente
diseñar métodos que adapten la métrica en el IVG de acuerdo al tipo de separabilidad de
los patrones observados, donde la interconectividad entre puntos (o nivel de conectividad)
puede considerarse para el caso de datos no linealmente separables.
Derivado de lo expuesto anteriormente, en esta tesis se plantea la siguiente pregunta de
investigación: ¿Es posible mejorar el desempeño del índice de validez de grupos al adaptar el
criterio de similitud en función del tipo de separabilidad de los datos? Por otro lado, la hipótesis
de este trabajo de investigación es la siguiente:
1. Introducción 7

Analizando la separabilidad de los datos de entrada se puede determinar el criterio


de similitud definido en términos de una métrica que describa adecuadamente las
relaciones intergrupo e intragrupo en el IVG antes de ejecutar el algoritmo de
agrupamiento.

Conjunto de
datos (X
X)

Análisis del tipo


Métrica basada de separabilidad
en proximidad

Selector
Algoritmo de
Métrica basada agrupamiento
en conectividad automático

Agrupamiento (C
C)
Figura 1.2: Esquema general del enfoque de agrupamiento propuesto.

1.3 Propuesta de solución


En este proyecto de investigación se propone un método de agrupamiento para abordar
el problema AAD. La Figura 1.2 muestra el diagrama general del método propuesto que
involucra las siguientes etapas principales:

Análisis del tipo de separabilidad los datos de entrada: Se propone utilizar métodos
estadísticos basados en medidas de separación intergrupo y dispersión intragrupo para
estimar el tipo de separabilidad de los datos de entrada, esto es, linealmente separables y
no linealmente separables.

Selección de la métrica: Con base en el análisis de separabilidad, se propone construir


un modelo de clasificación que seleccione el criterio de similitud más adecuado que será
utilizado por el IVG, esto es, decidir por una métrica basada en conectividad o por una
basada en proximidad.

Agrupamiento automático de datos: Se propone desarrollar un algoritmo de agrupamien-


to automático basado en cómputo evolutivo. El IVG utilizará la métrica que fue seleccionada
en la etapa de análisis del tipo de separabilidad.
8 1.4. Objetivos de la tesis

1.4 Objetivos de la tesis


El objetivo general de este trabajo de investigación es el siguiente:

Obtener un método que adapte el criterio de similitud del índice de validez


de grupos en función del tipo de separabilidad de los datos de entrada para
incrementar el desempeño de un algoritmo de agrupamiento evolutivo.

Para lograr el objetivo general se han establecido los siguientes objetivos específicos:

1. Identificar un índice de validez de grupos que proporcione agrupamientos con alta


exactitud y consistencia.

2. Seleccionar una métrica que represente adecuadamente el tipo de separabilidad de los


datos de entrada.

3. Definir un algoritmo de agrupamiento automático basado en cómputo evolutivo que


incorpore la selección automática de la métrica.

1.5 Organización del documento


Además del capítulo introductorio, los capítulos restantes están organizados como sigue. En
el Capítulo 2 se describen los conceptos teóricos y los métodos de evaluación utilizados en
este trabajo de investigación. En el Capítulo 3 se presenta un estudio del estado del arte sobre
diferentes enfoques de agrupamiento automático de datos basados en metaheurísticas. En el
Capítulo 4 se presenta un estudio comparativo de 22 IVGs, donde se considera un algoritmo de
agrupamiento metaheurístico representativo del estado del arte. En el Capítulo 5 se presenta
el método de agrupamiento propuesto que involucra un selector de la métrica (i.e., criterio de
similitud) y un algoritmo de agrupamiento automático denominado CADE. En el Capítulo 6
se presentan los resultados experimentales obtenidos por el enfoque propuesto CADE al
compararse con otros enfoques de la literatura; además, se presentan los resultados de una
prueba de concepto para la segmentación automática de imágenes de textura. Finalmente,
en el Capítulo 7 se presentan las conclusiones, contribuciones y trabajo futuro de esta
investigación.
Marco teórico
2
E STA tesis plantea la adaptación del criterio de similitud en un índice de validez de
grupos (IVG), donde un algoritmo evolutivo se utiliza como técnica de agrupamiento
subyacente. Por consiguiente, en este capítulo se proporcionan los conceptos básicos,
definiciones y técnicas relacionadas con los principales temas de esta investigación, así como
las notaciones adoptadas en los capítulos subsecuentes. El capítulo comienza cubriendo
las definiciones relacionadas a un IVG. Posteriormente, se describen diversas técnicas de
agrupamiento convencionales; asimismo, se presentan algunos algoritmos de agrupamiento
evolutivos que son representativos de la literatura relacionada al problema de agrupamiento
automático de datos (AAD). Por último, se concluye describiendo los casos de prueba, las
índices de desempeño, las pruebas de significación estadística, y la plataforma experimental
utilizada para los experimentos de este trabajo de investigación.

2.1 Notación y componentes básicos


Un patrón (u objeto) es representado por un vector denotado como x = [x1 , x2 , . . . , xD ]T ,
donde xi 2 R es una característica (atributo o propiedad) y D denota su dimensionalidad.

Un conjunto de datos es denotado por X = {x1 , x2 , . . . , xN } 2 RD , donde N es el número total


de patrones en el conjunto de datos.

Un agrupamiento, denotado por C = {ck | k = 1, . . . , K}, es un conjunto de grupos disjuntos


que divide a X en K grupos.

9
10 2.2. Métricas

La cardinalidad (número de patrones) de un grupo ck es denotado por nk = |ck |.


P
El centro de un grupo (o centroide) ck es expresado como c̄k = 1
nk xi 2ck xi , mientras que el
P
centroide del conjunto de datos X es X = N1
xi 2X xi .

Una métrica es una medida de proximidad que denota el criterio de similitud y es usada
para cuantificar la similaridad entre dos patrones.

Un índice de validez de grupos es una función que evalúa la calidad de un agrupamiento


basándose en una medida de proximidad.

Un algoritmo de agrupamiento es un procedimiento no supervisado cuyo objetivo es generar


el agrupamiento natural de los datos a partir de una medida de proximidad y un IVG.

2.2 Métricas
Sea X un conjunto finito de puntos o elementos. Una función d : X ⇥ X ! R es una métrica
si 8x, y 2 X se satisfacen las siguientes condiciones:

1. Positividad: d(x, y) > 0.


2. Identidad de los indiscernibles: d(x, y) = 0 , x = y.
3. Simetría: d(x, y) = d(y, x).
4. Desigualdad triangular: d(x, z) 6 d(x, y) + d(y, z), 8z 2 X.

A continuación se enuncian algunas de las métricas más comunes en la literatura


relacionada con el problema AAD.

2.2.1 Métrica de Minkowski


La métrica de Minkowski o norma lp es la generalización de una familia de métricas, donde
la distancia entre dos puntos x e y en un espacio D-dimensional, se define como:

D
! p1
X p
d(x, y) = |xl - yl | . (2.1)
l=1

Algunos casos particulares para valores de p concretos son:

Distancia d1 o distancia city-block (p = 1):


2. Marco teórico 11

D
X
d1 (x, y) = |xl - yl | . (2.2)
l=1

Distancia Euclidiana (p = 2):

D
! 12
X
de (x, y) = |xl - yl |2 . (2.3)
l=1

Distancia de Chebychev o distancia del máximo (p = 1):

d1 (x, y) = maxl=1,...,D |xl - yl | . (2.4)


La distancia Euclidiana es quizá la más conocida y utilizada en la práctica. No obstante,
se ha demostrado que la distancia Euclidiana tiende a formar grupos hiper-esféricos [4]. Una
alternativa para formar grupos con formas arbitrarias es utilizar otras métricas basadas en la
interconectividad de los datos en vez de la proximidad entre ellos.

2.2.2 Métrica MED


Recientemente, Baya y Granitto [13] propusieron la distancia de la arista máxima (MED, por
siglas en Inglés) para medir el grado de interconectividad entre los datos, la cual está basada
en un árbol recubridor mínimo (MST, por sus siglas en Inglés). Los autores incorporaron
la distancia MED en un criterio de dispersión intragrupo para encontrar grupos con formas
arbitrarias.
En primer lugar, se construye un grafo completo G (V, E) a partir de los patrones en el
conjunto de datos de entrada X = {x1 , x2 , . . . , xN }, donde el i-ésimo vértice vi 2 V corresponde
al i-ésimo patrón xi 2 X y la arista eij 2 E denota la distancia Euclidiana entre dos vértices
(i.e., eij = de (xi , xj )). Posteriormente, se construye un MST(V, Et ) a partir de G (V, E), donde
Et ⇢ E tal que |Et | = N - 1. Finalmente, la distancia MED entre un par de patrones xi y xj se
calcula como [13]

dmed (vi , vj ) = Etp 2 Pij max etp , (2.5)

donde Pij = MST0 Vp , Etp es un subgrafo del MST y representa el camino entre los vértices
vi y vj , donde Vp ⇢ V y Etp ⇢ Et . Por tanto, la distancia MED representa a la arista con mayor
longitud en el camino Pij . Además, esta distancia se considera una métrica debido a que
satisface todas las condiciones de una función de distancia.
12 2.3. Índices de validez de grupos

Es importante señalar que si cada arista eij 2 E tiene un valor de distancia Euclidiana
distinto entonces existirá un único MST(V, Et ). Además, si se considera que las características
de un patrón son variables aleatorias [4], entonces es muy probable que cada patrón xi 2 X
tenga una posición única en el espacio de características, de modo que se producirá un único
MST para el conjunto de datos.

2.3 Índices de validez de grupos


Un índice de validez de grupos (IVG) es una función que evalúa la calidad de un agrupamiento
a partir de la relación de dos criterios denominados separación intergrupo, que debe ser
maximizada, y dispersión intragrupo, que debe ser minimizada. El objetivo de un IVG consiste
en estimar el número de grupos y determinar el agrupamiento que mejor satisfaga a ambos
criterios. Esta propiedad del IVG ha permitido abordar el problema AAD utilizando algoritmos
metaheurísticos, donde un IVG se desempeña como una función objetivo.
Por otro lado, un aspecto importante es la complejidad computacional de los IVGs. Conocer
el grado de complejidad de un IVG permite medir la cantidad de recursos computacionales
(número de pasos base de ejecución) necesarios para calcular la aptitud de una solución de
agrupamiento independientemente del lenguaje de programación, hardware y habilidades del
programador. En este sentido, la Tabla 2.1 presenta la complejidad computacional respecto al
tiempo de ejecución de los IVGs estudiados en el Capítulo 4, donde cada uno tiene asignado
un acrónimo y una flecha que indica si debe maximizarse (") o minimizarse (#). Considere
que los IVGs pueden computarse usando todos los N puntos en el conjunto de datos o
usando K centroides derivados del conjunto de datos, lo cual se relaciona con el número
de veces que se requiere computar la función de distancia. También, la Tabla 2.1 presenta
la complejidad del cálculo de la dispersión intragrupo y separación intergrupo, así como la
referencia bibliográfica del IVG. Por otro lado, por cuestiones de brevedad, la formulación
matemática de cada uno de los 22 IVGs estudiados se describe en el Apéndice A.

2.4 Algoritmos de agrupamiento convencionales


A grandes rasgos se pueden distinguir tres técnicas de agrupamiento convencionales basadas
en diferentes modelos: particionales, jerárquicos y basados en densidad. A continuación, se
describen algunos algoritmos de agrupamiento representativos, los cuales están inspirados en
diferentes técnicas de agrupamiento.
2. Marco teórico 13

Tabla 2.1: Complejidad computacional de los 22 IVGs estudiados, donde N es el número de


patrones en
P
X, D denota la dimensionalidad, K representa el número de grupos de una solución
C y nw = ck 2C n2k denota el número de pares de objetos que están en un mismo grupo. Los IVGs
están ordenados de menor a mayor complejidad computacional.

Notación Intragrupo Intergrupo Complejidad Ref.


CH" O(ND) O(KD) O(ND) [14]
XB# O(ND) O(K2 D) O(ND) [15]
gD43" O(ND) O(K2 D) O(ND) [16]
SF" O(ND) O(KD) O(ND) [17]
PBM" O(ND) O(K2 D) O(ND) [18]
DB# O(KND) O(K2 D) O(KND) [19]
mDB# O(KND) O(K2 D) O(KND) [20]
gD53" O(ND) O(KND) O(KND) [16]
SV" O(KND) O(K2 D) O(KND) [21]
DI" O(N2 D) O(N2 D) O(N2 D) [22]
Sil" O(N2 D) O(N2 D) O(N2 D) [23]
gD31" O(N2 D) O(N2 D) O(N2 D) [16]
gD41" O(N2 D) O(K2 D) O(N2 D) [16]
gD51" O(N2 D) O(KND) O(N2 D) [16]
gD33" O(ND) O(N2 D) O(N2 D) [16]
SDbw# O(ND) O(K2 ND) O(N2 D) [24]
CS# O(N2 D) O(K2 D) O(N2 D) [25]
COP# O(ND) O(N2 D) O(N2 D) [26]
SDB# O(N2 KD) O(K2 D) O(KN2 D) [27]
Sym" O(N2 KD) O(K2 D) O(KN2 D) [18]
SDI" O(N2 KD) O(N2 D) O(KN2 D) [27]
CI# O(N2 D) O(nw N2 D) O(nw N2 D) [28]

2.4.1 Algoritmo K-means


El algoritmo K-means es un método de agrupamiento particional o de reasignación, el cual
divide el conjunto de datos en un número predefinido de grupos sin considerar su estructura
jerárquica. La asignación de los patrones a los grupos se realiza mediante la optimización
de un criterio de agrupamiento basado en la dispersión intragrupo. El algoritmo K-means
busca iterativamente la mejor partición de los datos minimizando la suma del error cuadrático
mediante los siguientes pasos [29, 30]:

Paso 1: Inicializar aleatoriamente una partición con K grupos mediante una matriz de
prototipos M = [m1 , . . . , mK ], donde mi 2 RD .
14 2.4. Algoritmos de agrupamiento convencionales

Paso 2: Asignar cada objeto del conjunto de datos al prototipo más cercano ck , i.e.,

xi 2 ck , si de (xi , mk ) < de (xi , mr ), 8 i = 1, . . . , N, k 6= r, y k = 1, . . . , K.

Paso 3: Recalcular la matriz de prototipos utilizando la partición actual.

Paso 4: Repetir los pasos 2 y 3 hasta que no cambien los prototipos.

2.4.2 Métodos Single-linkage y WARD


Los métodos jerárquicos tienen por objetivo formar nuevos grupos o separar grupos
existentes mediante la optimización de alguna función de costo. Estos métodos se dividen en
aglomerativos y disociativos. Los aglomerativos comienzan el análisis con tantos grupos como
objetos existan en el conjunto de datos. Después se forman grupos de forma ascendente,
de modo que al final del proceso todos los objetos están englobados en un mismo
conglomerado. Los métodos disociativos realizan el proceso inverso, es decir, comienzan con
un conglomerado que engloba a todos los objetos. Después se van formando grupos más
pequeños a través de divisiones sucesivas, de modo que al final del proceso se tienen tantas
agrupaciones como objetos existentes en el conjunto de datos. Debido a su simplicidad y
menor número operaciones, los métodos de agrupamiento aglomerativos son más utilizados.
A continuación se resume de manera general el funcionamiento del método aglomerativo [4]:

Paso 1: Representar cada objeto xi 2 X como un grupo para formar el agrupamiento inicial:
R0 = {ci = {xi }, i = 1, . . . , N}. Además, fijar el valor inicial del nivel de jerarquía como t = 0.

Paso 2: Buscar el par de grupos (ci , cj ) entre todos los pares de grupos posibles (cr , cs ) en
Rt , tal que se cumpla

d(ci , cj ) = minr,s d(cr , cs ), (2.6)

donde d(·, ·) representa un criterio de agrupamiento mediante una función de distancia.

Paso 3: Fusionar los grupos ci y cj para formar cq = ci [ cj y producir el nuevo agrupamiento


Rt+1 = (Rt - {ci , cj }) [ {cq }. Además, hacer t = t + 1.

Paso 4: Repetir los pasos 2 y 3 hasta que sólo permanezca un grupo.


2. Marco teórico 15

La fusión de un par de grupos o la formación de un nuevo grupo depende de la definición


de la función de distancia en (2.6). Existen diversos criterios para formar los conglomerados,
donde el método Single-linkage y el método WARD son los más destacados:

Single-linkage: La distancia entre un par de grupos, ci y cj , se determina por los dos objetos
más cercanos en cada grupo. Por tanto, la distancia entre el nuevo grupo generado, cq , y el
anterior, cs , depende de la distancia mínima entre ambos grupos como:

d(cq , cs ) = min {d(ci , cs ), d(cj , cs )} . (2.7)

WARD: La distancia entre un par de grupos, ci y cj , se determina por la cercanía de sus


prototipos. El criterio de agrupamiento para fusionar dos grupos se basa en la siguiente
distancia entre pares grupos:

ni + ns nj + ns ns
d(cq , cs ) = d(ci , cs ) + d(cj , cs ) - d(ci , cj ) (2.8)
ni + nj + ns ni + nj + ns (ni + nj )2

donde ni , nj y ns denotan el número de patrones en ci , cj y cs , respectivamente.

2.4.3 Algoritmo DBSCAN


El algoritmo DBSCAN está basado en densidad y tiene la ventaja de generar grupos con forma
arbitraria. Considere que VEps (x) denota una región densa alrededor de un punto x, cuyo
radio del grupo Eps es un parámetro del algoritmo. Además, considere que la variable MinPts
denota el número mínimo de puntos que debe contener la región VEps . Entonces, el algoritmo
DBSCAN clasifica los objetos como puntos núcleo, puntos densamente alcanzables y ruido de
la siguiente forma [31]:

Un punto x es un punto núcleo si al menos MinPts puntos están a una distancia Eps, donde
estos puntos son directamente alcanzables desde x, de modo que no es posible tener puntos
directamente alcanzables desde un punto que no sea un núcleo.

Un punto y es densamente alcanzable desde x si existe una secuencia de puntos x1 , . . . , xp 2


X, donde x1 = x y xp = y, tal que cada punto xi+1 es directamente alcanzable desde xi , es
decir, si satisface que xi 2 VEps y |VEps | > MinPts.

Un punto que no sea alcanzable desde cualquier otro punto es considerado ruido.
16 2.5. Algoritmos de agrupamiento metaheurísticos

Además, DBSCAN utiliza el siguiente criterio de conectividad basado densidad: dos puntos
x e y están conectados densamente si existe un punto z tal que x e y son directamente
alcanzables desde z. Por tanto, un grupo c satisface dos propiedades:
Si y es densamente alcanzable desde cualquier otro punto x que pertenece a c, entonces y
también forma parte de c.
Cada par de puntos (x, y) 2 c están densamente conectados entre sí.

2.5 Algoritmos de agrupamiento metaheurísticos


En esta sección se describen algunos algoritmos de agrupamiento relevantes del estado del
arte, los cuales están basados en diversas metaheurísticas.

2.5.1 Algoritmo TGCA


He y Tan [32] propusieron un algoritmo de agrupamiento genético denominado TGCA (ver la
descripción del algoritmo genético en el Apéndice B), en el cual cada individuo de la población
está sujeto a las siguientes tres condiciones:

Selección basada en dos etapas: La probabilidad de selección del i-ésimo individuo en la


población se calcula de la siguiente forma:
8
> f ↵ (z i )
< PNP kcon < 1 (1ra. etapa)
↵ f (z j )
Ps (i) = j=1
, (2.9)
> f(zi )
: PNP kcon = 1 (2da. etapa)
j=1 f(zj )

donde kcon 2 (0, 1] denota la consistencia del número de grupos en la población y se calcula
nsk
como kcon = , donde nsk indica el número máximo de individuos con el mismo número
NP
de grupos en la población actual de tamaño NP. Además, ↵ = e-kcon denota el factor de
selección dinámico, donde e-1 < ↵ < 1.
En la primera etapa, kcon < 1, la búsqueda se enfoca en encontrar el número de grupos más
apropiado, donde el número de grupos con mejor valor de aptitud tiene mayor probabilidad
de ser seleccionado. En la segunda etapa, kcon = 1, cuando todos los individuos en la
población tienen el mismo número de grupos, TGCA se enfoca en la refinación de los
centroides bajo el supuesto de que el número de grupos se ha estimado correctamente.
Por tanto, el individuo con el mejor valor de aptitud tiene mayor probabilidad de selección.
En ambas etapas se adopta la selección proporcional por ruleta y la estrategia de elitismo.
2. Marco teórico 17

Cruza paralela basada en subpoblaciones: La operación de recombinación se realiza


entre individuos que comparten el mismo número de grupos (subpoblaciones); en
particular, se utiliza cruza de un punto con una probabilidad de cruza fija (Pc ).

Mutación basada en dos etapas: El operador de mutación emplea una probabilidad de


mutación variable, donde la probabilidad del i-ésimo individuo se calcula como:
8
>
<0.1(1 - kcon ) 0 < kcon 6 0.9 (1ra. etapa)
Pm (i) = f(z )
- PNP i
. (2.10)
>
:e j=1 f(zj ) 0.9 < kcon 6 1 (2da. etapa)

En la primera etapa, TGCA se enfoca principalmente en la búsqueda del número de grupos


más apropiado; posteriormente, la búsqueda se centra en encontrar los prototipos que
mejor satisfagan a la función objetivo. Además, Pm (i) disminuye conforme la aptitud del
individuo se incrementa. Para el i-ésimo individuo, una mutación bidireccional es aplicada
como: sea zi,j (j = 1, . . . , Li ) el valor del j-ésimo bit de zi y sea z0i,j el nuevo valor de zi,j
después de la mutación, entonces con una probabilidad de mutación Pm (i) el nuevo valor
se calcula como:

8
<zi,j + Ti,j (zup - zi,j ) Ti,j > 0
j
z0i,j = , (2.11)
:z low
i,j + Ti,j (zi,j - zj ) Ti,j < 0

donde zup
j y zj
low
son valores máximos y mínimos del j-ésimo bit de zi , respectivamente.
Además, el factor de mutación de zi,j es Ti,j , cuyo valor es un número aleatorio tomado de
una distribución uniforme en el intervalo [-1, 1].

El algoritmo TGCA se resume a continuación:


Paso 1. Generar una población inicial, P0 = {z0i | i = 1, . . . , NP}, donde cada individuo
se compone de ki centroides. Para generar los ki centroides del individuo zi 2 P0 se
debe dividir el rango del atributo con mayor magnitud en ki segmentos, entonces en cada
segmento se genera un centroide.

Paso 2. Evaluación de los individuos:


a) Obtener nuevos centros de grupos usando el algoritmo K-means.
b) Obtener las etiquetas de los grupos y calcular la aptitud de la solución con un IVG.
c) Mantener los mejores individuos para la siguiente generación.
18 2.5. Algoritmos de agrupamiento metaheurísticos

Paso 3. Generación de nuevos individuos usando los operadores genéticos. Cada individuo
está sujeto a las siguientes condiciones:
a) Selección basada en dos etapas con probabilidad Ps (i).
b) Cruza paralela basada en subpoblaciones.
c) Mutación basada en dos etapas con probabilidad Pm (i).

Paso 4. Criterio de terminación: si el número de iteraciones excede el número máximo


permitido, entonces detener el proceso evolutivo y reportar la mejor solución encontrada;
en caso contrario, ir al Paso 2 para iterar nuevamente.

2.5.2 Algoritmo ACDE


Das et al. [1] propusieron un algoritmo de agrupamiento denominado ACDE: Automatic
Clustering Using an Improved Differential Evolution Algorithm. La variante de evolución
diferencial (ED) utilizada por ACDE es DE/rand/1/bin (ver la descripción del algoritmo ED
en el Apéndice B). Para mejorar la convergencia del algoritmo, los autores propusieron
modificar el factor de escalamiento de mutación (F) y la tasa de recombinación (Cr). En
cada generación, el parámetro F se genera aleatoriamente en el rango [0.5, 1] con la siguiente
relación:

F = 0.5 · (1 + rand(0, 1)), (2.12)

donde rand(0, 1) es un número aleatorio tomado de una distribución uniforme en el intervalo


[0, 1]. Esta estrategia permite variaciones estocásticas del vector zgi - zgj , lo cual ayuda a
mantener la diversidad de la población conforme la búsqueda progresa. Por otro lado, el
parámetro Cr decrece linealmente de 1.0 a 0.5 como:

g
Cr = 1 - 0.5 · , (2.13)
Gmax
donde g es la generación actual y Gmax es el número máximo de generaciones. Este
procedimiento ayuda a explorar el espacio de búsqueda al principio y ajustar finamente los
movimientos de las soluciones durante las etapas finales de la búsqueda.
En ACDE todos los individuos en la población codifican un número máximo de centroides,
Kmax . Por tanto, todos los individuos conservan la misma longitud durante todo el proceso de
optimización, es decir, de orden Kmax + D ⇥ Kmax . Las primeras Kmax posiciones son números
reales en el rango [0, 1] que representan umbrales de activación, T = {Tk | k = 1, . . . , Kmáx }.
2. Marco teórico 19

Las Kmáx ⇥ D posiciones restantes corresponden a los centroides de los grupos, C̄ =


{c̄k | k = 1, . . . , Kmáx }, donde c̄k 2 RD . Entonces, un individuo es representado como z =
[T1 , . . . , TKmáx , c̄1 , . . . , c̄Kmáx ]. Para determinar si un centroide c̄k participará (1) o no (0) en el
proceso de agrupamiento se considera la siguiente regla de activación:
8
<activar c̄k si Tk > 0.5
. (2.14)
:desactivar c̄ en otro caso
k

Por otro lado, debe considerarse que después de aplicar los operadores de variación
(mutación y cruza), el vector de prueba puede ser una solución inválida. Los siguientes
casos están en función de una representación de longitud fija basada en centroides (ver
Sección 3.1.1):

Mínimo número de grupos: Cuando se aplica la regla de activación de centroides,


puede generarse un único grupo o ninguno. Entonces, se seleccionan aleatoriamente dos
posiciones en el conjunto T y sus valores se reinicializan aleatoriamente en el rango
(0.5, 1.0]. Por tanto, el número mínimo de grupos es dos.

Grupos vacíos: Un grupo se considera vacío si posee menos de tres elementos y pueden
existir varios grupos vacíos al mismo tiempo. Entonces, para cada grupo vacío, se toma
el grupo con mayor número de puntos, se divide en dos partes iguales y se recalculan los
centroides de ambos grupos. Esto se realiza hasta que no existan grupos vacíos.

Valores fuera de rango: En el caso de los umbrales de activación en el conjunto T, si


un valor Tk viola el límite inferior (0) o superior (1) se le asigna el valor de su cota más
cercana. En relación a los centroides en el conjunto C, si el valor de alguna variable de
algún centroide excede los límites del conjunto de datos, entonces se aplica la estrategia
bounce-back, la cual genera un valor aleatorio entre la variable del vector padre y el límite
excedido [33].

El algoritmo ACDE se describe a continuación:

Paso 1: Generar una población inicial aleatoria: P0 = {z0i | i = 1, . . . , NP}, donde cada
individuo se compone de umbrales de activación y centroides.

Paso 2: Para cada generación g:

(i) Aplicar los operadores evolutivos a cada individuo zi 2 Pg para generar un vector
mutante vi usando (B.1) y después generar un vector de prueba ui con (B.2).
20 2.5. Algoritmos de agrupamiento metaheurísticos

(ii) Validar cada vector de prueba ui y corregir soluciones de agrupamiento inválidas.

(iii) Para cada ui , aplicar la regla de activación definida en (2.14) y obtener el número Ki
de centroides activos Ci . Entonces, obtener la solución de agrupamiento o etiquetas
de grupos, Ci , al asignar cada patrón xp al centroide activo más cercano, c̄j 2 Ci , tal
que
de (xp , c̄j ) = mı́n {d(xp , c̄j )}. (2.15)
c̄j 2Ci

(iv) Evaluar los agrupamientos de los individuos zi y ui con la función objetivo definida
en términos de un IVG. Basándose en (B.3), si el vector de prueba ugi obtiene una
mejor aptitud que zgi , entonces reemplazar a este último por el vector de prueba.

Paso 3: Reportar la solución de agrupamiento final obtenida por el mejor individuo, esto
es, aquél con el mejor valor de aptitud en la generación g = Gmax .

2.5.3 Algoritmo MEPSO


Das et al. [34, 35] propusieron un algoritmo denominado MEPSO (ver la descripción del
algoritmo PSO en el Apéndice B), en el cual, además de los componentes básicos de una
partícula, se considera una tasa de crecimiento para cada partícula en el cúmulo. Para la
i-ésima partícula, su contador i se incrementa cada vez que su aptitud mejora con respecto
a la iteración anterior. Después de actualizar los vectores de mejores personales en el cúmulo,
MEPSO mueve a una zona candidata aquellos mejores personales cuyos valores de aptitud
sean mejores que la aptitud del mejor global. Posteriormente, el algoritmo asigna al mejor
global la posición en la zona candidata que tenga el valor mayor de . Los autores sugieren
que este concepto de elitismo previne que el algoritmo PSO converja de manera prematura.
El algoritmo MEPSO se describe a continuación:

Paso 1: Generar cúmulo de partículas inicial aleatorio: P0 = {z0i | i = 1, . . . , NP}, donde cada
partícula se compone de umbrales de activación y centroides (similar a ACDE). Además,
inicializar las velocidades iniciales del cúmulo V0 = {v0i | i = 1, . . . , NP}.

Paso 2: Para cada iteración t:

(i) Validar cada partícula zti para evitar soluciones de agrupamiento inválidas, de acuerdo
a los tres casos definidos en el algoritmo ACDE.
2. Marco teórico 21

(ii) Para cada zti , aplicar la regla de activación definida en (2.14) y obtener el número Ki
de centroides activos Ci . Entonces, obtener la solución de agrupamiento o etiquetas
de grupos, Ci , al asignar cada patrón xp al centroide más cercano, c̄j 2 Ci , tal que

de (xp , c̄j ) = minc̄j 2Ci {d(xp , c̄j )}. (2.16)

(iii) Para cada zti , evaluar el agrupamiento Ci con la función objetivo definida en términos
de un IVG.
(iv) Para cada partícula zti : actualizar su mejor posición personal, actualizar su tasa de
crecimiento i , y actualizar la posición del mejor global.
(v) Actualizar la velocidad de cada partícula vti usando (B.4).
(vi) Actualizar la posición de cada partícula zti usando (B.5).

Paso 3: Reportar la solución de agrupamiento final obtenida por la mejor partícula, esto es,
aquella con el mejor valor de aptitud en la iteración t = Tmax .

2.6 Evaluación del desempeño de agrupamiento


En esta sección se presentan los métodos de evaluación utilizados durante el desarrollo
de esta investigación. En primer lugar, la Sección 2.6.1 describe los conjuntos de prueba
considerados para evaluar el enfoque propuesto. La Sección 2.6.2 define los índices de
desempeño utilizados. Las pruebas para el análisis de significación estadística se describen
en la Sección 2.6.3. Por último, en la Sección 2.6.4, se resumen las principales características
de la plataforma experimental utilizada en este proyecto.

2.6.1 Conjuntos de datos de prueba


Definir el número correcto de grupos puede ser ambiguo desde el punto de vista del
observador, con interpretaciones que dependen de factores como la forma y distribución de
los puntos en el conjunto de datos. Sin embargo, para probar la validez de las técnicas de
agrupamiento es necesario conocer el número correcto de grupos, lo cual representa una
referencia para evaluar el desempeño de agrupamiento. Debido a esto, en la literatura se
suelen utilizar conjuntos de datos sintéticos donde el número de grupos es definido a priori,
estableciendo de esta manera una referencia, es decir, el número de grupos que un algoritmo
de agrupamiento debería encontrar. Además, una ventaja que ofrecen los datos sintéticos es
22 2.6. Evaluación del desempeño de agrupamiento

Tabla 2.2: Conjuntos de datos sintéticos tomados de la literatura para los diferentes experimentos.

Categoría Nombre Instancias (N) Dimensiones (D) Grupos (K⇤ ) Estructura Ref.

Orange 400 2 2 Fig. 2.1(a) [9]


Data_4_3 400 3 4 Fig. 2.1(b) [36]
Data_6_2 300 2 6 Fig. 2.1(c) [36]
Hepta 212 3 7 Fig. 2.1(d) [37]
G1
WingNut 1016 2 2 Fig. 2.1(e) [37]
Lsun 400 2 3 Fig. 2.1(f) [37]
Figures 600 2 3 Fig. 2.1(g) [9]
Twenty 1000 2 20 Fig. 2.1(h) [36]
Overlapping 600 2 3 Fig. 2.1(i) [9]
TwoDiamonds 800 2 2 Fig. 2.1(j) [37]
Tetra 400 3 4 Fig. 2.1(k) [37]
Square1 1000 2 4 Fig. 2.1(l) [8]
G2
Size5 1000 2 4 Fig. 2.1(m) [8]
Data_10_2 500 2 10 Fig. 2.1(n) [36]
Data_5_2 250 2 5 Fig. 2.1(o) [36]
Data_9_2 900 2 9 Fig. 2.1(p) [27]
Moon 600 2 2 Fig. 2.1(q) [9]
Inside 600 2 2 Fig. 2.1(r) [35]
Arcs 600 2 2 Fig. 2.1(s) [9]
Part1 557 2 3 Fig. 2.1(t) [38]
G3
Part2 417 2 2 Fig. 2.1(u) [38]
Chainlink 1000 3 2 Fig. 2.1(v) [37]
Atom 800 3 2 Fig. 2.1(w) [37]
Spirals 1000 2 2 Fig. 2.1(x) [8]

la posibilidad de variar las características de los grupos, por ejemplo, formas, distribución,
tipo de separabilidad, densidad, dimensionalidad, etc. También, para medir el desempeño de
agrupamiento se suelen utilizar datos reales en los cuales se conocen sus etiquetas de clases,
que equivalen al número correcto de grupos.
Los conjuntos de datos de prueba utilizados en esta tesis fueron divididos en cuatro
categorías: linealmente separables sin traslape (G1 ), linealmente separables con traslape (G2 ),
no linealmente separables (G3 ) y conjuntos de datos reales (G4 ). En total se consideraron 180
conjuntos de datos de prueba en las diversas etapas de este proyecto de investigación, los
cuales se encuentran normalizados en el rango [0, 1] mediante la técnica de normalización
min-max [39]. Los conjuntos de datos provienen de tres fuentes diferentes:

Datos sintéticos propuestos en la literatura: Se recopilaron 24 conjuntos de datos, sus


respectivas características se presentan en la Tabla 2.2, mientras que la estructura de los
grupos se muestran en la Figura 2.1.
2. Marco teórico 23

Datos sintéticos propuestos para este proyecto: Se generaron 150 conjuntos de datos
bidimensionales con diferentes características de separabilidad lineal. La Tabla 2.3 presenta
las características de los conjuntos de datos. Además, la Figura 2.2 muestra las estructuras
de los grupos de los conjuntos de datos propuestos en esta investigación. Los grupos de
las categorías G1 y G2 fueron generados tomando muestras aleatorias a partir de una
distribución normal con una matriz de covarianza diagonal con varianzas unitarias. Por
otro lado, los grupos con formas arbitrarias de la categoría G3 fueron generados a partir de
modelos geométricos sobre los cuales se distribuyeron aleatoriamente muestras tomadas
de una distribución uniforme.

Datos reales propuestos en la literatura: Los conjuntos de datos derivados de


aplicaciones reales fueron tomados del repositorio UCI [40] y se listan en la Tabla 2.4. Los
conjuntos de datos no tienen valores faltantes y todos los atributos son valores numéricos.

Tabla 2.3: Conjuntos de datos sintéticos propuestos para los experimentos del Capítulo 5. El símbolo
“#” denota el número de conjunto de datos creados para cada caso.

Categoría Colección # Instancias (N) Dimensiones (D) Grupos (K⇤ ) Estructura

LSD2C2 10 400 2 2 Fig. 2.2(a)


LSD2C4 10 800 2 4 Fig. 2.2(b)
G1 LSD2C6 10 1200 2 6 Fig. 2.2(c)
LSD2C8 10 1600 2 8 Fig. 2.2(d)
LSD2C10 10 2000 2 10 Fig. 2.2(e)
LSOD2C2 10 400 2 2 Fig. 2.2(f)
LSOD2C4 10 800 2 4 Fig. 2.2(g)
G2 LSOD2C6 10 1200 2 6 Fig. 2.2(h)
LSOD2C8 10 1600 2 8 Fig. 2.2(i)
LSOD2C10 10 2000 2 10 Fig. 2.2(j)
NLSD2C2 10 600 2 2 Fig. 2.2(k)
NLSD2C4 10 1000 2 3 Fig. 2.2(l)
G3 NLSD2C6 10 1600 2 3 Fig. 2.2(m)
NLSD2C8 10 1600 2 4 Fig. 2.2(n)
NLSD2C10 10 1600 2 4 Fig. 2.2(o)

2.6.2 Índices de desempeño


El problema AAD involucra encontrar tanto el número de grupos como el agrupamiento
natural de un conjunto de datos de entrada. Por consiguiente, los agrupamientos obtenidos
son evaluados con los siguientes índices: el índice Rand ajustado (ARI, por sus siglas en
24 2.6. Evaluación del desempeño de agrupamiento

1
(a) (b) 1
(c) (d) 1
1 1 (e)

0.5 0.5
0.5 0.5 0.5

0 0
1 1
1 1
0 0.5 0 0.5 0
0.5 0.5
0 0.5 1 0 0 0 0.5 1 0 0 0 0.5 1

1 1 1 1 1
(f) (g) (h) (i) (j)

0.5 0.5 0.5 0.5 0.5

0 0 0 0 0
0 0.5 1 0 0.5 1 0 0.5 1 0 0.5 1 0 0.5 1

1 1 1 1
(k) (m) (n)
1 (l) (o)

0.5
0.5 0.5 0.5 0.5

0
1
1
0.5 0 0 0 0
0.5
0 0 0 0.5 1 0 0.5 1 0 0.5 1 0 0.5 1

1 1 1 1 1
(p) (q) (r) (s) (t)

0.5 0.5 0.5 0.5 0.5

0 0 0 0 0
0 0.5 1 0 0.5 1 0 0.5 1 0 0.5 1 0 0.5 1

1 (v) (w) 1
(x)
(u) 1 1

0.5 0.5
0.5 0.5

0 0
1 1
1 1
0 0.5 0.5 0
0.5 0.5
0 0.5 1 0 0 0 0 0 0.5 1

Figura 2.1: Estructura y etiquetado ideal de los conjuntos de datos sintéticos tomados de la
literatura. Los conjuntos de datos en (a)–(h) pertenecen a G1 , los datos en (i)–(p) pertenecen a
G2 y los conjuntos de datos en (q)–(x) pertenecen a G3 .

Inglés) [41], para medir la calidad del agrupamiento resultante, y el error de distancia
normalizado (NED, por sus siglas en Inglés) [42], para cuantificar la aproximación del número
de grupos estimado por el algoritmo de agrupamiento al número de correcto grupos.
2. Marco teórico 25

1 1 1 1 1
(a) (b) (c) (d) (e)

0.5 0.5 0.5 0.5 0.5

0 0 0 0 0
0 0.5 1 0 0.5 1 0 0.5 1 0 0.5 1 0 0.5 1

1 1 1 1 1
(f) (g) (h) (i) (j)

0.5 0.5 0.5 0.5 0.5

0 0 0 0 0
0 0.5 1 0 0.5 1 0 0.5 1 0 0.5 1 0 0.5 1

1 1 1 1 1
(k) (l) (m) (n) (o)

0.5 0.5 0.5 0.5 0.5

0 0 0 0 0
0 0.5 1 0 0.5 1 0 0.5 1 0 0.5 1 0 0.5 1

Figura 2.2: Estructura y etiquetado ideal de los conjuntos de datos sintéticos propuestos en esta
investigación. Los conjuntos de datos en (a)–(e) pertenecen a G1 , los datos en (f)–(j) pertenecen a
G2 y los conjuntos de datos en (k)–(o) pertenecen a G3 .

Tabla 2.4: Conjuntos de datos reales considerados para los diferentes experimentos.
Categoría Nombre Instancias (N) Dimensiones (D) Grupos (K⇤ ) Ref.

Iris 150 4 3 [40]


Wine 178 13 3 [40]
Breast CW 679 9 2 [40]
G4
Glass 214 9 2 [40]
Ecoli 336 7 8 [40]
Newthyroid 215 5 3 [40]

Índice rand ajustado (ARI)


El índice ARI mide la similaridad entre el agrupamiento referencia R y el agrupamiento
obtenido C a partir de las siguientes relaciones de similitud entre pares de objetos:
a es el número de pares que están en el mismo grupo en R y en C,
b es el número de pares que están en el mismo grupo en R y en distintos grupos en C,
c es el número de pares que están en diferentes grupos en R y en el mismo grupo en C,
d es el número de pares que están en diferentes grupos en R y en C.
26 2.6. Evaluación del desempeño de agrupamiento

Entonces, dadas estas relaciones de similitud, el índice ARI se calcula como [43]:

2 (ad - bc)
ARI (R, C) = , (2.17)
(a + b) (b + d) + (a + c) (c + d)
el cual regresa un valor real en el intervalo [0, 1], donde la unidad indica concordancia perfec-
ta, mientras que un valor cercano a cero indica baja correspondencia entre agrupamientos.

Error absoluto normalizado (NAE)


El índice NAE mide la aproximación entre el número correcto de grupos K⇤ y el número de
grupos estimado K. El valor NAE se calcula como [42]:

K⇤ - K
NAE(K⇤ , K) = , (2.18)
Kmáx - Kmı́n
donde Kmáx y Kmı́n representan el número máximo y mínimo de grupos permitido,
respectivamente. NAE regresa un valor en el intervalo [0, 1], donde un valor cercano a cero
indica buena aproximación entre K⇤ y K, mientras que la unidad indica baja correspondencia.
Otra alternativa es calcular el porcentaje de éxito basándose en el número de veces que
se obtuvo correctamente el número correcto de grupos K⇤ (i.e., K⇤ = K). La tasa de éxito
normalizada (NSR, por sus siglas en Inglés) se calcula como [32]:

nK
NSR = , (2.19)
nexps
donde nK denota el número de veces que el algoritmo obtuvo el número correcto de grupos y
nexps es el número de veces que se realizó el experimento para un conjunto de datos.

Error de distancia normalizado (NED)


El índice NED mide el balance entre los índices ARI y NAE, donde ambos índices tienen el
mismo nivel de importancia. El objetivo de índice es revelar el IVG más adecuado para los
conjuntos de datos estudiados en el Capítulo 4. Sea Pi,j = (ARI, 1 - NAE) un punto es un
espacio Euclidiano que representa a los valores ARI y NAE obtenidos por el i-ésimo IVG para
el j-ésimo conjunto de datos. También, sea P⇤ = (ARI⇤ , 1 - NAE⇤ ) el punto ideal de ARI y
NAE, respectivamente. Debido a que ambos índices ARI y NAE producen valores en el rango
[0, 1], entonces el punto Pi,j se encuentra ubicado en un cuadrado unitario, donde el punto
2. Marco teórico 27

ideal P⇤ está ubicado en (1, 1). Entonces, el balance entre los índices se calcula como:

NEDi,j = de (Pi,j , P⇤ ). (2.20)


p
Los valores de NED se encuentran en el rango (0, 2); por tanto, para generar valores
en el rango [0, 1] se realiza una normalización unitaria. Un valor cercano a cero indica un
buen desempeño de agrupamiento (balance adecuado) en términos de los índices ARI y NAE,
mientras que la unidad indica un pobre desempeño.

2.6.3 Pruebas de significación estadística


La comparación de los resultados obtenidos por diferentes métodos se realiza mediante
pruebas de significación estadística que orientan a la elección de un método apropiado para
el agrupamiento de datos.
Para respaldar la confiabilidad de los resultados estadísticos, se deben realizar múltiples
ejecuciones independientes de los algoritmos que posean componentes estocásticos sobre el
mismo conjunto de datos. Debido a las restricciones de tiempo y recursos computacionales, en
la literatura generalmente se ha adoptado realizar al menos 30 ejecuciones independientes de
los algoritmos metaheurísticos [1, 35, 44]. Un estudio reciente reveló que en general el poder
de las pruebas de significación no cambia drásticamente al comparar 30, 50 y 100 ejecuciones
independientes de algoritmos evolutivos [45]. Debido a esto, en los experimentos de esta tesis
se realizan 31 ejecuciones independientes de los algoritmos considerados.
El análisis de significación estadística se realiza mediante la prueba no paramétrica de
Kruskal–Wallis para comparar las medias de los rangos de los grupos de diferentes métodos.
La hipótesis nula establece que las medias de los rangos son iguales, mientras que la hipótesis
alternativa indica que al menos una de las medias es diferente. En esta prueba estadística
comúnmente se considera un nivel de confianza del 95 % (↵ = 0.05). Cabe señalar que para
ajustar el nivel de significación en relación al número de comparaciones simultáneas, se aplica
el método de corrección de Bonferroni, de modo que se evita rechazar incorrectamente la
hipótesis nula [46].

2.6.4 Plataforma de experimentación


La plataforma de prueba considera una computadora con un sistema operativo basado en
LINUX, equipada con 8 núcleos a 2.7 GHz y 32 GB de memoria RAM. Los algoritmos y
métodos fueron implementados en Matlab R2014a (The Mathworks, Boston, Massachusetts,
28 2.7. Conclusiones

USA). Además, con la finalidad de disminuir el tiempo de cómputo de algunos métodos


específicos, estos fueron implementados en el lenguaje ANSI C y compilados desde Matlab
con la función MEX.

2.7 Conclusiones
En este capítulo se presentaron los conceptos y técnicas de agrupamiento relacionadas con el
problema AAD, así como las notaciones adoptadas en los capítulos subsecuentes. También,
se describieron los diversos algoritmos de agrupamiento convencionales y evolutivos que
son representativos en la literatura, los cuales serán utilizados como métodos de referencia
para comparar el enfoque que se propone en este proyecto de investigación. Asimismo, se
presentaron los métodos de evaluación que incluye el conjunto de datos de prueba para la
validación del algoritmo de agrupamiento, índices de calidad de agrupamiento y pruebas de
significación estadística para comparar objetivamente diferentes enfoques.
3
Estado del arte

E L problema de agrupamiento automático de datos (AAD) ha sido ampliamente abordado


con diferentes metaheurísticas. Este capítulo describe 35 algoritmos de agrupamiento
metaheurísticos (AAMs) que han sido reportados en la literatura para tratar el problema AAD
desde el punto de vista de optimización global. La descripción de estos enfoques se presenta
de manera cronológica y de acuerdo a la metaheurística subyacente. Primero se describen los
componentes principales de un AAM y posteriormente los enfoques basados en programación
evolutiva (PE), estrategias evolutivas (EEs), algoritmo genético (AG), evolución diferencial (ED)
y optimización por cúmulo de partículas (PSO, por sus siglas en Inglés).

3.1 Componentes de un algoritmo de agrupamiento metaheurístico

En la literatura, el problema AAD comúnmente ha sido abordado como uno de optimización


global1 . Formalmente y sin pérdida de generalidad, sea ⌦ el conjunto de soluciones
de agrupamiento factibles y sea f una función objetivo (i.e., un IVG). El problema de
agrupamiento de datos, (⌦, f), se puede plantear como sigue [8]:

Minimizar f (C) ,
(3.1)
sujeto a C 2 ⌦.
donde C es una partición de un conjunto de datos X. A continuación se describen los
diferentes esquemas de representación y evaluación utilizados cuando se diseña un AAM.
1 Método para buscar el óptimo global (que puede no ser único) de alguna función.

29
30 3.1. Componentes de un algoritmo de agrupamiento metaheurístico

3.1.1 Representación de soluciones de agrupamiento


Usualmente una solución de agrupamiento se representa a través de un vector numérico
cuyos elementos permiten inferir una partición o agrupamiento, las cuales pueden ser reales,
enteras o binarias.
Representación real: Codifica la ubicación de los prototipos de los grupos (e.g., centroides)
en un espacio D-dimensional. Supóngase que se desea agrupar un conjunto de datos con N
objetos en K grupos, por consiguiente, los prototipos de cada grupo serán codificados en un
vector de longitud D ⇥ K. La decodificación de cada solución se realiza mediante la asignación
de cada objeto (patrón) al prototipo (grupo) más cercano. Existen dos variantes de este tipo
de representación real:

Representación de longitud fija [1]: Todos los miembros en la población codifican un número
máximo de prototipos, Kmax ; por tanto, conservan la misma longitud durante todo el
proceso de optimización, es decir, D ⇥ Kmax . Además, para variar el número de grupos,
cada miembro de la población tiene asociado un vector de umbrales de longitud Kmax , el
cual señala a los prototipos que participarán en el proceso de agrupamiento.

Representación de longitud variable [47]: El i-ésimo miembro en la población codifica en


particular un número de prototipos Ki . Por tanto, los prototipos son codificados en un
vector de longitud D ⇥ Ki , el cual puede variar durante el proceso de optimización. El
uso de esta representación requiere de operadores de variación específicos para tratar con
individuos de diferentes longitudes.

Representación entera: Considera a todos los N objetos en el conjunto de datos de entrada


para formar un vector de números enteros que corresponden a etiquetas de grupo o relaciones
entre objetos. De este modo, todos los miembros de la población tienen longitud de tamaño
N. Existen dos variantes de este tipo de representación entera:

Representación basada en etiquetas [7]: Para cada miembro en la población, la i-ésima


posición en el vector tiene asignado un valor entero (i.e., una etiqueta de grupo) en
el alfabeto {1, . . . , Kmax }, donde Kmax es el número máximo de grupos posibles. Por su
naturaleza esta representación es redundante, debido a que existen Kmax ! soluciones
de agrupamientos posibles que representan el mismo agrupamiento. Una solución para
esta problemática es utilizar un método de renumeración [48]. Esta representación no
requiere de una estrategia de decodificación explícita, es decir, cada patrón está asociado
naturalmente a un grupo.
3. Estado del arte 31

Representación basada en grafos [8]: Para cada miembro en la población, la i-ésima posición
en el vector tiene asignado un valor entero j en el conjunto {1, . . . , N}; esto significa que
existe una arista o enlace entre dos objetos y, por tanto, pertenecen al mismo grupo. La
solución de agrupamiento se decodifica al identificar las componentes conexas (grupos) en
el grafo dirigido.

Representación binaria: Considera la posición de los N objetos del conjunto de datos de


entrada para formar una cadena binaria de longitud N, donde cada posición corresponde
a un objeto del conjunto de datos. El valor lógico de la i-ésima posición en el arreglo es
verdadero si el i-ésimo objeto es considerado como prototipo de grupo, es decir, un medoide.
La decodificación de la solución es similar a la representación real, donde cada objeto se
asigna al prototipo más cercano.

3.1.2 Función objetivo


Los índices de validez de grupos (IVGs) son funciones que cuantifican la calidad de una
solución de agrupamiento basándose en relaciones de distancia entre objetos. Una métrica
mide la disimilitud o similitud entre un par de objetos, donde la más utilizada es la
distancia Euclidiana. Comúnmente un IVG relaciona los conceptos de dispersión intragrupo y
separación intergrupo a través de los siguientes criterios:

Compacidad: Los objetos de un mismo grupo deben presentar alta similitud, es decir, deben
estar lo más cercano posible.

Separabilidad: Los objetos de grupos diferentes deben presentar baja similitud, es decir,
deben estar lo más alejado posible.

Conectividad: Los objetos de un mismo grupo deben presentar alta conectividad, es decir,
deben ser adyacentes en algún sentido.

Un IVG es una función objetivo por naturaleza, es decir, su maximización o minimización


guía la búsqueda hacia soluciones de agrupamiento de mayor calidad. Debido a esta
característica, los IVGs han sido utilizados en algoritmos metaheurísticos para abordar el
problema AAD [9, 49].
Por simplicidad, en las siguientes secciones se utilizará el acrónimo de los diferentes IVGs,
aunque la descripción y formulación matemática de cada uno se detalla en el Apéndice A.
32 3.2. Enfoques basados en programación evolutiva

3.2 Enfoques basados en programación evolutiva

Sarkar et al. [50] propusieron un algoritmo de agrupamiento denominado EP-clustering.


Para la codificación de las soluciones candidatas, el algoritmo utiliza una representación
de longitud variable basada en centroides. El agrupamiento de cada individuo se obtuvo
empleando una versión modificada del algoritmo K-means, mientras que la evaluación de
cada solución se realiza con el índice DB. EP-clustering contempla una estrategia de selección
basada en el valor de aptitud de cada solución, es decir, la población de padres e hijos
compiten para seleccionar a los mejores individuos que formarán la próxima generación. Para
la experimentación se consideraron dos conjuntos de datos, uno sintético y otro real (English
vowel), ambos con grupos esféricos y bien separados (i.e., datos linealmente separables). EP-
clustering presentó mejores resultados que los algoritmos K-means y fuzzy C-means (FCM) en
términos del número de grupos.

3.3 Enfoques basados en estrategias evolutivas

Lee y Antonsson [51] propusieron un algoritmo llamado ES-clustering, el cual utiliza una
representación de longitud variable basada en centroides y la estrategia de selección (µ + )-
EEs. Como función de aptitud se utiliza una variación de la suma ponderada del error
cuadrático medio. En ES-clustering el número de grupos es modificado con un operador de
cruza, el cual emplea operaciones para insertar y/o eliminar centroides en cada individuo.
La siguiente población de padres se obtiene al seleccionar los mejores individuos (selección
basada en la preservación) a partir de la combinación de padres e hijos actuales. Se utilizaron
dos conjuntos de datos sintéticos bidimensionales, ambos con grupos linealmente separables.
Recientemente, Kashan et al. [52] propusieron el algoritmo FuzzyGES, el cual contempla
una representación de longitud variable basada en centroides y una estrategia de selección
(1+1)-EE, mientras que la evaluación de las soluciones se realiza con el índice XB. FuzzyGES
incorpora un operador de mutación difuso y considera una estrategia basada en herencia y
reinserción de centroides para generar nuevas soluciones de agrupamiento. Los resultados
de FuzzyGES se compararon con aquellos obtenidos por un algoritmo de agrupamiento
convencional y tres algoritmos metaheurísticos: FCM [53], PSO [54], ED [55] y LCA [56].
FuzzyGES presentó mejores resultados en términos del número correcto de grupos y del valor
de aptitud del índice XB.
3. Estado del arte 33

3.4 Enfoques basados en algoritmos genéticos

3.4.1 Codificación de longitud fija

Tseng y Yang [57] propusieron un algoritmo denominado CLUSTERING, el cual se compone


de dos etapas: primero una variante del algoritmo k-NN (k-vecinos más cercanos) obtiene
un agrupamiento inicial y, en la segunda etapa, el agrupamiento inicial se refina utilizando
un AG. Se utiliza una representación binaria de longitud fija, mientras que la aptitud
de las soluciones candidatas se calcula con una función ponderada que considera a los
criterios de compacidad y separabilidad entre los grupos. El estudio comparativo consideró
a los algoritmos K-means, Complete-linkage y Single-linkage. Los resultados experimentales
mostraron la efectividad de CLUSTERING en dos conjuntos de datos linealmente separables.
Además, este algoritmo fue aplicado para agrupar datos con grupos de forma arbitraria [58].
Un enfoque similar a CLUSTERING, con la misma representación y función de evaluación,
fue presentado por Garai y Chaudhuri [59] denominado HCMA. Primero, se realiza un
agrupamiento de grano grueso, es decir, los datos de entrada se descomponen en pocos
grupos. Posteriormente, el agrupamiento parcial es refinado (unión de grupos) de manera
iterativa usando un AG (selección proporcional y cruza de un punto). HCMA fue aplicado a
datos sintéticos y al conjunto de datos iris data. El algoritmo obtuvo un desempeño adecuado
en la mayoría de los datos de prueba en términos del error de clasificación.
Lin et al. [60] presentaron el algoritmo GA-clustering, el cual utiliza una representación
binaria para codificar a las soluciones y emplea el índice DB para evaluar a las soluciones. Se
aplicó una selección proporcional y los operadores de cruza de un punto y mutación binaria. El
desempeño de GA-clustering fue superior al algoritmo GCUK [36] en términos de los valores
de aptitud del índice DB.
Hruschka y sus colaboradores han propuesto diferentes algoritmos basados en AGs
para abordar el problema AAD. Para la representación de las soluciones candidatas, estos
algoritmos utilizan una representación entera basada en etiquetas, mientras que la aptitud de
dichas soluciones es calculada con el índice Sil. Primero, los autores presentaron el algoritmo
CGA [7] que utiliza una selección proporcional por ruleta, elitismo y emplea operadores
genéticos de cruza y mutación para fusionar, separar y/o eliminar grupos. Posteriormente,
los autores presentaron en [61] tres mejoras a CGA: CGA-II, CGA-III y CGA-IV. En CGA-II,
después de la generación de la población de padres, se aplica el algoritmo K-means a cada
individuo como una técnica de búsqueda local. CGA-III y CGA-VI se diferencian de CGA-
34 3.4. Enfoques basados en algoritmos genéticos

II únicamente en la evaluación de las soluciones de agrupamiento, es decir, se utilizan dos


variantes del índice Sil. Los resultados experimentales mostraron que CGA-II resultó ser la
mejor variante en términos de tiempo de cómputo y calidad del agrupamiento. Finalmente,
los autores presentaron el algoritmo EAC [62] que se caracteriza por incluir un esquema de
mutación más sofisticado y por eliminar al operador de cruza. EAC fue probado con datos
reales y su desempeño fue comparado con CGA [7], CGA-II, CGA-III [61] y K-means. De
acuerdo a los resultados experimentales, EAC superó a los otros algoritmos en términos del
error de clasificación.
Bandyopadhyay y Maulik [36] propusieron el algoritmo GCUK, en donde las soluciones se
codificaron en una representación de longitud fija basada en centroides. Además, para variar
el número de grupos, se utilizaron símbolos “no importa” denotados con el caracter “#”. La
aptitud de cada solución se calcula con el índice DB. Se aplica una selección proporcional,
cruza de un punto y mutación en posiciones válidas (i.e., posiciones diferentes de #). GCUK
fue aplicado a datos sintéticos, reales (iris data, breast cancer) y a la segmentación de una
imagen satelital.
Lai [63] propuso un algoritmo denominado HGA, el cual utiliza una representación basada
en centroides y emplea al índice DB para calcular la aptitud de cada solución. HGA está
basado en una selección proporcional por ruleta, cruza uniforme y mutación a nivel de bits en
el vector de umbrales (máscara). El algoritmo se probó con datos sintéticos y datos reales (iris
data, breast cancer) y mostró un desempeño adecuado en términos del error de clasificación.
Pan y Cheng [64] propusieron un algoritmo de agrupamiento híbrido basado en AG y
búsqueda Tabú denominado ETSA. Se utiliza una representación basada en centroides y
el índice PBM para evaluar la calidad de las soluciones. La búsqueda tabú actúa como un
buscador local que utiliza una memoria de largo plazo para guardar la mejor solución en cada
iteración, impidiendo así que ETSA quede atrapado en óptimos locales. El diseño experimental
consideró datos sintéticos y reales, así como cinco algoritmos de agrupamiento (e.g., K-means,
AG-clásico, etc.). Los resultados mostraron que ETSA obtuvo un desempeño aceptable en la
mayoría de los datos de prueba en términos del número correcto de grupos y del valor del
índice PBM.
Chang et al. [44] propusieron el DNNM que se caracteriza por incorporar un operador
de migración basado en nichos para mantener la diversidad en la población (operador fitness
sharing, FS). Se utiliza una representación de longitud fija basada en centroides. La aptitud
de las soluciones candidatas se calcula con una función que considera a los criterios de
compacidad y separabilidad entre los grupos, además considera la información relacionada
3. Estado del arte 35

al operador FS. DNNM está basado en una selección proporcional por ruleta, con cruza y
mutación uniformes. El desempeño del algoritmo fue evaluado considerando datos sintéticos
y reales, y se comparó con otros tres enfoques basados en nichos. Los resultados mostraron la
superioridad de DNNM sobre los otros enfoques, los cuales requieren como entrada el número
de grupos.

3.4.2 Codificación de longitud variable


Bandyopadhyay y Maulik [47] presentaron un algoritmo denominado VGA, donde las
soluciones candidatas son codificadas en un cromosoma de longitud variable que representa
los centroides de los grupos. Cuatro IVGs fueron evaluados como la función objetivo del
algoritmo: PBM, DB, DI y gDI. VGA utiliza una selección proporcional por ruleta, cruza
uniforme basada en centroides y mutación uniforme. El experimento se enfocó en evaluar
el desempeño de VGA al usar diferentes IVGs en datos sintéticos y reales (iris data, breast-
cancer). Los resultados experimentales mostraron que VGA con el índice PBM obtuvo el mejor
desempeño al estimar correctamente el número correcto de grupos.
Sheng et al. [65] propusieron un algoritmo de agrupamiento basado en nichos
denominado HNGA. El algoritmo utiliza una representación de longitud variable basada
en centroides. La función objetivo de HNGA es una función ponderada de los índices DB,
Sil, DI, gDI, CH y PBM. HNGA utiliza una selección proporcional por ruleta a nivel de
subpoblaciones, cruza de dos puntos basada en centroides y mutación con distribución
Gaussiana. El experimento consideró a los algoritmos VGA [47] y CGA [7], y utilizó datos
de prueba sintéticos y reales (iris data, breast-cancer y subcellcycle). Los resultados mostraron
un desempeño adecuado de HNGA en términos del número de grupos y del valor de aptitud.
Bandyopadhyay y Saha [18] desarrollaron el algoritmo VGAPS, el cual utiliza una
representación de longitud variable basada en centroides. Contempla al índice Sym como
función de optimización, donde la asignación de puntos a los grupos se realiza con la distancia
basada en simetría puntual. VGAPS utiliza una selección proporcional por ruleta, cruza de
un punto y una técnica de mutación específica para modificar el número de grupos. El
desempeño de VGAPS superó a los algoritmos GCUK [36] y HNGA [65] en términos del error
de clasificación (Minkowski score). Los mismos autores propusieron otra versión diferente del
algoritmo VGAPS para el agrupamiento difuso denominado Fuzzy-VGAPS [27]. El algoritmo
utiliza una representación de longitud variable basada en centroides y emplea el índice Sym
como función objetivo. En el diseño experimental se incluyeron datos sintéticos, reales y
la segmentación automática de una imagen médica. Los resultados mostraron que VGAPS
36 3.4. Enfoques basados en algoritmos genéticos

superó al algoritmo VGA [47] y a otros algoritmos de agrupamiento convencionales (e.g.,


K-means, FCM, etc.). Sin embargo, ambos algoritmos, VGAPS y Fuzzy-VGAPS, funcionan
adecuadamente sólo cuando los datos de entrada tienen la propiedad de simetría.

Horta et al. [66] presentaron un AG denominado F-EARFC. El algoritmo utiliza una


representación de longitud variable basada en medoides, mientras que la aptitud de cada
solución se calcula con el índice Sil. La decodificación de las soluciones se realiza de manera
similar que el algoritmo FCM. F-EARFC utiliza una selección proporcional por ruleta y aplica
un operador de mutación basándose en los valores de aptitud actual y una generación anterior
de cada individuo. El desempeño de F-EARFC fue comparado con dos enfoques basados en el
algoritmo FCM variando el número de grupos. Los resultados indicaron que F-EARFC obtuvo
el mejor desempeño en términos del valor promedio alcanzado por el índice Sil.

Liu et al. [67] propusieron un algoritmo de agrupamiento genético elitista llamado


AGUCK. El algoritmo utiliza una representación de longitud variable basada en centroides y
contempla el índice DB como función de evaluación. AGUCK emplea una técnica de selección
(noising selection) que penaliza a los individuos de acuerdo con las variaciones del valor de
aptitud durante el proceso evolutivo. También, el algoritmo incluye una técnica de mutación
basada en el mejor individuo en la población y de manera aleatoria aplica un operador de
división, para incrementar el número de grupos, o un operador de absorción, para disminuir
el número de grupos. El diseño experimental involucró a datos sintéticos y reales y, además,
AGUCK se comparó con los siguientes algoritmos: VGA [47], GCUK [36], HGA [63] y GA-
clustering [60]. AGUCK obtuvo el mejor desempeño en la mayoría de los datos de prueba en
términos del número correcto de grupos y del error de clasificación.

He y Tan [32] propusieron el TGCA, en el cual la codificación de las soluciones se realiza


con una representación de longitud variable basada en centroides, mientras que la aptitud
de cada solución se calcula con el índice CH. En TGCA cada individuo en la población está
sujeto a las siguientes tres condiciones: (i) selección de dos etapas basada en la aptitud
de los individuos, (ii) cruza de un punto entre individuos con el mismo número de grupos
(subpoblaciones) y (iii) mutación de dos etapas basada en el porcentaje de mutación de
cada individuo. La eficiencia del algoritmo fue comparada con tres algoritmos basados en
agrupamiento jerárquico, particional y agrupamiento espectral. Los resultados experimentales
indicaron que TGCA obtuvo el mejor desempeño en términos de la exactitud tanto del
agrupamiento como del número de grupos estimado.
3. Estado del arte 37

3.4.3 Aplicaciones específicas


Lai y Chan [68] propusieron un algoritmo evolutivo para la segmentación de imágenes
médicas denominado HEA, el cual utiliza una representación de longitud fija basada en
medoides (similar a la usada en HGA [63]). La aptitud de las soluciones candidatas se calcula
con una función basada en el criterio de compacidad de acuerdo a los niveles de gris de
la imagen. HEA está basado en una selección proporcional por ruleta, cruza y mutación
uniformes. El diseño experimental consideró cinco imágenes médicas y HEA se comparó con
los algoritmos: K-means, FCM y el método de Otsu. HEA se desempeñó mejor que los otros
enfoques en términos del error de clasificación. Un enfoque similar fue propuesto por Liu et
al. [69] para la segmentación de imágenes denominado VGA-FCM. El algoritmo utiliza una
representación de longitud variable basada en medoides y usa el índice FCM para evaluar
la aptitud de las soluciones. Además utiliza una selección proporcional por ruleta, cruza de
dos puntos y mutación uniforme. El algoritmo fue probado en una imagen satelital para la
detección de carreteras y mostró resultados adecuados en términos del error de clasificación.
Ma et al. [70] presentaron un algoritmo evolutivo, llamado EvoCluster, para el análisis
de datos de DNA microarrays. El algoritmo utiliza una representación entera de longitud
variable basada en etiquetas de grupo, donde cada una codifica las posiciones de los elementos
que pertenecen a un grupo. Para medir la aptitud de las soluciones se utiliza una función
objetivo basada en información mutua. Además, EvoCluster utiliza una selección proporcional
por ruleta, cruza de un punto basada en etiquetas y mutación uniforme. Para el diseño
experimental se utilizaron datos de microarrays y el desempeño de EvoCluster se comparó con
K-means y un mapa auto-organizado. También, el algoritmo HEA [62], descrito previamente,
fue aplicado al análisis de datos de microarrays.

3.5 Enfoques basados en evolución diferencial


Das et al. [1] propusieron el algoritmo ACDE, el cual utiliza la variante DE/rand/1/bin y
la codificación de las soluciones se realiza con una representación de longitud fija basada en
centroides. Se utilizan de manera indistinta los índices DB y CS como funciones de evaluación.
Los autores propusieron variar el factor de escalamiento de mutación (F) de manera aleatoria
en el rango [0.5, 1] y la tasa de recombinación (Cr) decrece de manera lineal a lo largo de
las generaciones. Para las pruebas se utilizaron cinco conjuntos de datos reales (iris data,
wine, breast-cancer, vowel y glass) y se segmentaron cinco imágenes en escala de grises. Los
38 3.6. Enfoques basados en optimización por cúmulo de partículas

resultados de ACDE fueron comparados con aquellos obtenidos por los algoritmos GCUK [36],
DCPSO [71], y ED sin variación de parámetros [55]. Los resultados experimentales mostraron
un mejor desempeño de ACDE en comparación con los otros algoritmos en términos del
número de grupos y error de clasificación. Posteriormente, los mismos autores presentaron
una nueva versión del algoritmo ACDE para el agrupamiento difuso denominado AFDE [72].
Los índices XB y PBM son utilizados como las funciones objetivo de AFDE. Los experimentos
consideraron la segmentación de seis imágenes en escala de gris, donde AFDE presentó un
mejor desempeño en comparación con los algoritmos FVGA [73] y FCM [53].
Das y Sil [74] propusieron otro algoritmo basado en ED para la segmentación automática
de imágenes llamado KFNDE. El algoritmo tiene dos características particulares: (i) incluye
una medida de proximidad basada en el método del kernel que posteriormente se incluye en el
índice XB y (ii) incorpora un operador de mutación basado en pesos que combina información
de un vecindario (mejor individuo del vecindario) e información global (mejor individuo de
la población). De forma similar a los algoritmos anteriores, KFNDE utiliza una representación
de longitud fija basada en centroides. El diseño experimental consideró la segmentación de
10 imágenes en escala de grises y a los algoritmos KFNDE, DE/current-to-best/1/bin [55],
FVGA [73] y KFAC [75]. Los resultados mostraron una mejor exactitud de segmentación y
estimación del número de grupos por parte de KFNDE.
Maulik y Saha [76] propusieron un algoritmo denominado MoDEAFC para la segmenta-
ción automática de imágenes. MoDEAFC utiliza una representación de longitud fija basada en
centroides y como funciones objetivo considera a los índices XB y PBM. En MoDEAFC se se-
lecciona entre la mutación clásica (DE/rand/1) y una mutación basada en información global
y local (DE/global-to-local/1) de acuerdo con un parámetro cuyo valor decrece exponencial-
mente en el rango [1, 0.5]. Los resultados de MoDEAFC se compararon con aquellos obtenidos
por los algoritmos DE [55], FVGA [73], ACDE [1] y FCM [53]. El experimento consideró
la segmentación de dos imágenes satelitales, donde MoDEAFC obtuvo el mejor desempeño
respecto a los algoritmos mencionados.

3.6 Enfoques basados en optimización por cúmulo de partículas

Omram et al. [71] propusieron un algoritmo denominado DCPSO, el cual emplea una
representación binaria, por consiguiente, se utiliza una versión binaria del algoritmo PSO.
En primer lugar, se divide el conjunto de datos de entrada en varios grupos; después, se
busca la mejor solución de agrupamiento con DCPSO; finalmente, para cada partícula, se
3. Estado del arte 39

aplica K-means para refinar los centroides encontrados. El diseño experimental contempló la
evaluación de diferentes índices (DI, TI, SDbw) para la segmentación de imágenes sintéticas
y naturales. Asimismo, los autores propusieron otra versión del mismo algoritmo, aunque
basado en AG. Se observó que la versión basada en PSO que utiliza el índice TI obtuvo el
mejor desempeño al estimar adecuadamente el número de grupos.
Das et al. [34] propusieron un algoritmo de agrupamiento para la segmentación
automática de imágenes denominado MEPSO. El algoritmo utiliza una representación de
longitud fija basada en centroides y considera al índice XB para calcular la aptitud de
las soluciones candidatas. Considerando tres imágenes en escala de grises, el desempeño
de MEPSO se comparó con los algoritmos FCM y VGA [47]. Posteriormente, los autores
presentaron una variante de MEPSO denominada KMEPSO [35]. El algoritmo utiliza una
medida de proximidad basada en el método del kernel (enfoque similar a KFNDE [74]), que
se integró al índice CS. El desempeño de KMEPSO se comparó con K-means, GCUCK [36] y
DCPSO [71]. KMEPSO superó a los algoritmos mencionados en todos los datos de prueba en
términos de exactitud de agrupamiento.
Ouadfel et al. [77] desarrollaron el algoritmo ACMPSO para la segmentación de
imágenes. El algoritmo emplea una representación basada en centroides y el índice CS
como función objetivo. Para modificar el número grupos se propusieron tres operadores de
mutación (permutación, separación y fusión de grupos), de modo que ACMPSO selecciona
aleatoriamente un operador de mutación para cada partícula. Los resultados de ACMPSO
se compararon con aquellos obtenidos por los algoritmos ISODATA y DCPSO [71]. ACMPSO
obtuvo un desempeño adecuado en términos del número correcto de grupos. Otro algoritmo
con representación basada en centroides fue propuesto por Qu et al. [78] denominado PSOPS.
El algoritmo utiliza el índice Sym para calcular la aptitud de las soluciones, donde la medida
de proximidad basada en simetría puntual fue utilizada.
Recientemente, Kuo et al. [79] presentaron un algoritmo de agrupamiento híbrido basado
en PSO y AG denominado DCPG. Este algoritmo es similar a DCPSO, ya que utiliza la misma
representación de soluciones y la misma función objetivo (índice TI). La diferencia principal
radica en dividir la población en dos partes iguales y cada una aplica de manera independiente
los operadores del PSO y AG (cruza de dos puntos y mutación uniforme). Considerando a
los conjuntos de datos iris data, wine, glass y vowel, DCPG se comparó con ACMPSO [77] y
DCPSO [71], y obtuvo el mejor desempeño en términos de calidad de agrupamiento. Por otro
lado, Cura et al. [80] presentaron otro algoritmo basado en PSO llamado CPSO. Éste utiliza
una representación de longitud variable; además, emplea una variante del índice WGS como
40 3.7. Conclusiones

función objetivo. CPSO aplica dos procedimientos para variar el número de grupos, los cuales
eliminan o separan grupos. El algoritmo se probó con diferentes datos sintéticos y reales, y
obtuvo resultados satisfactorios en términos del número de grupos.

3.7 Conclusiones
En este capítulo se describieron 35 algoritmos de agrupamiento metaheurísticos (AAMs) para
abordar el problema AAD, los cuales exploraron diferentes tipos de codificación, funciones
objetivo, medidas de proximidad y tipos de datos de prueba2 . La Tabla 3.1 presenta los
trabajos descritos previamente y resume sus principales características. La mayor parte de los
esfuerzos realizados por la comunidad científica se han centrado en las siguientes direcciones:

Propuestas de diferentes representaciones que permitan variar el número de grupos, por


ejemplo, representación real de longitud fija basada en centroides [1], representación
real de longitud variable basada en centroides [47], representación entera basada en
etiquetas [7], representación entera basada en grafos [8], etc. Se observó que, debido a
su simplicidad y efectividad, la representación basada en centroides es la más utilizada
(75 %). Además, presenta la ventaja de ser escalable con respecto al número de patrones en
el conjunto de datos.

Propuestas de diferentes IVGs para evaluar la aptitud de las soluciones de agrupamiento


[14, 15, 19, 22, 23, 82]. Aunque una gran cantidad de IVGs han sido propuestos,
actualmente existen poca evidencia sobre su desempeño en algoritmos de agrupamiento
metaheurísticos [83].

Propuestas de diferentes AAMs para abordar el problema AAD, donde la mayoría de los
enfoques están basados en algoritmos evolutivos (80 %), siendo los algoritmos genéticos
los más utilizados (20 %). No obstante, en el diseño experimental, la mayoría de estos
algoritmos únicamente consideran datos sintéticos y reales; dejando de lado la validación
en aplicaciones de agrupamiento reales en diferentes disciplinas.

Considerando los datos de prueba, se observó que el 66 % de los enfoques se evaluaron con
datos sintéticos, siendo en su mayoría datos linealmente separables, mientras que el 57 %
de los trabajos utilizaron datos reales considerados como estándares por la comunidad,
2 Una revisión del estado del arte más amplia y detallada sobre el uso de algoritmos metaheurísticos para abordar el
problema AAD ha sido publicada en la revista “Applied Soft Computing ” [9].
3. Estado del arte 41

Tabla 3.1: Algoritmos de agrupamiento metaheurísticos para abordar el problema AAD.


“Codificación” indica el tipo de representación: representación real basada en centroides de longitud
fija (C-LF) o longitud variable (C-LV), representación entera basada en etiquetas (E) o representación
binaria (B); “IVG” se refiere a la función objetivo; “Datos sintéticos”, “Datos reales” y “Aplicación”
denotan el tipo y/o el número de conjuntos de prueba utilizados.
Datos Datos
Algoritmo Codificación IVG Aplicación Ref.
Sintéticos Reales
TGCAH C-LV CH. 4 JI 7 – [32]
AGUCKH C-LV DB. 50 J 1 – [67]
F-EARFCF C-LV SI. 18 JI 2 Microarray (5) [66]
DNNMH C-LF DSF. 5 JI 2 Imágenes (1) [44]
Fuzzy-VGAPSF C-LV Sym/ 5 JI 3 Imágenes (1) [27]
HEAH C-LF WGS. – – Imágenes (5) [68]
VGAPSH C-LV Sym/ 9 JI • 5 – [18]
ETSAH C-LF PBM. 5 JI 4 – [64]
EvoClusterH E WIM. 1 J – Microarray (2) [70]
EACH E SI. – 1 Microarray (5) [62]
AG HGAH C-LF DB. 5 JI 2 – [63]
HNGAH C-LV WSVF. 3 JI 3 – [65]
GA-clusteringH B DB. 100 J – – [60]
HCMAH B WGS. 9 JI • 1 – [59]
GCAH II, III, y IV E SI. 1 J – – [61]
VGA-FCMF C-LF FCM. – – Imágenes (1) [69]
Fuzzy-VGAF C-LV XB. – – Imágenes (2) [73]
GCAH E SI. 2 J 2 – [7]
GCUKH C-LF DB. 4 JI 2 Imágenes (1) [36]
VGAH C-LV PBM. 3 JI 2 – [47]
CLUSTERINGH B WGS. 5 JI • – – [57, 58]
MoDEAFCF C-LF XB. – – Imágenes (2) [76]
KFNDEF C-LF XB⇧ – – Imágenes (10) [74]
ED
AFDEH C-LF Sym/ – – Imágenes (6) [72]
ACDEH C-LF DB. – 5 Imágenes (6) [1]
CPSO H C-LV WGS. 2 JI 5 – [80]
DCPGH B TI. – 4 – [79]
PSOPSH C-LV Sym/ 2 JI 1 – [78]
PSO
ACMPSOH C-LF CS. – – Imágenes (3) [77]
KMEPSOH C-LF CS⇧ 5 JI • 4 Imágenes (1) [35]
MEPSOF C-LF XB. – – Imágenes (3) [34]
DCPSOH B TI. – – Imágenes (21) [71, 81]
FuzzyGESF C-LV XB. 13 JI • 1 – [52]
EEs
ES-clusteringH C-LV WGS. 2 JI – – [51]
PE EP-clusteringH C-LF DB. 3 JI – – [50]

Tipo de técnica de agrupamiento: particional duro (H) y particional difuso (F).


Tipo de medida de proximidad: euclidiana (.), basada en simetría (/) y basada en kernel (⇧).
Tipo de datos sintéticos: linealmente separables con (I) y sin traslape (J) y no linealmente separables (•).
42 3.7. Conclusiones

por ejemplo, iris data, wine, breast-cancer, etc. Por otro lado, el 48 % de los enfoques han
sido probados en alguna aplicación específica, siendo la segmentación de imágenes la
más abordada, seguido del análisis de microarrays. Es notable el uso extendido de datos
sintéticos, ya que es posible controlar características del conjunto de datos como tipo de
separabilidad, dimensionalidad, densidad, número de grupos, ruido, etc.

A pesar de la notable cantidad de investigación sobre el problema AAD usando AAMs,


la mayoría de los trabajos resumidos en la Tabla 3.1 se han enfocado en agrupar datos
linealmente separables. Esto se debe a que los IVGs funcionan adecuadamente cuando
se satisfacen simultáneamente los criterios de separabilidad intergrupo y compacidad
intragrupo, lo cual se cumple efectivamente en datos linealmente separables. Sin embargo,
cuando los datos no son linealmente separables se requieren criterios adicionales como la
conectividad de los datos.
Derivado de estas observaciones, en este trabajo de investigación se abordará el problema
AAD desde un enfoque de optimización global. Además, para superar la limitación de los
enfoques de optimización global en el agrupamiento de datos no linealmente separables, una
alternativa es adaptar la métrica en el IVG en función del tipo de separabilidad de los datos
de entrada.
Estudio comparativo de IVGs
4
usando un enfoque evolutivo

E L éxito de los algoritmos de agrupamiento metaheurísticos (AAMs) depende de un conjunto


de componentes básicos que deben diseñarse cuidadosamente. En este sentido, la
función objetivo es un componente importante, ya que evalúa la calidad de una solución
candidata con respecto a un criterio de optimización definido por un índice de validez de
grupos (IVG).
El IVG es responsable de guiar el proceso de búsqueda hacia regiones promisorias del
espacio de búsqueda, favoreciendo a las soluciones de agrupamiento que satisfacen adecua-
damente los criterios de máxima separación intergrupo y mínima dispersión intragrupo. Por
tanto, se espera que el IVG sea capaz de discriminar soluciones de agrupamiento inferiores
para mejorar la eficiencia del AAM.
La complejidad del problema de agrupamiento automático de datos (AAD) ha propiciado
la proliferación de IVGs con diferentes propiedades y características [84]. No obstante, existe
poca evidencia sobre el impacto de los IVGs en el desempeño de los AAMs. En la mayoría
de los enfoques reportados en el Capítulo 3, la selección del IVG utilizado como la función
objetivo del algoritmo de agrupamiento no se justifica, o bien, sólo se justifica parcialmente
mediante el estudio experimental de algunos IVGs [1, 32, 71].

43
44 4.1. Preliminares

Este capítulo presenta un estudio comparativo de 22 IVGs que han sido utilizados en la
literatura para abordar el problema AAD, los cuales se listan en la Sección 2.3 y se detallan
en el Apéndice A. Para la evaluación de los diferentes IVGs, el estudio considera al algoritmo
ACDE, que es uno de los enfoques más representativos del estado del arte (ver su descripción
en la Sección 2.5.2). Debido a que el objetivo es evaluar el desempeño de los IVGs en
diversos escenarios, el estudio considera datos con diferentes tipos de separabilidad. Por tanto,
este estudio servirá como una guía para seleccionar el IVG más adecuado de acuerdo a las
características de separabilidad del conjunto de datos de entrada.
Este capítulo se organiza de la siguiente forma. La Sección 4.1 provee información
preliminar al estudio comparativo de IVGs. Los resultados obtenidos se presentan en la
Sección 4.2, mientras que las discusiones sobre los hallazgos se describen en la Sección 4.3.
Finalmente, la Sección 4.4 presenta las conclusiones sobre el estudio comparativo realizado.

4.1 Preliminares
En la literatura, el estudio comparativo de diferentes IVGs se ha realizado principalmente
con técnicas basadas en algoritmos de agrupamiento convencionales1 y algoritmos de
agrupamiento metaheurísticos. No obstante, la mayoría de estos trabajos reportados se
enfocan en la propuesta de un nuevo IVG [8, 20, 82, 85, 86] o en la modificación de
uno existente [16, 27, 87]. Por tanto, a continuación se mencionan únicamente lo estudios
comparativos cuyo objetivo principal es analizar el desempeño de diferentes IVGs.
Existen diversos estudios comparativos de IVGs que utilizan algoritmos de agrupamiento
convencionales (e.g., K-means, Single-linkage, etc.) [84, 88–92]. En estos estudios el
IVG se desempeña como un índice de validez externo, es decir, se emplea como una
técnica a posteriori para determinar el agrupamiento más adecuado a partir de una
colección de agrupamientos candidatos. En primer lugar, el algoritmo de agrupamiento
se ejecuta m veces sobre un conjunto de datos considerando diferentes valores para el
parámetro K, {K1 , K2 , . . . , Km }; por consiguiente, se genera una colección de m agrupamientos,
{C1 , C2 , . . . , Cm }. Posteriormente, se evalúan todas las soluciones en la colección y se
selecciona aquella que obtenga el mejor valor de aptitud en términos de un IVG, así como
su correspondiente número de grupos [92]. Nótese que esta metodología no utiliza el
IVG para guiar internamente al algoritmo de agrupamiento en la búsqueda de soluciones
1 Algoritmos de agrupamiento ampliamente conocidos en la literatura, que generalmente requieren el número de grupos,
K, como un parámetro de entrada.
4. Estudio comparativo de IVGs 45

potenciales. Además, este enfoque depende del resultado de los algoritmos de agrupamiento
convencionales utilizados, los cuales sufren de diversas limitaciones como susceptibilidad
a quedar atrapados en óptimos locales, requieren conocer a priori del número de grupos,
asumen que los datos de entrada se aproximan a una distribución normal, etc. [1, 4]; por
tanto, estos algoritmos son inadecuados en diferentes aplicaciones reales [9, 92].
Debido a estas limitaciones, diversos AAMs han sido utilizados para abordar el problema
AAD. En estos enfoques, el IVG se utiliza efectivamente como un índice de validez interno,
ya que está integrado en el algoritmo de agrupamiento como una función objetivo. Por tanto,
el uso de AAMs como algoritmos de agrupamiento subyacentes es un enfoque más adecuado
para analizar y comparar diferentes IVGs.
En este contexto, Xu et al. [83] presentaron un estudio comparativo para analizar el
desempeño de ocho IVGs utilizando el algoritmo DEPSO [93], el cual es un enfoque híbrido
basado en evolución diferencial (ED) y optimización por cúmulo de partículas (PSO, por sus
siglas en Inglés). El diseño experimental consideró a los siguientes índices: CH, CI, DB, DI,
gDI33 , gDI53 , PBM y Sil. Además, se consideraron seis conjuntos de datos sintéticos y cuatro
reales (iris data, wine, breast cancer y SRBCT), los cuales son datos linealmente separables.
Los resultados experimentales mostraron que el índice Sil (Silhouette) obtuvo el mejor
desempeño en términos de los índices Rand, Rand ajustado, Jaccard y Fowlkes–Mallows.
Sin embargo, este estudio no analiza el desempeño de los IVGs en datos con diferentes
características intrínsecas tales como: grupos con formas arbitrarias, grupos superpuestos,
grupos con separabilidad lineal y no lineal, etc.
El desempeño de un IVG depende en gran medida de la estructura subyacente de los
datos de entrada [4]. En situaciones prácticas, el tipo de separabilidad se desconoce a priori;
por tanto, el uso de métodos inapropiados puede conllevar a soluciones de agrupamiento
erróneas. Aunque el tipo de separabilidad de los datos es relevante desde un punto de vista
práctico, en la literatura aun falta investigar el impacto de esta característica de los datos
sobre los IVGs cuando se aborda el problema AAD [9].

Tabla 4.1: Configuración de los parámetros de entrada del algoritmo ACDE [1].
Parámetro Valor
Número de evaluaciones de la función objetivo NE = 1E6
Tamaño de la población NP = 10 ⇥ D
Número máximo de grupos Kmax = 20
Número mínimo de grupos Kmin = 2
46 4.2. Resultados del estudio comparativo

4.2 Resultados del estudio comparativo


Esta sección presenta los resultados obtenidos de la evaluación de 22 IVGs diferentes usando
el algoritmo ACDE. El algoritmo se ejecutó 31 veces para cada IVG evaluado y para cada
conjunto de datos de prueba, donde el criterio de terminación es el número de evaluaciones
de la función objetivo. La configuración de los parámetros se presenta en la Tabla 4.1.
Por otro lado, la evaluación del agrupamiento final se centró en dos factores principales:
(i) la calidad de las particiones obtenidas en términos del índice ARI y (ii) la calidad del
número de grupos estimado en términos del índice NAE. Adicionalmente, se presentan los
resultados en términos del índice NED, el cual define un balance entre los índices ARI y NAE,
de modo que se evalúa simultáneamente la calidad del agrupamiento y la estimación del
número de grupos obtenidos por un IVG.

4.2.1 Calidad del agrupamiento


Los resultados obtenidos en términos de los índices ARI y NAE se presentan en las Figuras 4.1
y 4.2, respectivamente. Los IVGs fueron ordenados de manera descendente en la Figura 4.1 y
ascendente en la Figura 4.2 de acuerdo al valor mediana de cada IVG; por tanto, aquellos IVGs
ubicados más a la izquierda tienden a tener un mejor desempeño que aquellos posicionados
más a la derecha. Además, cada figura muestra los resultados de las cuatro categorías de datos
definidas en la Sección 2.6.1: linealmente separables sin traslape (G1 ), linealmente separables
con traslape (G2 ), no linealmente separables (G3 ) y datos reales (G4 ).
En la Figura 4.1a se muestran los resultados para la categoría G1 , donde se observa que el
índice Silhouette (Sil) presentó el mejor desempeño en términos del índice ARI (0.98 ± 0.05)
para todos los conjuntos de datos en G1 . Asimismo, los índices gD31, CH, DB, CS, gD41,
gD51 y CI obtuvieron un buen desempeño, aunque presenta una mayor variabilidad en sus
resultados. En contraste, los índices SF, SDI y SDB presentaron un pobre desempeño de
agrupamiento con un valor ARI de 0.54 ± 0.30. Por otro lado, los resultados de la Figura 4.2a
muestran que el índice Sil obtuvo los mejores resultados al estimar el número correcto de
grupos en términos del índice NAE. Por el contrario, el índice SDbw obtuvo el desempeño
más bajo en la estimación del número correcto de grupos (K⇤ ).
La Figura 4.1b muestra que el índice Sil obtuvo el mejor desempeño de agrupamiento
en términos del índice ARI (0.96 ± 0.05) para la categoría G2 . Además, diferentes índices
como CH, CS, DB y las variantes DI presentaron un buen desempeño, aunque ligeramente
inferiores que Sil. De manera similar, en la Figura 4.2b se observa que el índice Sil presentó
4. Estudio comparativo de IVGs 47

el mejor desempeño en términos de la medida NAE. Se observó que los índices con un buen
desempeño de ARI también presentaron un buen desempeño al estimar el número de grupos.
En contraste, los índices SDbw, COP y SF obtuvieron los desempeños más bajos en términos
de los índices ARI y NAE.
Los resultados de la categoría G3 mostrados en la Figura 4.1c evidencian que todos los
IVGs estudiados presentaron un pobre desempeño de agrupamiento en términos del índice
ARI; todos obtuvieron un valor ARI promedio menor que 0.40. No obstante, los resultados
indicaron que el índice XB se desempeñó ligeramente superior a sus contrapartes. Por otro
lado, la Figura 4.2c muestra los resultados al estimar el número de grupos, donde se observa
que algunos índices como SF, las versiones DI, Sil, etc., obtuvieron el mejor desempeño.
Sin embargo, es importante remarcar que la estimación correcta del número de grupos no
necesariamente implica un agrupamiento adecuado de los datos.
La Figura 4.1d muestra los resultados obtenidos para la categoría G4 en términos del
índice ARI. Se observa que el índice CH obtuvo el mejor desempeño de agrupamiento con un
valor ARI promedio de 0.61 ± 0.23; además, los índices COP, CI, PBM, SF, XB y Sil obtuvieron
un desempeño de agrupamiento ligeramente inferior al índice CH. En contraste, los índices
DB, mDB y CS obtuvieron un pobre desempeño de agrupamiento. Por otro lado, respecto
a la estimación del número de grupos en términos del índice NAE, la Figura 4.2d muestra
que diversos índices como CH, CS, Sil, todas las variantes DI, etc., presentaron una buena
estimación de K⇤ para la mayoría de los conjuntos de datos en la categoría G4 .

4.2.2 Balance entre los índices de evaluación


Los resultados presentados en las Figuras 4.1 y 4.2 en términos de los índices ARI y NAE
indican por separado dos aspectos relevantes de los IVGs: la calidad del agrupamiento
obtenido y la aproximación del número de grupos estimado, respectivamente. Por otro lado,
el compromiso entre los índices ARI y NAE se muestra en la Figura 4.3 en términos del índice
NED. Nótese que un valor NED cercano a cero indica un buen desempeño de agrupamiento y
un valor cercano a la unidad corresponde a un pobre desempeño del IVG.
De acuerdo con la prueba de Kruskal-Wallis (↵ = 0.05) con corrección de Bonferroni, a
continuación se describen los resultados estadísticos obtenidos para cada categoría de datos:

Los resultados en la Figura 4.3a para la categoría G1 indicaron que el índice Sil superó a
los demás IVGs, obteniendo un valor NED promedio de 0.01 ± 0.01. Adicionalmente, los
desempeños de los índices Sil y CH no fueron significativamente diferentes (p = 0.25).
48 4.3. Discusión de resultados

Los resultados en la Figura 4.3b para la categoría G2 señalaron que el índice Sil obtuvo el
mejor desempeño de agrupamiento con un valor NED promedio de 0.03 ± 0.03. Además, los
resultados de los índices CH y XB no presentaron diferencias significativas en relación a los
resultados del índice Sil (p = 0.91 y p = 0.11, respectivamente).

Los resultados en la Figura 4.3c para la categoría G3 indicaron que todos los IVGs estudiados
presentaron un pobre desempeño de agrupamiento. Sin embargo, el mejor desempeño lo
obtuvo el índice Sil, cuyos valores NED fueron menores que los obtenidos por los IVGs
restantes (0.52±0.17). Además, los siguientes índices no mostraron diferencias significativas
en relación al índice Sil (p = 1.00): XB, DB y gD31–gD53 (variantes del índice Dunn).

Los resultados en la Figura 4.3d para la categoría G4 indicaron que el índice CH obtuvo
el mejor desempeño de agrupamiento en términos del índice NED con un valor promedio
de 0.30 ± 0.20, y sus resultados fueron estadísticamente diferentes del resto de los IVGs
estudiados (p < 0.01).

4.3 Discusión de resultados


Los resultados experimentales revelaron que los índices Sil y CH obtuvieron un buen
desempeño de agrupamiento para las categorías G1 , G2 y G4 . Esto sugiere que ambos IVGs
son convenientes para el agrupamiento de datos linealmente separables con grupos bien
separados o inclusive con cierto nivel de traslape. El buen desempeño del índice Sil se
debe a su propiedad única de calcular para cada patrón en el conjunto de datos su propia
dispersión intragrupo y separación intergrupo; en contraste, otros IVGs como XB, DB, CH, etc.,
calculan estos criterios a nivel de agrupaciones mediante prototipos; por tanto, su grado de
refinamiento es menor. Por otro lado, CH es un índice basado en prototipos que se caracteriza
por estimar la separación intergrupo basándose en las distancias entre los prototipos de
grupos y un prototipo global. Los resultados sugieren que estas características en los IVGs
desempeñan un papel importante en el agrupamiento de datos linealmente separables.
También se observó que todos los IVGs estudiados son inapropiados para el agrupamiento
de datos no linealmente separables, es decir, aquellos conjuntos de datos en la categoría G3 .
Aunque el índice Sil superó a sus contrapartes, es notable que todos los IVGs presentaron un
desempeño de agrupamiento bajo. Este pobre desempeño está relacionado con dos factores:

Representación de los grupos: El uso de puntos prototipos para representar a los grupos
es un enfoque adecuado cuando los datos de entrada contienen grupos compactos e hiper-
4. Estudio comparativo de IVGs 49

esféricos. Sin embargo, cuando estas condiciones no se satisfacen, los prototipos de los
grupos podrían compartir la misma región en el espacio de características. Por ejemplo, el
índice CH utiliza centroides para representar a los grupos candidatos.
Medición de la similitud entre patrones: El uso de funciones de distancia basadas en
proximidad es un enfoque adecuado cuando los grupos se aproximan a una distribución
normal. Sin embargo, cuando esta condición de normalidad no se satisface, patrones de
grupos diferentes podrían considerarse próximos o similares aunque no haya adyacencia
entre ellos. Por ejemplo, la distancia Euclidiana utilizada en el índice Sil únicamente
informa sobre la proximidad que hay entre los puntos sin considerar otros aspectos como
la interconectividad entre ellos.

En ambos casos, los criterios de dispersión intragrupo y separación intergrupo no


se satisfacen adecuadamente, de modo que el IVG pierde su capacidad discriminatoria,
produciendo valores de aptitud bajos y, consecuentemente, soluciones de agrupamiento
inadecuadas. Por tanto, debido a estas limitaciones intrínsecas de los IVGs, se obtendrían
resultados similares aun si se utilizara un algoritmo de agrupamiento basado en optimización
global diferente al ACDE. De acuerdo a los dos factores antes mencionados, una alternativa
para abordar el problema de agrupamiento de datos no linealmente separables sería:
(i) utilizar un IVG que no esté basado en prototipos para representar a los grupos
y (ii) reemplazar en el IVG la métrica basada en proximidad por una basada en la
interconectividad de los datos.
En general, se recomienda usar los índices Sil y CH como funciones de aptitud en
los algoritmos de agrupamiento evolutivo para datos linealmente separables, incluso si
presentan traslape entre los grupos. El buen desempeño de agrupamiento de ambos índices
es consistente con los resultados experimentales reportados en la literatura por Xu et al. [83]
y Arbelaits et al. [84]. Finalmente, se debe considerar que los IVGs basados en prototipos
requieren calcular un número menor de distancias que aquellos IVGs basados en las posiciones
de todos los puntos (véase Sección 2.3). Por tanto, se sugiere utilizar el índice Sil para
conjuntos de datos de tamaño moderado y el índice CH para conjuntos de datos de mayor
tamaño.

4.4 Conclusiones
Este capítulo ha presentado un estudio comparativo de 22 IVGs, donde cada uno fue utilizado
como función objetivo en el algoritmo de agrupamiento ACDE. Para el estudio se consideraron
50 4.4. Conclusiones

varios conjuntos de datos de prueba con diferentes tipos de separabilidad. Además, los
agrupamientos obtenidos fueron validados usando el índice ARI, para medir la calidad del
agrupamiento, el índice NAE, para medir calidad del número de grupos, y el índice NED, para
medir el balance entre los índices ARI y NAE.
Este estudio sobre IVGs sirve como guía para seleccionar el índice más adecuado según
el tipo de separabilidad de los datos. Los resultados indicaron que el índice Silhouette
(Sil) obtuvo el mejor desempeño de agrupamiento en datos linealmente separables con
y sin traslape. Adicionalmente, el índice Calinski–Harabasz (CH) obtuvo un desempeño
adecuado en datos sintéticos linealmente separables y en datos del mundo real. Además, los
resultados experimentales revelaron que todos los IVGs estudiados presentaron un desempeño
de agrupamiento pobre al agrupar datos no linealmente separables.
Finalmente, el diseño de mecanismos para descubrir el tipo de separabilidad de los datos
con el fin de elegir la métrica apropiada se abordará en el siguiente capítulo.
ARI ARI

(c)
(a)

0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.8
XB Sil 1

Sil gD31
gD41 CH
gD43 DB
DB CI
gD53 gD41
gD33 CS
gD31 gD51
mDB PBM
gD51 COP
DI gD33
COP mDB
CH gD43
SDbw DI
CS gD53
Sym XB
PBM SDbw
CI SV

conjuntos de datos: (a) G1 , (b) G2 , (c) G3 , y (d) G4 .


SV Sym
SDB SDI
SDI SF
SF SDB

ARI ARI
(d)
(b)

0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.8
1

CH Sil
COP gD41
CI gD51
PBM XB
SF CI
XB gD31
Sil CH
gD43 DB
gD53 Sym
gD33 mDB
DI SV
SV gD33
gD41 gD43
gD31 gD53
gD51 CS
Sym DI
SDB SDB
SDI SDI
SDbw PBM
DB SDbw
mDB COP
CS SF
Figura 4.1: Valores ARI obtenidos por cada IVG estudiado. Se presentan los resultados generales para cada categoría de

51 4. Estudio comparativo de IVGs


52 4.4. Conclusiones

NAE NAE

(c)
(a)

0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.8
1

SF Sil
gD33 gD33
gD53 gD53
gD43 CH
gD31 gD43
gD51 gD31
gD41 mDB
mDB gD41
XB gD51
Sil CS
Sym DB
SV CI
CS XB
DI Sym
DB SF
SDI SDB
SDB COP
CH PBM

conjuntos de datos: (a) G1 , (b) G2 , (c) G3 , y (d) G4 .


PBM SV
COP DI
CI SDI
SDbw SDbw

NAE NAE
(d)
(b)

0
0.2
0.4
0.6
0.8
1
0
0.2
0.4
0.6
0.8
1

CS Sil
CH CH
gD41 CS
gD33 SDB
gD43 SV
Sil gD33
Sym gD53
SF DB
gD51 gD41
XB gD51
gD53 gD31
gD31 gD43
mDB mDB
DB XB
SV DI
SDB Sym
PBM SF
SDI SDI
DI CI
COP PBM
CI COP
SDbw SDbw
Figura 4.2: Valores NAE obtenidos por cada IVG estudiado. Se presentan los resultados generales para cada categoría de
4. Estudio comparativo de IVGs
(a) 1
(b) 1

0.8 0.8

0.6 0.6
NED

NED
0.4 0.4

0.2 0.2

0 0
Sil
gD31
CH
DB
CI
gD41
gD51
CS
COP
gD33
PBM
mDB
gD43
gD53
XB
DI
SV
Sym
SDI
SF
SDB
SDbw

Sil
gD41
gD51
XB
gD31
CH
mDB
gD33
gD43
gD53
DB
CS
CI
Sym
DI
SV
SDB
SDI
PBM
SF
COP
SDbw
(c) 1 (d) 1

0.8 0.8

0.6 0.6
NED

NED
0.4 0.4

0.2 0.2

0 0
Sil
gD43
XB
gD33
gD53
gD41
DB
gD31
gD51
mDB
DI
SV
Sym
CS
SF
SDI
SDB
COP
CH
PBM
CI
SDbw

CH
PBM
SF
XB
Sil
COP
CI
gD53
gD43
gD33
gD41
gD31
gD51
Sym
DI
SDI
SDB
SV
DB
mDB
CS
SDbw
Figura 4.3: Valores NED obtenidos del balance entre los índices ARI y NAE para cada IVG. Se presentan los resultados para
cada categoría de datos: (a) G1 , (b) G2 , (c) G3 , y (d) G4 . El símbolo “ 4” indica que los resultados del IVG no son estadísticamente
diferentes (p > 0.05) con respecto al IVG con el mejor desempeño en términos del índice NED, señalado con el símbolo “ N”.

53
Agrupamiento automático evolutivo
5
con adaptación del criterio de similitud

E L estudio del estado del arte en el Capítulo 3 reveló una notable cantidad de investigación
sobre el agrupamiento automático de datos (AAD) usando algoritmos metaheurísticos,
donde la mayoría de los enfoques revisados se han centrado en el agrupamiento de datos
linealmente separables. Por otro lado, en el estudio comparativo de IVGs reportado en el
Capítulo 4 se observó que algunos de ellos son capaces de guiar adecuadamente la búsqueda
del algoritmo de agrupamiento metaheurístico (AAM) cuando se realiza el agrupamiento de
datos linealmente separables. No obstante, cuando los datos no satisfacen la propiedad de
separabilidad lineal, el IVG pierde su capacidad discriminatoria principalmente a que se
utilizan funciones de distancias basadas en proximidad para medir la similitud entre patrones,
sin considerar la interconectividad entre ellos. Por tanto, una alternativa para abordar el
problema AAD y el agrupamiento de datos no linealmente separables es considerar el grado
de interconectividad entre los puntos como un criterio de similitud en el IVG.
A pesar de los avances relacionados al problema AAD, los IVGs aun utilizan métricas fijas
que limitan el funcionamiento del AAM en datos con distintos tipos de separabilidad. Por
tanto, en este capítulo se propone un método para adaptar la métrica en el IVG en función
del tipo de separabilidad de los datos de entrada. Para ello se consideran dos métricas que
se alternan dependiendo del tipo de separabilidad, una basado en proximidad, utilizando la
distancia Euclidiana, y otra basado en conectividad, utilizando la distancia MED. La Figura 5.1

55
56 5.1. Influencia de la métrica en el IVG

muestra el diagrama del enfoque propuesto para abordar el problema AAD, el cual posee dos
componentes principales: un selector de la métrica basado en un clasificador y un algoritmo
de agrupamiento metaheurístico.
Conjunto de
datos (X
X)

Extracción de

Selector cSVM
Distancia características
Euclidiana

Distancia MED Algoritmo de


agrupamiento
automático (CADE)

Agrupamiento (C
C)
Figura 5.1: Diagrama del enfoque propuesto que incluye al selector de la métrica (cSVM) y al
algoritmo de agrupamiento automático (CADE).

Este capítulo se organiza de la siguiente forma. La Sección 5.1 presenta un estudio


preliminar sobre la influencia de la métrica en la calidad de solución dada por un IVG
de acuerdo al tipo de separabilidad de los datos. La Sección 5.2 describe la propuesta del
selector del criterio de similitud basado en un clasificador denominado cSVM. Finalmente,
la Sección 5.3 presenta los detalles del algoritmo de agrupamiento metaheurístico propuesto
denominado CADE.

5.1 Influencia de la métrica en el IVG


En esta sección primero se presenta el concepto de criterio de similitud y se describe su
importancia en la formación de grupos de datos con diferentes tipos de separabilidad.
Posteriormente, se presenta un análisis sobre la influencia del criterio de similitud en el IVG
cuando se aborda el problema AAD.

5.1.1 Criterios de similitud


El criterio de similitud ayuda a revelar la organización de los patrones para identificar grupos
sensibles mediante una métrica. Considerando el espacio o dominio donde se mide la similitud
entre patrones, se distinguen dos enfoques principales:
5. Agrupamiento automático evolutivo 57

(a) (b) (c)


1 1 1

Conjunto de datos 0.5 0.5 0.5


original

0 0 0
0 0.5 1 0 0.5 1 0 0.5 1
0.5 0.5
0.5

Proyección con la 0
distancia Euclidiana 0 0

−0.5
−0.5 0 0.5 −0.5 0 0.5 −0.5 0 0.5
−3
x 10
0.04 0.03 3
0.03 0.02 2
0.02
Proyección con la 0.01 1
distancia MED 0.01
0 0
0

−0.01 −0.01 −1

−0.02 −0.02 −2
−0.1 0 0.1 −0.02 0 0.02 0.04 −0.1 0 0.1

Figura 5.2: Proyecciones de MDS de los conjuntos de datos (a) Orange, (b) Data_5_2 y (c)
Spirals obtenidas por las distancias Euclidiana y MED.

Métricas basadas en proximidad: La similitud entre patrones se mide de acuerdo a su


proximidad generalmente en el espacio Euclidiano. Usualmente, este criterio está basado
en la distancia Euclidiana y permite descubrir grupos hiper-esféricos y compactos, es decir,
datos linealmente separables [4].

Métricas basado en conectividad: La similitud entre patrones se mide de acuerdo a su


grado de conectividad generalmente en el dominio de teoría de grafos. Un ejemplo de este
criterio es la distancia MED, la cual permite descubrir grupos con formas arbitrarias, es
decir, datos no linealmente separables [13].

Para visualizar cómo una métrica calcula la similitud entre patrones, se puede utilizar
la técnica de escalamiento multidimensional (MDS, por sus siglas en Inglés). Esta técnica
realiza una proyección de los datos a un nuevo espacio coordenado a partir de una matriz
58 5.1. Influencia de la métrica en el IVG

de distancias de tamaño N ⇥ N, la cual contiene las distancias entre cada par de puntos,
donde N es el número de patrones en el conjunto de datos. A partir de un conjunto de datos
se generan las matrices de distancias Euclidiana y MED. Entonces, para ambas matrices se
generan las proyecciones de MDS y se obtienen dos nuevos conjuntos de datos proyectados a
partir del conjunto original. La Figura 5.2 presentan las proyecciones MDS de las distancias
Euclidiana y MED para los conjuntos de datos Orange, Data_5_2 y Spirals correspondientes
a las categorías G1 , G2 y G3 , respectivamente.
En la Figura 5.2 se observa que las proyecciones con la métrica Euclidiana preservan
la estructura de los grupos para todos los casos, mientras que con la métrica MED se
modifica sustancialmente la estructura de los grupos. Es notable que para grupos sin traslape
(e.g., Orange y Spirals), las proyecciones con la métrica MED generan grupos linealmente
separables. Sin embargo, para grupos traslapados (e.g., Data_5_2), las proyecciones obtenidas
mantienen el traslape de los grupos.
Para confirmar estas observaciones y determinar las ventajas de las distancias Euclidiana
y MED, a continuación se presenta un estudio donde cada métrica es utilizada como criterio
de similitud por un IVG para realizar el agrupamiento automático de datos.

5.1.2 Experimentos y resultados


El objetivo del siguiente análisis es revelar en qué tipos de separabilidad es conveniente
utilizar la distancia Euclidiana y la distancia MED como criterio de similitud en el IVG. Para
ello, se han utilizado todos los conjuntos de datos sintéticos mencionados en la Sección 2.6.1.
Como algoritmo de agrupamiento subyacente se utilizó la variante DE/rand/1/bin que utiliza
la estrategia de mutación básica. Este algoritmo se denominó CDE (clustering using differential
evolution), el cual no incorpora componentes adicionales como la adaptación o variación de
los parámetros de ED. El objetivo es analizar únicamente el comportamiento de las métricas
en los diferentes tipos de separabilidad sin la influencia de factores externos que pudieran
sesgar los resultados.
El algoritmo CDE se ejecutó 31 veces para cada conjunto de datos de prueba, donde
el criterio de terminación está definido en función del número de evaluaciones (NE) de la
función objetivo. La configuración de los parámetros utilizados por el algoritmo DE son [1]:
número de máximo de evaluaciones, NE = 1E5; tamaño de la población, NP = 10 ⇥ D; factor
de escalamiento de mutación, F = 0.5; tasa de recombinación, Cr = 0.8; y número máximo de
grupos, Kmax = 20. Además, de acuerdo a los hallazgos presentados en el Capítulo 4, se utilizó
el índice Silhouette como la función objetivo.
5. Agrupamiento automático evolutivo 59

Tabla 5.1: Resultados de media y desviación estándar (en paréntesis) obtenidos por las distancias
Euclidiana y MED usando el algoritmo CDE en términos de los índice ARI y NSR. Además, se
presentan los resultados obtenidos por los algoritmos K-means y Single-linkage. “Cat.” indica la
categoría del tipo de separabilidad y “#” denota el número de conjuntos de datos en una colección.
CDEeuc CDEmed K-means Single-linkage
Cat. Colección # ARI NSR ARI NSR ARI ARI
LSD2C2 10 1.00 (0.02) 1.00 (0.06) 1.00 (0.01) 0.97 (0.16) 1.00 (0.00) 1.00 (0.00)
LSD2C4 10 1.00 (0.00) 1.00 (0.00) 1.00 (0.00) 1.00 (0.00) 1.00 (0.03) 1.00 (0.00)
LSD2C6 10 1.00 (0.00) 1.00 (0.00) 1.00 (0.00) 1.00 (0.00) 0.93 (0.11) 1.00 (0.00)
G1
LSD2C8 10 1.00 (0.00) 1.00 (0.00) 1.00 (0.00) 1.00 (0.00) 0.92 (0.08) 1.00 (0.00)
LSD2C10 10 1.00 (0.00) 1.00 (0.00) 1.00 (0.00) 1.00 (0.00) 0.90 (0.08) 1.00 (0.00)
LSD 8 0.76 (0.24) 0.59 (0.49) 0.95 (0.12) 0.83 (0.38) 0.82 (0.24) 1.00 (0.00)

0.97 (0.12) 0.94 (0.12) 0.99 (0.05) 0.97 (0.17) 0.93 (0.13) 1.00 (0.00)

LSOD2C2 10 0.98 (0.02) 1.00 (0.00) 0.88 (0.08) 0.43 (0.50) 0.98 (0.02) 0.20 (0.42)
LSOD2C4 10 0.92 (0.02) 1.00 (0.00) 0.54 (0.13) 0.12 (0.32) 0.92 (0.02) 0.05 (0.16)
LSOD2C6 10 0.92 (0.02) 1.00 (0.00) 0.40 (0.25) 0.02 (0.15) 0.91 (0.03) 0.00 (0.00)
G2
LSOD2C8 10 0.90 (0.01) 0.99 (0.08) 0.32 (0.24) 0.05 (0.21) 0.90 (0.03) 0.00 (0.00)
LSOD2C10 10 0.87 (0.14) 0.92 (0.27) 0.52 (0.28) 0.11 (0.31) 0.90 (0.04) 0.02 (0.03)
LSOD 8 0.88 (0.19) 0.80 (0.40) 0.56 (0.26) 0.10 (0.30) 0.93 (0.09) 0.18 (0.26)

0.91 (0.10) 0.95 (0.20) 0.54 (0.28) 0.13 (0.35) 0.92 (0.05) 0.07 (0.22)

NLSD2C2 10 0.30 (0.02) 0.00 (0.00) 0.98 (0.12) 0.97 (0.17) 0.00 (0.00) 1.00 (0.00)
NLSD2C4 10 0.46 (0.02) 0.00 (0.00) 1.00 (0.00) 1.00 (0.00) 0.37 (0.03) 1.00 (0.00)
NLSD2C6 10 0.05 (0.05) 0.59 (0.49) 1.00 (0.00) 1.00 (0.00) 0.01 (0.00) 1.00 (0.00)
G3
NLSD2C8 10 0.45 (0.02) 0.00 (0.00) 0.99 (0.02) 0.90 (0.30) 0.64 (0.02) 1.00 (0.00)
NLSD2C10 10 0.24 (0.03) 0.06 (0.24) 1.00 (0.00) 1.00 (0.00) 0.20 (0.00) 1.00 (0.00)
NLSD 8 0.30 (0.22) 0.03 (0.18) 0.90 (0.24) 0.83 (0.38) 0.20 (0.18) 1.00 (0.00)

0.30 (0.17) 0.12 (0.32) 0.98 (0.10) 0.95 (0.21) 0.24 (0.23) 1.00 (0.00)

Por otro lado, en el experimento también se utilizaron dos algoritmos convencionales,


K-means y Single-linkage, como métodos de referencia. Ambos algoritmos requieren como
parámetro de entrada el número correcto de grupos K⇤ ; en K-means se utiliza para formar
exactamente K⇤ prototipos, mientras que en Single-linkage se utiliza para determinar el punto
de corte del dendrograma (colección de agrupamientos). Además, debido a que K-means
se inicializa aleatoriamente, se realizaron 31 ejecuciones para cada conjunto de datos; en
contraste, para Single-linkage se realizó únicamente un experimento para cada conjunto de
datos debido a que se trata de un método de agrupamiento determinista.
60 5.1. Influencia de la métrica en el IVG

(a) 1 (b) 1 (c) 1

0.8 0.8 0.8

0.6 0.6 0.6


ARI

ARI

ARI
0.4 0.4 0.4

0.2 0.2 0.2

0 0 0
K-means

K-means

K-means
CDE euc

CDE med

Single-linkage

CDE euc

CDE med

Single-linkage

CDE euc

CDE med

Single-linkage
Figura 5.3: Valores ARI obtenidos por los algoritmos de agrupamiento para las diferentes categorías
de datos: (a) G1 , (b) G2 y (c) G3 . El símbolo “ 4” indica que los resultados del algoritmo no son
estadísticamente diferentes (p > 0.05) con respecto al algoritmo con el mejor desempeño, señalado
con el símbolo “ N”, en términos del índice ARI.

La Tabla 5.1 presenta los resultados obtenidos para el algoritmo CDE basado en distancia
Euclidiana (CDEeuc ) y basado en distancia MED (CDEmed ), así como para los algoritmos K-
means y Single-linkage. También, en la Tabla 5.1 se presentan los resultados para cada
categoría, donde se han sombreado los mejores valores, mientras que los resultados
estadísticamente similares con respecto al mejor desempeño han sido indicados en negrita.
Para ello se aplicó la prueba de Kruskal–Wallis (↵ = 0.05) con corrección de Bonferroni.
Adicionalmente, en la Figura 5.3 se muestran los resultados obtenidos por los diferentes
algoritmos estudiados y se observó lo siguiente para cada tipo de separabilidad:

Para los conjuntos de datos en la categoría G1 , se observó que los algoritmos basados en
la distancia Euclidiana y MED obtuvieron un desempeño de agrupamiento adecuado en
términos de los índices ARI y NSR. Por otro lado, los algoritmos K-means y Single-linkage
también presentaron un buen desempeño de agrupamiento en términos del índice ARI,
donde el desempeño entre los algoritmos Single-linkage y CDEmed no son significativamente
diferentes (p = 0.053).

Para los datos en la categoría G2 , se observó que los algoritmos CDEeuc y K-means obtuvieron
el mejor desempeño de agrupamiento con un valor de ARI promedio cercano a 0.92. En
contraste, los algoritmos CDEmed y Single-linkage presentaron un pobre desempeño de
5. Agrupamiento automático evolutivo 61

agrupamiento en términos del índice ARI. Además, los resultados de los algoritmos K-
means y CDEeuc no presentaron diferencias significativas (p = 1.00).

Para los datos en la categoría G3 , se observó que los algoritmos CDEmed y Single-
linkage obtuvieron el mejor desempeño de agrupamiento; sus resultados no fueron
significativamente diferentes (p = 0.40). En contraste, los algoritmos CDEeuc y K-means
presentaron un pobre desempeño de agrupamiento en términos del índice ARI.

En general, se observó que la distancia Euclidiana basada en la proximidad de los datos


obtuvo un buen desempeño en las categorías G1 y G2 , es decir, en datos linealmente separables
con grupos bien separados o inclusive con traslape. Por otro lado, la distancia MED basada
en la conectividad de los datos presentó un desempeño de agrupamiento adecuado en las
categorías G1 y G3 , es decir, en datos lineal y no linealmente separables con grupos bien
separados. No obstante, la distancia MED, debido al alto nivel de interconexión entre patrones
de diferentes grupos, presentó un desempeño bajo para los datos en la categoría G2 . Además,
se observó que ninguno de los algoritmos de agrupamiento convencionales logró un buen
desempeño de agrupamiento considerando todos los tipos de separabilidad.
Por tanto, a partir de este estudio experimental se concluye que la adaptación del criterio
de similitud en función del tipo de separabilidad de los datos de entrada podría mejorar el
desempeño del algoritmo de agrupamiento para abordar el problema AAD.

5.2 Selector de la métrica

Para seleccionar una métrica se propone utilizar un clasificador basado en una máquina de
vectores de soporte (SVM, por sus siglas en Inglés) debido a que es un enfoque robusto para la
generalización y resuelve problemas de clasificación no lineales. Se utiliza la distancia MED
para agrupar datos lineal y no linealmente separables sin traslape (i.e., categorías G1 y G3 ),
mientras que la distancia Euclidiana se utiliza para agrupar datos linealmente separables con
traslape (i.e., categoría G2 ). La Figura 5.4 muestra el diagrama a bloques del entrenamiento y
evaluación del selector de la métrica, el cual consiste en tres etapas principales: (i) extracción
de características, (ii) selección de características y (iii) clasificación de los datos y evaluación
del clasificador.
62 5.2. Selector de la métrica

Extracción de Selección de
Datos características características

Validación cruzada
dejando-uno-fuera
datos de prueba

datos de
entrenamiento

Entrenamiento Clasificación Evaluación del


SVM SVM clasificador

Figura 5.4: Diagrama de flujo del selector del criterio de similitud basado en SVM.

5.2.1 Extracción de características


El objetivo de esta etapa es generar un conjunto de características a partir de los 174
conjuntos de datos sintéticos presentados en la Sección 2.6.1 que poseen diferentes tipos
de separabilidad. Para la generación de las características se utilizaron diez criterios de
separación intergrupo y diez criterios de dispersión intragrupo, los cuales fueron extraídos
de los IVGs estudiados en el Capítulo 4. Por cuestiones de brevedad, las formulaciones
matemáticas de los criterios de agrupamiento utilizados se presentan en el Apéndice C.
En primer lugar, a partir de un conjunto de datos, se genera una colección de
agrupamientos con formas hiper-esféricas utilizando el algoritmo K-means con diferentes
valores de K. Al evaluar estas particiones con los criterios de agrupamiento se espera que
converjan más rápidamente para datos que efectivamente son linealmente separables y,
por otra parte, se espera una lenta convergencia para datos no linealmente separables. De
este modo el objetivo es caracterizar los comportamientos de convergencia en términos
de dispersión intragrupo y separación intergrupo. Este análisis servirá para determinar
las características más discriminantes que deberán usarse para distinguir entre tipos de
separabilidad de los datos de entrada. El análisis de los criterios de agrupamiento consiste
en los siguientes pasos:

Paso 1. Para el i-ésimo conjunto de datos X:

(i) Ejecutar el algoritmo K-means sobre el conjunto X considerando diferentes valores


p
para el parámetro K, {Kmı́n , . . . , Kmáx }, donde Kmı́n = 1 y Kmáx = N. Por consiguiente, se
genera una colección de Kmáx agrupamientos, C = {C1 , C2 , . . . , CpN }. Generalmente se
5. Agrupamiento automático evolutivo 63

0.9

valores de índice
Algoritmo CK Criterio de ui,j 0.6
Conjunto
de datos K-means agrupamiento
0.3

0.1
p
K = [Kmin , Kmax ] 0 5 10 15 20 … N

Número de grupos

Figura 5.5: Diagrama del análisis de datos para el i-ésimo conjunto de datos y el j-ésimo criterio.

p
asume que el número correcto de grupos se encuentra en el rango [1, N] [94], ya que
cuando K ! N se corre el riesgo de sobreajustar el agrupamiento de los datos [95].
(ii) Utilizar el j-ésimo criterio de agrupamiento (intragrupo o intergrupo) para evaluar
todas las soluciones
h en la colección i C , de modo que cada criterio genera un
vector ui,j = ui,j,1 , ui,j,2 , . . . , ui,j,pN que denota los valores de las aptitudes de las
soluciones de agrupamiento.

Paso 2. Repetir el Paso 1 hasta considerar todos los conjunto de datos.

La Figura 5.5 ilustra los pasos descritos en el procedimiento anterior. Asimismo, la


Figura 5.6 muestra las gráficas de convergencia obtenidas por los 20 criterios de agrupamiento
considerando todos los conjuntos de datos de prueba. Al analizar la convergencia de los
diferentes criterios de agrupamiento, se observó que los criterios de dispersión intragrupo
tienden a discriminar mejor entre tipos de separabilidad cuando el valor de K tienden a uno.
Por el contrario, los criterios de separación intergrupo tienden a discriminar mejor cuando los
p
valores de K tienden a N. Con base en estas observaciones es posible caracterizar el tipo
de separabilidad de los datos. Por tanto, para el i-ésimo conjunto de datos y para el j-ésimo
criterio de agrupamiento se selecciona un valor único a partir de su respectivo vector ui,j , es
decir, se extrae una característica mediante la siguiente regla:
8
<ui,j,1 si el j-ésimo criterio está basado en dispersión intragrupo
vi,j = . (5.1)
:u p si el j-ésimo criterio está basado en separación intergrupo
i,j, N

El resultado de la extracción de características es un espacio de atributos, denotado por


X = {v1 , v2 , . . . , vN } 2 RD , donde N = 174 es el número total de conjuntos y D = 20 denota
el número de criterios de agrupamiento. Además, cada muestra vi 2 X es etiquetada de
acuerdo a su tipo de separabilidad, donde las etiquetas de clase 1, 2 y 3 se asignan a datos en
las categorías G1 , G2 y G3 , respectivamente.
64 5.2. Selector de la métrica

Categoría G1 Categoría G2 Categoría G3

wgs1 wgs2 wgs3


(a)
0.25 (b) 2 (c) 1.5
Valor de aptitud

Valor de aptitud

Valor de aptitud
0.2 1.5
1
0.15
1
0.1
0.5
0.05 0.5

0 p 0 p 0 p
1 3 5 7 9 11 13 15 17 19 N 1 3 5 7 9 11 13 15 17 19 N 1 3 5 7 9 11 13 15 17 19 N
Número de grupos Número de grupos Número de grupos

(d) 5
wgs4 (e) 4
wgs5 (f) 1
wgs6
Valor de aptitud

Valor de aptitud

Valor de aptitud
4 3 0.8
3 0.6
2
2 0.4
1 1 0.2
0 p 0 p 0 p
1 3 5 7 9 11 13 15 17 19 N 1 3 5 7 9 11 13 15 17 19 N 1 3 5 7 9 11 13 15 17 19 N
Número de grupos Número de grupos Número de grupos
5
x 10
(g) 8
wgs7 (h) 0.5 wgs8 (i) 4
wgs9

Valor de aptitud
Valor de aptitud

Valor de aptitud

6 0.4 3
0.3
4 2
0.2
2 0.1 1

0 p 0 p 0 p
1 3 5 7 9 11 13 15 17 19 N 1 3 5 7 9 11 13 15 17 19 N 1 3 5 7 9 11 13 15 17 19 N
Número de grupos Número de grupos Número de grupos

wgs10 bgs1 bgs2


(j) 6 (k) 400 (l) 5

Valor de aptitud
Valor de aptitud
Valor de aptitud

5 300 4
4 3
200
3 2
2 100 1
1 p 0 p 0 p
1 3 5 7 9 11 13 15 17 19 N 1 3 5 7 9 11 13 15 17 19 N 1 3 5 7 9 11 13 15 17 19 N
Número de grupos Número de grupos Número de grupos

(m) bgs3 (n) bgs4 (o) bgs5


1.4 0.5 0.4
Valor de aptitud

Valor de aptitud

Valor de aptitud

1.2 0.4 0.3


1 0.3
0.2
0.8 0.2
0.6 0.1 0.1

0.4 p 0 p 0 p
1 3 5 7 9 11 13 15 17 19 N 1 3 5 7 9 11 13 15 17 19 N 1 3 5 7 9 11 13 15 17 19 N
Número de grupos Número de grupos Número de grupos
bgs6 bgs7 bgs8
(p) 40 (q) 1 (r) 0.8
Valor de aptitud

Valor de aptitud

Valor de aptitud

30 0.8 0.6
0.6
20 0.4
0.4
10 0.2 0.2

0 p 0 p 0 p
1 3 5 7 9 11 13 15 17 19 N 1 3 5 7 9 11 13 15 17 19 N 1 3 5 7 9 11 13 15 17 19 N
Número de grupos Número de grupos Número de grupos
bgs9 bgs10
(s)1.4 (t) 0.8
Valor de aptitud
Valor de aptitud

1.2 0.6
1
0.4
0.8
0.6 0.2

0.4 p 0 p
1 3 5 7 9 11 13 15 17 19 N 1 3 5 7 9 11 13 15 17 19 N
Número de grupos Número de grupos

Figura 5.6: Gráficas de convergencia de cada criterio de agrupamiento para las tres categorías G1 ,
G2 y G3 : (a)–(j) criterios de dispersión intragrupo y (k)–(t) criterios de separación intergrupo. Las
gráficas muestran el valor promedio de los criterios para cada categoría de datos.
5. Agrupamiento automático evolutivo 65

5.2.2 Selección de características


El objetivo de esta etapa es encontrar el subconjunto de características que maximicen el
desempeño de clasificación. En este trabajo se utilizó la técnica de mínima-redundancia-
máxima-relevancia (mRMR) para el ordenamiento de características [96], donde la primera
característica ordenada es aquella que presenta la mayor relevancia. Mediante información
mutua se evalúa la relevancia de una característica en relación a la variable de clase, así como
también la redundancia entre pares de características. Debido a que la técnica mRMR requiere
variables discretas, se realiza una cuantificación de las variables continuas de acuerdo a un
número de niveles de cuantificación, Q.
Posteriormente, se utiliza un clasificador SVM para evaluar gradualmente subespacios de
características ordenadas, donde se maximiza el desempeño de clasificación para seleccionar
las primeras m características ordenadas.

5.2.3 Clasificador basado en SVM

Las máquinas de vectores de soporte (SVM, por siglas en Inglés) fueron introducidas en
la década de 1990 por Vapnik y sus colaboradores [97]. Originalmente las SVMs fueron
desarrolladas para resolver problemas de clasificación binaria, aunque actualmente existe la
generalización para el caso multiclase, donde comúnmente se utiliza el esquema uno-contra-
uno para descomponer el problema de varias clases en varios subproblemas binarios [98].
La idea básica de la SVM es construir una única solución que tenga el máximo margen, es
decir, el hiperplano que separe los datos de clases diferentes y se encuentre más alejado de
cualquier patrón de entrenamiento (ver Figura 5.7a). Por tanto, el objetivo del entrenamiento
de un clasificador SVM es encontrar el hiperplano óptimo que provea el margen más amplio
entre clases. Por otro lado, para construir un hiperplano de decisión entre clases con traslape,
el clasificador debe ser colocado entre dos áreas densamente pobladas y en una región
donde los datos están más dispersos, de modo que se busca una buena generalización
(ver Figura 5.7b). Adicionalmente, el clasificador SVM puede separar clases no linealmente
separables usando núcleos no lineales como la función Gaussiana. Los datos son mapeados
a un espacio de alta dimensionalidad mediante el núcleo no lineal, donde se espera con alta
probabilidad que las clases sean linealmente separables [4].
La evaluación del clasificador SVM considera una etapa de entrenamiento, para generar
el modelo de clasificación (i.e., pesos del hiperplano y vectores de soporte), y otra etapa
66 5.2. Selector de la métrica

(a) x2 (b) x2
mala generalización
+
R1 R1
buena
-

o
generalización

tim
óp
o n
la
rp
pe
hi
+
-

R2
R2
x1 x1

Figura 5.7: SVM con clases separables en (a) y con clases separables con traslape en (b).

de prueba, para estimar el desempeño de clasificación, en donde intervienen las siguientes


técnicas:

Validación cruzada dejando-uno-fuera: Para garantizar que los resultados del clasificador
son independientes de la partición entre datos de entrenamiento y prueba se considera la
técnica de validación cruzada dejando-uno-fuera. Esta técnica se define como: para un
conjunto de datos con N muestras, se ejecutan N experimentos, de modo que en cada
experimento se usan N - 1 muestras para entrenar y la observación restante para probar. El
error estimado se obtiene promediando los N errores de todos los experimentos [99].

Índice de desempeño de clasificación: El índice de desempeño es una función que indica


la calidad del clasificador y generalmente se calcula a partir de una matriz de confusión. Se
utilizó el coeficiente de correlación de Matthews (MCC, por sus siglas en Inglés) para medir
la efectividad global del clasificador SVM. El índice MCC regresa un valor en el intervalo
[-1, 1] y debe tender a la unidad para indicar una buena clasificación [100].

El procedimiento de entrenamiento y prueba del clasificador SVM se presenta en el


Algoritmo 1. El experimento evaluó Q = 10 niveles de cuantificación (2, . . . , 10), 174 conjuntos
de datos de prueba (N = 174) y 20 características (D = 20) obtenidas de los criterios de
agrupamiento intragrupo e intergrupo. Cabe señalar que los valores de cada característica
en X se normalizaron en el rango [-1, 1] mediante normalización softmax, la cual reduce la
influencia de valores atípicos [39].
Cabe señalar que el entrenamiento del clasificador SVM (línea 10 en el Algoritmo 1)
considera una búsqueda de los parámetros de penalización del margen, C, y ancho de banda
de la función Gaussiana, . Comúnmente, este proceso se realiza mediante validación cruzada
estratificada con k-pliegues y búsqueda malla. Primero, el conjunto de entrenamiento se
5. Agrupamiento automático evolutivo 67

divide en k conjuntos disjuntos, donde k - 1 conjuntos se usan para entrenar el modelo


y el conjunto restante para validar la generalización del modelo. Este proceso se repite
hasta que todos los conjuntos hayan sido de validación. Entonces, el error de validación
cruzada se calcula promediando los errores de los k conjuntos de validación dado un par
de parámetros (C, ) definidos sobre una malla bidimensional. Finalmente, se selecciona el
par (C, ) con el menor error de validación cruzada para entrenar el modelo final de SVM.
En este estudio se utilizó k = 10 pliegues de validación cruzada y los valores de la búsqueda
malla fueron C = {2-5 , 2-4 , . . . , 215 } y = {2-15 , 2-14 , . . . , 23 } [101]. La complejidad temporal
del entrenamiento del clasificador SVM es O(N3 ), donde N es el número de patrones [102].

Algoritmo 1: Pseudocódigo para la evaluación del clasificador SVM.


Input: Conjunto de datos X con N = 174 y D = 20, vector de etiquetas de clase Y y niveles de
cuantificación, Q = 10.
Output: El mejor modelo de clasificación M ⇤ y su respectivo valor MCC⇤ .
1 for q 2 to Q do
2 X¯ = mrmr(X , Y , q) /* Ordenamiento de las características */
3 for d 1 to D do
4 X¯ d = vi,k 2 X¯ , 8 j = 1, . . . , N y k = 1, . . . , d /* Selección de las características */
5 for i 1 to N do
/* División de los datos usando validación cruzada dejando-uno-fuera */
6 X¯train
d = v 2 X¯ d , 8 j = 1, . . . , N, j 6= i
j /* Patrones de entrenamiento */
7 d
Ytrain = yj 2 Y , 8 j = 1, . . . , N, j 6= i /* Etiquetas de clase de entrenamiento */
8 ¯
Xtest = vi 2 X
d ¯ d /* Patrón de prueba */
9 Ytest = yi 2 Y /* Etiqueta de clase de prueba */
/* Entrenamiento y generación del modelo de clasificación */
10 M = trainSVM(X¯train
d ,Y
train )
/* Clasificación del patrón de prueba y predicción de la clase */
11 Y¯ [i] = classifySVM(X¯test
d ,Y
test , M )
12 end
13 MCC[q, d] = mcc(Y¯ , Y ) /* Evaluar el desempeño de clasificación */
14 end
15 end
16 MCC⇤ = máxQ
q=2 máxd=1 MCC[q, d]
D
/* El mejor valor de MCC */

q=2 argmind=1 MCC[q, d]


= argminQ D
17 [q⇤ , d⇤ ] /* Los índices del mejor valor de MCC */
18 X¯ = mrmr(X , Y , q⇤ ) /* Ordenamiento de las características */
X¯ d = vi,k 2 X¯ , 8 j = 1, . . . , N y k = 1, . . . , d⇤

19 /* Selección de las características */
M ⇤ = trainSVM(X¯ d , Y )

20
68 5.2. Selector de la métrica

(a) (b) 1
0.96 Q=2
0.98
0.94
0.96
0.92
Valor MCC

0.94

Valor MCC
0.9
0.92
0.88 0.9
0.86 0.88
10
8 20
Niv 16 18 0.86
el d 6
e cua 4 10 12 14
ntiz 8 as 0.84
2 4 6 rístic
aci racte 0 2 4 6 8 10 12 14 16 18 20
ón
(Q
0 0 2 ro de ca
) Núme Número de características

Figura 5.8: Valores MCC obtenidos por el clasificador SVM: (a) paisaje de aptitud para diferentes
valores de cuantificación (Q) y número de características y (b) valores MCC para el mejor nivel de
cuantificación, Q = 2.

5.2.4 Resultados del clasificador basado en SVM

Tabla 5.2: Características del mejor modelo generado por el clasificador SVM.
Q Criterios Valor MCC Matriz de confusión Regiones de decisión
1

G1
0.5

Y
2 G1 G2 G3 3
wgs4

2 wgs1 y wgs4 0.9571


¯
G1 55
4 0
1
57
2
1 5
0
G2 G2
Y G2
G3 1 0 57
−0.5

G3
−1
−1 −0.5 0 0.5 1
wgs1

En esta sección se presentan los resultados obtenidos por el clasificador SVM. El objetivo es
determinar el modelo de clasificación con la mejor configuración de parámetros en términos
del índice MCC a partir del conjunto de características X .
La Figura 5.8a muestra el paisaje de aptitud generado por el clasificador SVM en
términos del índice MCC. Se observa que para un nivel de cuantificación de Q = 2 se
obtiene el mejor desempeño del clasificador SVM. La Figura 5.8b muestra dichos valores
5. Agrupamiento automático evolutivo 69

de MCC, donde se observa que el máximo se obtuvo cuando únicamente se consideran las
dos primeras características ordenadas, que corresponden a los criterios de agrupamiento
basados en dispersión intragrupo: wgs1 y wgs4, los cuales proporcionan la información más
discriminante para distinguir entre tipos de separabilidad.
La Tabla 5.2 muestra las características del mejor modelo de clasificación en términos del
índice MCC. Se muestra el mejor nivel de cuantificación, los criterios de agrupamiento que
aportan mayor información discriminante, el mejor valor de MCC obtenido por el clasificador,
la matriz de confusión, y las regiones de decisión para las clases G1 , G2 y G3 . A partir de la
matriz de confusión se obtuvieron las siguientes observaciones:

Para los 58 conjuntos de datos en la categoría G1 , con la etiqueta de clase 1 (representadas


con cuadros azules), se observó que 55 muestras fueron clasificadas correctamente, una
muestra fue clasificada erróneamente en la clase 2 (categoría G2 ), y dos muestras fueron
clasificadas erróneamente para la clase 3 (categoría G3 ).

Para los 58 conjuntos de datos en la categoría G2 , con la etiqueta de clase 2 (representadas


con cuadros rojos), se observó que 57 muestras fueron clasificadas correctamente, mientras
que solamente una muestra fue clasificada erróneamente para la clase 3 (categoría G3 ).

Para los 58 conjuntos de datos en la categoría G3 , con la etiqueta de clase 3 (representadas


con cuadros negros), se observó que 57 muestras fueron clasificadas correctamente,
mientras que una muestra fue clasificada erróneamente para la clase 1 (categoría G1 ).

El análisis de las métricas Euclidiana y MED presentado en la Sección 5.1.2 reveló un buen
despeño de agrupamiento para los datos de la categoría G1 con ambas distancias. No obstante,
para los conjuntos de datos en G2 es necesario utilizar la distancia Euclidiana, mientras que
para los datos en G3 se debe utilizar la distancia MED. En este sentido, a partir de las 174
muestras estudiadas, el mejor modelo de clasificación estimó correctamente 169 muestras
(97 %) y obtuvo cinco errores de clasificación, aunque las muestras de la categoría G1 pueden
agruparse utilizando ambas medidas de proximidad; por tanto, los errores de la clase 1 no se
consideran relevantes.
Finalmente, a continuación se describen los pasos del método cSVM (clasificación basada
en una SVM) para seleccionar la medida de distancia que será usada por el IVG en el AAM:

Paso 1. Agrupar el conjunto de datos de entrada con K-means usando K = 1.


Paso 2. Computar wgs1 y wgs4 a partir del agrupamiento de K-means para generar un
espacio de características bidimensional.
70 5.3. Algoritmo de agrupamiento CADE

Paso 3. Utilizar el modelo de clasificación basado en SVM para generar una etiqueta de
clase y.
Paso 4. Emplear la siguiente regla de selección para determinar la medida de proximidad
que utilizará el IVG:
8
<distancia MED si y = 1 _ y = 3
d= . (5.2)
:distancia Euclidiana si y = 2

5.3 Algoritmo de agrupamiento CADE


En esta sección se describe el algoritmo de agrupamiento automático propuesto en este
trabajo de investigación. El algoritmo se denomina CADE (clustering algorithm based on
differential evolution) que se caracteriza por considerar una inicialización basada en oposición,
una estrategia de mutación DE/current-to-pbest y un archivo de soluciones potenciales.
CADE utiliza una representación basada en centroides de longitud fija y considera el índice
Silhouette como función objetivo. Además, el algoritmo CADE requiere como parámetro la
medida de proximidad que utilizará el IVG, la cual se define mediante el método cSVM
descrito en la Sección 5.2.

5.3.1 Componentes del algoritmo CADE


Una característica principal del algoritmo CADE está relacionada con el concepto de
aprendizaje basado en oposición, el cual ha sido utilizado para acelerar la convergencia del
algoritmo. Debido a la ausencia de información a priori sobre la solución óptima, por lo
general la población de un algoritmo evolutivo se inicializa con suposiciones aleatorias. El
tiempo de cómputo del proceso evolutivo, entre otros, está relacionado con la distancia entre
estas suposiciones iniciales y la solución óptima. No obstante, existe la posibilidad de iniciar
con una solución más cercana al comprobar simultáneamente la solución opuesta (contra
conjetura) de una solución aleatoria (conjetura). De hecho, según la teoría de probabilidad, el
50 % del tiempo una conjetura está más lejana de la solución óptima que su contra conjetura.
Por tanto, iniciar con la conjetura más cercana (basándose en su aptitud) tiene la ventaja
de acelerar la convergencia del algoritmo de optimización. A continuación se definen los
conceptos de punto de oposición y optimización basada en oposición [2]:
5. Agrupamiento automático evolutivo 71

Definición 5.3.1. Punto de oposición. Sea z = (z1 , . . . , zd ) un punto d-dimensional, donde el


⇥ up ⇤
i-ésimo elemento zi 2 R está en el rango zlow
i , zi . El punto opuesto z̆ = (z̆1 , . . . , z̆d ) se define por
sus componentes:

up
z̆i = zlow
i + zi - zi . (5.3)

Definición 5.3.2. Optimización basada en oposición. Sea z un vector d-dimensional que denota
una solución candidata y sea z̆ su respectivo punto de oposición. Asumiendo que f(·) es una función
objetivo de minimización, si f(z̆) 6 f(z) entonces el punto z puede ser reemplazado por z̆; en otro
caso, utilizar z. Por tanto, el punto y su punto opuesto se evalúan simultáneamente para determinar
la mejor aproximación.

Este mismo enfoque también se aplica continuamente a cada solución en la población


actual Pg . Basándose en una probabilidad de salto Jr, se calcula la población opuesta, P̆g , y
se seleccionan los NP individuos más aptos de la unión de ambas poblaciones. La solución
opuesta z̆i 2 P̆g se obtiene de la siguiente manera:

z̆i,j = Minj + Maxj - zi,j , j = 1, . . . , d, (5.4)

donde Minj y Maxj son los valores mínimos y máximos de cada variable de los individuos en
la población actual Pg , respectivamente.
Por otro lado, el algoritmo CADE utiliza la estrategia de mutación “DE/current-to-pbest/”
propuesta por Zhang y Sanderson [103] para el algoritmo JADE. Esta estrategia selecciona
de manera aleatoria alguna de las p mejores soluciones (100p %) en la población P. Por
tanto, la estrategia DE/current-to-pbest permite incrementar la diversidad en la población
y ayuda a evitar problemas de convergencia prematura, ya que no necesariamente selecciona
la mejor. Además, el algoritmo emplea un archivo A que almacena las soluciones que han
sido descartadas por el operador de selección. Esto debido a que estas soluciones inferiores
recientemente exploradas proporcionan información adicional sobre direcciones de búsqueda
prometedoras. Entonces en cada generación g, para cada individuo zi de la población actual,
se crea un vector de prueba como:
⇣ ⌘
vig = zgi + F zgpbest - zgi + F (zgr1 - zgr2 ) , (5.5)

donde zgi , zgr1 y zgpbest son seleccionados de la población Pg , mientras que zgr2 es seleccionado
aleatoriamente del conjunto A [ Pg . El tamaño del archivo A debe estar en el rango [1, NP];
por tanto, algunas soluciones son eliminadas aleatoriamente si su tamaño excede NP.
72 5.3. Algoritmo de agrupamiento CADE

Umbrales de activación (T) C)


Centroides de grupos (C̄

0.4 0.7 0.6 0.1 0.9 1.0 4.9 1.0 1.0 5.0 3.0 9.3 1.7 8.2 4.0

Solución de agrupamiento (C) 4

2 4 6 8 10

Figura 5.9: Ejemplo de la representación real basada en centroides con Kmáx = 5 y D = 2. Los
centroides activados se indican con círculos rellenos, mientras que los centroides desactivados se
indican con círculos blancos.

5.3.2 Representación de soluciones

Se adoptó la representación real de longitud fija basada en centroides propuesta por Das et al.
en el algoritmo ACDE [1]. Todos los individuos en la población codifican un número máximo
de centroides, Kmáx . Por tanto, todos los individuos conservan la misma longitud durante todo
el proceso de optimización, es decir, de orden Kmax + D ⇥ Kmax , donde D es el número de
variables en el conjunto de datos. Las primeras Kmax posiciones son números reales en el
rango [0, 1] que representan umbrales de activación, T = {Tk | k = 1, . . . , Kmáx }. Las Kmáx ⇥ D
posiciones restantes corresponden a los centroides de los grupos, C̄ = {c̄k | k = 1, . . . , Kmáx },
donde c̄k 2 RD . Entonces, un individuo es representado como:

z = [T1 , . . . , TKmáx , c̄1 , . . . , c̄Kmáx ] . (5.6)

Además, para determinar si un centroide c̄k participará (1) o no (0) en el proceso de


agrupamiento se considera la siguiente regla de activación:
8
<activar c̄k si Tk > 0.5
. (5.7)
:desactivar c̄ en otro caso
k
5. Agrupamiento automático evolutivo 73

La Figura 5.9 presenta un ejemplo de la representación basada en centroides donde se


considera Kmáx = 5 para un conjunto de datos bidimensional. Los centroides activados que
satisfacen la regla de activación (5.7) están representados con círculos grises, es decir, los
centroides en las posiciones dos (1.0, 1.0), tres (5.0, 3.0) y cinco (8.2, 4.0).
Nótese que después de aplicar los operadores de mutación y cruza, una solución puede ser
inválida, es decir, número de grupos menores a dos, grupos vacíos y valores fuera de rango.
Para corregir estos casos se sigue el mismo procedimiento descrito en la Sección 2.5.2.

5.3.3 Función objetivo


El estudio comparativo de IVGs presentado en la Capítulo 4 reveló que el índice Silhouette
(Sil) [23] obtuvo el mejor desempeño de agrupamiento. Por esta razón, el índice Sil es
considerado como la función objetivo y se define como

1 X X sep (xi , ck ) - sim (xi , ck )


Sil(C) = , (5.8)
N x 2c
ck 2 C
máx {sep (xi , ck ) , sim (xi , ck )}
i k

donde

1 X
sim (xi , ck ) = d (xi , xj ) ,
nk x 2c
j k
8 9
<1 X =
sep (xi , ck ) = mı́n d (xi , xj ) .
cr 2C\ck : nr ;
x 2c
j r

La función de distancia d(·, ·) utilizada en la Ecuación 5.8 para los criterios sim(·) y sep(·),
representa a la distancia Euclidiana (de ) o la distancia MED (dmed ) según lo indique el selector
cSVM.

5.3.4 Pseudocódigo del algoritmo CADE


El algoritmo CADE propuesto en este trabajo de investigación se describe a continuación:

Paso 1: Dado un conjunto de datos, emplear el método cSVM descrito en la Sección 5.2
para seleccionar la métrica Euclidiana o MED que utilizará la función objetivo.

Paso 2: Generar una población inicial aleatoria con NP individuos basándose en la


Definición 5.3.2: P0 = {z0i | i = 1, . . . , NP}, donde cada individuo se compone de umbrales
de activación y centroides.
74 5.3. Algoritmo de agrupamiento CADE

Paso 3: Para cada generación g:


(i) Aplicar la estrategia de mutación DE/current-to-pbest a cada individuo zi 2 Pg para
generar un vector mutante vi usando (5.5) y después generar un vector de prueba ui
con cruza binomial (B.2).
(ii) Validar cada vector de prueba ui y corregir las soluciones de agrupamiento inválidas.
(iii) Para cada ui , aplicar la regla de activación definida en (5.7) y obtener el número Ki
de centroides activos Ci . Entonces, obtener la solución de agrupamiento o etiquetas
de grupo, Ci , al asignar cada patrón xp al centroide activo más cercano, c̄j 2 Ci , tal
que
de (xp , c̄j ) = mı́n {d(xp , c̄j )}. (5.9)
c̄j 2Ci

(iv) Evaluar los agrupamientos de los individuos zi y ui con el índice Silhouette, el cual
utiliza la función de distancia del Paso 1. Basándose en el operador de selección (B.3),
si el vector de prueba ugi obtiene una mejor aptitud que zgi , entonces reemplazar a este
último por el vector de prueba y almacenar a zgi en el archivo A.
(v) Verificar el tamaño del archivo A, tal que: |A| 6 NP.
(vi) Verificar si se cumple que r1 < Jr, entonces actualizar la población actual Pg
usando (5.4), donde r1 es un número aleatorio tomado de una distribución uniforme
en el intervalo [0, 1].

Paso 4: Reportar la solución de agrupamiento final obtenida por el mejor individuo, esto
es, aquel con el mejor valor de aptitud en la generación g = Gmax .

5.3.5 Complejidad temporal de CADE


La complejidad temporal del algoritmo CADE crece linealmente con respecto al número
de evaluaciones de la función objetivo, cuyos pasos principales presentan las siguientes
complejidades:

Obtención de la matriz de distancia: La distancia Euclidiana tiene una complejidad de


O(N2 · D), donde N es el número de patrones y D el número de atributos del conjunto
de datos. La complejidad de la distancia MED es O(M log N), donde M denota el número
aristas en un grafo completo, M = N(N-1)
2
.

Inicialización de la población basada en oposición: Para una población con NP


individuos la complejidad es O(NP · Kmáx · D).
5. Agrupamiento automático evolutivo 75

Evaluación de los individuos en la población: Para cada individuo, primero se decodifica


la solución, con una complejidad de O(N · Kmáx · D), y posteriormente se calcula la aptitud
utilizando el índice Silhouette, con una complejidad de O(N2 · Kmáx · D). Por tanto, la
evaluación de toda la población de individuos tiene una complejidad de O(NP ·N2 ·Kmáx ·D).

Generación de nuevos individuos: La estrategia de mutación DE/current-to-pbest


requiere O(NP2 · d) en el peor caso, donde d = Kmáx + Kmáx · D es la dimensionalidad
del individuo. Por otro lado, la complejidad del operador de cruza binomial es O(NP · d).
Por tanto, la generación de una nueva población tiene una complejidad de O(NP2 · d).

La complejidad temporal del proceso evolutivo de CADE es O(Gmax · NP · N2 · Kmáx · D),


donde Gmax es el número máximo de generaciones. Entonces, considerando las etapas de
inicialización y búsqueda se tiene una complejidad de O(N2 · D) + O(N2 · Kmáx · D · Gmax · NP),
es decir, O(Gmax · NP · N2 · Kmáx · D). Sin embargo, cuando N es mayor que NP y Gmax la
complejidad temporal de CADE es O(N2 · Kmáx · D).
Resultados experimentales
6

E N este capítulo se presentan los resultados obtenidos al comparar el desempeño del


enfoque de agrupamiento propuesto CADE con cuatro algoritmos de agrupamiento
convencionales y cuatro algoritmos de agrupamiento metaheurísticos. Además, se presentan
los resultados obtenidos al utilizar el algoritmo CADE para la segmentación automática de
imágenes de textura.

6.1 Diseño experimental


Esta sección se enfoca en el diseño experimental para investigar el desempeño del enfoque de
agrupamiento propuesto que se compone del selector de la métrica (cSVM) y del algoritmo
de agrupamiento automático (CADE). En primer lugar, se consideran los conjuntos de datos
de prueba presentados en la Sección 2.6.1, que incluyen 174 conjuntos de datos sintéticos y
seis conjuntos de datos reales. También se consideran los índices de desempeño ARI y NSR
descritos en la Sección 2.6.2. Además, se considera la prueba de Kruskal-Wallis (↵ = 0.05) con
corrección de Bonferroni y la plataforma de experimentación descritas en las Secciones 2.6.3
y 2.6.4, respectivamente.

77
78 6.1. Diseño experimental

Se realizaron dos experimentos para evaluar el desempeño del enfoque de agrupamiento


propuesto en este trabajo de investigación. El primer experimento consideró cuatro algoritmos
de agrupamiento convencionales descritos en la Sección 2.4: el algoritmo K-means, que está
basado en un criterio de dispersión intragrupo; los algoritmos jerárquicos Single-linkage y
WARD, que están basados en un criterio de conectividad intragrupo; y el algoritmo DBSCAN,
que está basado en un criterio de densidad. El segundo experimento consideró cuatro
algoritmos de agrupamiento automático basados en diferentes metaheurísticas, los cuales
fueron descritos en la Sección 2.5: algoritmos CDE y ACDE basados en ED, algoritmo MEPSO
basado en PSO y algoritmo de agrupamiento genético TGCA.

6.1.1 Configuración de parámetros de entrada


Se utilizaron diferentes parámetros para los algoritmos de agrupamiento estudiados. Los
algoritmos de agrupamiento convencionales requieren de diferentes parámetros para estimar
el número de grupos K de un conjunto de datos, los cuales se determinaron mediante las
siguientes estrategias:

K-means: Requiere como parámetro de entrada el número de grupos K del conjunto de


datos. El algoritmo se ejecuta m = Kmáx - Kmı́n + 1 veces variando el parámetro K con valores
{Kmı́n , Kmı́n +1 , . . . , Kmáx -1 , Kmáx }, de modo que se genera una colección de m agrupamientos,
donde Kmı́n = 2 y Kmáx = 20. Finalmente, la selección del agrupamiento final se realiza con
el índice Silhouette, donde la maximización del índice estima el número de grupos K.

Single-linkage y WARD: Requieren como parámetro el número de grupos K del conjunto de


datos para determinar el punto de corte del conglomerado. En ambos algoritmos se utilizó
el índice Silhouette para seleccionar el agrupamiento final a partir del conglomerado de
agrupamientos generado para un determinado conjunto de datos.

DBSCAN: Requiere como parámetros de entrada el número mínimo de puntos (MinPts)


que debe contener un grupo, así como el radio del mismo (Eps). Para cada conjunto de
datos estudiado se determinaron los mejores valores de estos parámetros probando las
siguientes configuraciones: MinPts = {5 ⇥ n : n es un número entero, 1 6 n 6 bN/2c} y
Eps = {0.1 ⇥ n : n es un número entero, 1 6 n 6 5}, donde N denota el número de patrones
en el conjunto de datos normalizado en el intervalo [0, 1]. La configuración final de ambos
parámetros para los conjuntos de datos estudiados se presenta en el Apéndice D.
6. Resultados experimentales 79

Por otro lado, la Tabla 6.1 presenta la configuración de los parámetros de todos los
algoritmos de agrupamiento metaheurísticos estudiados, incluyendo CADE. Los parámetros
específicos de cada algoritmo fueron tomados de su respectiva propuesta en la literatura. Con
la finalidad de realizar un estudio comparativo justo, estos algoritmos utilizaron el modelo
de clasificación cSVM propuesto para seleccionar la medida de proximidad. Los algoritmos se
ejecutaron 31 veces para cada conjunto de datos de prueba, donde el criterio de terminación
es el número de evaluaciones de la función objetivo. Además, con base en los resultados
obtenidos en el Capítulo 4, los cinco algoritmos utilizaron el índice Silhouette como función
objetivo.

Tabla 6.1: Configuración de los parámetros de entrada para los algoritmos de agrupamiento
metaheurísticos considerados en este trabajo de investigación [1, 2].

Parámetros CADE CDE ACDE MEPSO TGCA

Número de evaluaciones NE = 1E5 NE = 1E5 NE = 1E5 NE = 1E5 NE = 1E5

Función objetivo (IVG) Silhouette Silhouette Silhouette Silhouette Silhouette

Número máximo de grupos Kmáx = 20 Kmáx = 20 Kmáx = 20 Kmáx = 20 Kmáx = 20

Tamaño de la población NP = 10 ⇥ D NP = 10 ⇥ D NP = 10 ⇥ D NP = 100 NP = 100

Parámetros específicos Cr = 0.8 y Cr = 0.8 ! = 0.8 Pc = 0.5

F = 0.5 F = 0.5 '1 = '2 = 2

Jr = 0.3

6.2 Algoritmos de agrupamiento convencionales versus CADE

La Tabla 6.2 presenta los resultados obtenidos por CADE y otros cuatro algoritmos de
agrupamiento convencionales en términos de los índices ARI y NSR. En la Tabla 6.3 se
presentan los resultados de manera resumida, donde para cada categoría de datos se han
sombreado los mejores valores ARI y NSR, mientras que los resultados estadísticamente
similares con respecto al mejor desempeño han sido indicados en negrita. A partir de las
Tablas 6.2 y 6.3 se obtuvieron las siguientes observaciones para cada categoría de datos:
80 6.2. Algoritmos de agrupamiento convencionales versus CADE

Los resultados para la categoría G1 indicaron que todos los algoritmos estudiados
presentaron un buen desempeño de agrupamiento. El mejor desempeño lo obtuvo el
algoritmo DBSCAN (ARI = 1.00 y NSR = 0.97). Además, los resultados de los algoritmos
CADE y Single-linkage no presentaron diferencias significativas en relación a los resultados
obtenidos por DBSCAN (p = 1.00 en ambos casos).

Los resultados para la categoría G2 indicaron que los algoritmos K-means, CADE y WARD
presentaron un buen desempeño de agrupamiento. El mejor desempeño en términos de
ambos índices lo obtuvo el algoritmo K-means (ARI = 0.92 y NSR = 0.96). Además, los
resultados entre los algoritmos K-means y CADE no presentaron diferencias significativas
respecto al índice ARI (p = 0.61). En contraste, el algoritmo Single-linkage obtuvo el
desempeño más bajo al agrupar datos que presentan un cierto grado de traslape (ARI = 0.06
y NSR = 0.19).

Los resultados para la categoría G3 señalaron que los algoritmos DBSCAN y CADE
obtuvieron el mejor desempeño. Se observó que el desempeño de agrupamiento entre
DBSCAN y CADE no es significativamente diferente (p = 1.00). En contraste, los algoritmos
K-means, Single-linkage y WARD presentaron un pobre desempeño de agrupamiento en
términos de ambos índices de desempeño.

Los resultados para datos reales en la categoría G4 indicaron que los algoritmos CADE
y DBSCAN presentaron el mejor desempeño de agrupamiento. El mejor desempeño en
términos de ambos índices lo obtuvo el algoritmo CADE (ARI = 0.69 y NSR = 0.50). Además,
los resultados de los algoritmos K-means, WARD y DBSCAN no presentaron diferencias
significativas en relación a los resultados obtenidos por CADE (p = 1.00 para todos los
casos). En contraste, el algoritmo Single-linkage presentó un pobre desempeño al agrupar
los conjuntos de datos reales.

En general, en las Tablas 6.2 y 6.3 se observó que el algoritmo propuesto CADE obtuvo
el mejor desempeño de agrupamiento al ser comparado con otros cuatros algoritmos de
agrupamiento convencionales. CADE se desempeñó correctamente en términos de los índices
ARI y NSR (ARI = 0.96 y NSR = 0.93) y sus resultados fueron estadísticamente diferentes del
resto de los algoritmos de agrupamiento convencionales estudiados.
Tabla 6.2: Valores ARI y NSR obtenidos por CADE y otros algoritmos de agrupamiento convencionales al abordar el problema
AAD. Los estadísticos de media y desviación estándar (en paréntesis) son presentados. “Cat.” indica la categoría de separabilidad
de los datos y “#” denota el número de conjuntos de datos en una colección.
CADE K-means Single-linkage WARD DBSCAN
Cat. Colección # ARI NSR ARI NSR ARI NSR ARI NSR ARI NSR
LSD2C2 10 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0)
LSD2C4 10 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 0.99 (0.1) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0)
LSD2C6 10 1.00 (0.0) 1.00 (0.0) 0.97 (0.0) 0.70 (0.4) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0)
G1
LSD2C8 10 1.00 (0.0) 1.00 (0.0) 0.98 (0.0) 0.51 (0.5) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0)
6. Resultados experimentales

LSD2C10 10 1.00 (0.0) 1.00 (0.0) 0.94 (0.0) 0.36 (0.4) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0)
LSD 8 0.95 (0.1) 0.83 (0.3) 0.74 (0.2) 0.45 (0.5) 0.95 (0.1) 0.88 (0.3) 0.74 (0.3) 0.62 (0.5) 1.00 (0.0) 0.75 (0.4)
LSOD2C2 10 0.98 (0.0) 1.00 (0.0) 0.98 (0.0) 1.00 (0.0) 0.20 (0.4) 1.00 (0.0) 0.97 (0.0) 1.00 (0.0) 0.97 (0.0) 0.40 (0.5)
LSOD2C4 10 0.92 (0.0) 1.00 (0.0) 0.92 (0.0) 1.00 (0.0) 0.00 (0.0) 0.00 (0.0) 0.89 (0.0) 1.00 (0.0) 0.83 (0.0) 0.10 (0.3)
LSOD2C6 10 0.92 (0.0) 1.00 (0.0) 0.92 (0.0) 1.00 (0.0) 0.00 (0.0) 0.00 (0.0) 0.90 (0.0) 1.00 (0.0) 0.85 (0.0) 0.10 (0.3)
G2
LSOD2C8 10 0.90 (0.0) 0.90 (0.3) 0.90 (0.0) 0.95 (0.2) 0.00 (0.0) 0.00 (0.0) 0.85 (0.0) 0.90 (0.3) 0.76 (0.0) 0.30 (0.4)
LSOD2C10 10 0.89 (0.1) 0.94 (0.5) 0.91 (0.0) 0.95 (0.2) 0.00 (0.0) 0.00 (0.0) 0.87 (0.0) 0.80 (0.4) 0.82 (0.0) 0.20 (0.4)
LSOD 8 0.89 (0.2) 0.72 (0.4) 0.92 (0.1) 0.83 (0.3) 0.18 (0.2) 0.12 (0.3) 0.88 (0.1) 0.88 (0.3) 0.89 (0.1) 0.25 (0.4)
NLSD2C2 10 1.00 (0.0) 1.00 (0.0) 0.30 (0.0) 0.00 (0.0) 0.45 (0.2) 0.10 (0.3) 0.29 (0.0) 0.00 (0.0) 1.00 (0.0) 1.00 (0.0)
NLSD2C4 10 1.00 (0.0) 1.00 (0.0) 0.44 (0.0) 0.00 (0.0) 0.96 (0.1) 0.80 (0.4) 0.42 (0.0) 0.00 (0.0) 1.00 (0.0) 1.00 (0.0)
NLSD2C6 10 1.00 (0.0) 1.00 (0.0) 0.10 (0.0) 0.00 (0.0) 0.55 (0.0) 0.00 (0.0) 0.10 (0.0) 0.00 (0.0) 1.00 (0.0) 1.00 (0.0)
G3
NLSD2C8 10 1.00 (0.0) 0.90 (0.3) 0.44 (0.0) 0.00 (0.0) 1.00 (0.0) 1.00 (0.0) 0.37 (0.0) 0.00 (0.0) 1.00 (0.0) 0.90 (0.3)
NLSD2C10 10 1.00 (0.0) 1.00 (0.0) 0.21 (0.0) 0.00 (0.0) 0.38 (0.0) 0.00 (0.0) 0.21 (0.0) 0.00 (0.0) 1.00 (0.0) 1.00 (0.0)
NLSD 8 0.93 (0.2) 0.88 (0.3) 0.27 (0.2) 0.05 (0.2) 0.86 (0.2) 0.75 (0.4) 0.30 (0.2) 0.12 (0.3) 1.00 (0.0) 1.00 (0.0)
Iris 1 0.57 (0.0) 0.00 (0.0) 0.57 (0.0) 0.00 (0.0) 0.56 (0.0) 0.00 (0.0) 0.59 (0.0) 0.00 (0.0) 0.61 (0.0) 1.00 (0.0)
Wine 1 0.85 (0.2) 1.00 (0.0) 0.88 (0.1) 1.00 (0.0) 0.00 (0.0) 1.00 (0.0) 0.93 (0.0) 1.00 (0.0) 0.50 (0.0) 1.00 (0.0)
Breast CW 1 0.83 (0.0) 1.00 (0.0) 0.84 (0.0) 1.00 (0.0) 0.00 (0.0) 1.00 (0.0) 0.87 (0.0) 1.00 (0.0) 0.87 (0.0) 1.00 (0.0)
G4
Glass 1 0.68 (0.0) 1.00 (0.0) 0.64 (0.0) 0.71 (0.3) 0.04 (0.0) 0.00 (0.0) 0.60 (0.0) 0.00 (0.0) 0.67 (0.0) 0.00 (0.0)
Ecoli 1 0.45 (0.0) 0.00 (0.0) 0.69 (0.2) 0.00 (0.0) 0.01 (0.0) 0.00 (0.0) 0.72 (0.0) 0.00 (0.0) 0.65 (0.0) 0.00 (0.0)
Newthyroid 1 0.78 (0.0) 0.00 (0.0) 0.29 (0.0) 0.00 (0.0) 0.03 (0.0) 0.00 (0.0) 0.27 (0.0) 0.00 (0.0) 0.78 (0.0) 0.00 (0.0)

Global ARI & NSR 0.97 (0.0) 0.95 (0.1) 0.72 (0.3) 0.55 (0.5) 0.58 (0.4) 0.53 (0.5) 0.71 (0.4) 0.63 (0.4) 0.94 (0.1) 0.72 (0.4)
81
82 6.3. Algoritmos de agrupamiento metaheurísticos versus CADE

Tabla 6.3: Resumen de los resultados obtenidos por CADE y otros cuatro algoritmos de
agrupamiento convencionales en términos de los índices ARI y NSR. Los estadísticos de media y
desviación estándar (en paréntesis) son presentados. El símbolo “#” denota el número de conjuntos
de datos en una categoría.

Categoría # CADE K-means Single-linkage WARD DBSCAN

ARI 0.99 (0.05) 0.94 (0.12) 0.99 (0.06) 1.96 (0.14) 1.00 (0.00)
G1 58
NSR 0.97 (0.18) 0.67 (0.47) 0.98 (0.13) 0.95 (0.22) 0.97 (0.18)

ARI 0.91 (0.10) 0.92 (0.05) 0.06 (0.21) 0.90 (0.07) 0.85 (0.09)
G2 58
NSR 0.92 (0.28) 0.96 (0.20) 0.19 (0.09) 0.93 (0.26) 0.22 (0.42)

ARI 0.99 (0.09) 0.30 (0.15) 0.70 (0.29) 0.02 (0.13) 1.00 (0.00)
G3 58
NSR 0.97 (0.20) 0.01 (0.08) 0.43 (0.50) 0.00 (0.07) 0.98 (0.13)

ARI 0.69 (0.15) 0.65 (0.19) 0.11 (0.23) 0.65 (0.23) 0.68 (0.13)
G4 6
NSR 0.50 (0.50) 0.36 (0.48) 0.33 (0.52) 0.33 (0.52) 0.50 (0.55)

ARI 0.96 (0.09) 0.72 (0.32) 0.57 (0.44) 0.71 (0.33) 0.94 (0.10)
NSR 0.93 (0.25) 0.54 (0.50) 0.53 (0.50) 0.62 (0.49) 0.72 (0.45)

6.3 Algoritmos de agrupamiento metaheurísticos versus CADE

La Tabla 6.4 presenta los resultados obtenidos por los algoritmos de agrupamiento
metaheurísticos CADE, CDE, ACDE, MEPSO y TGCA en términos de los índices ARI y NSR.
Además, con el objetivo de observar el desempeño general de los algoritmos analizados,
se presenta la media aritmética global de ambos índices para cada algoritmo estudiado.
Asimismo, en la Tabla 6.5 se presentan los resultados de manera resumida, donde para
cada categoría de datos se han sombreado los mejores valores ARI y NSR, mientras que los
resultados estadísticamente similares con respecto al mejor desempeño han sido indicados en
negrita. A partir de las Tablas 6.4 y 6.5 se obtuvieron las siguientes observaciones para cada
categoría de datos:

Los resultados para la categoría G1 indicaron que los algoritmos CADE, CDE, MEPSO y
TGCA obtuvieron un buen desempeño de agrupamiento. El mejor desempeño lo obtuvo
el algoritmo CDE (ARI = 0.99 y NSR = 0.97). Además, los resultados de los algoritmos
CADE, MEPSO y TGCA no presentaron diferencias significativas en relación a los resultados
obtenidos por CDE (p = 1.00 para todos casos).
6. Resultados experimentales 83

Los resultados para la categoría G2 indicaron que los algoritmos CADE, CDE y TGCA
presentaron un buen desempeño de agrupamiento. El mejor desempeño en términos de
los índices ARI y NSR lo obtuvo el algoritmo TGCA (ARI = 0.92 y NSR = 0.98), donde los
resultados de los algoritmos CADE y CDE no presentaron diferencias significativas respecto
al índice ARI (p = 0.85 y p = 1.00, respectivamente). En contraste, el algoritmo MEPSO
obtuvo el desempeño más bajo en términos de ambos índices (ARI = 0.90 y NSR = 0.85).

Los resultados para la categoría G3 señalaron que los algoritmos CADE, CDE y MEPSO
obtuvieron el mejor desempeño. Se observó que el desempeño de agrupamiento de CADE
y CDE no presentaron diferencias significativas en relación al desempeño obtenido por
MEPSO (p = 1.00 para ambo casos). En contraste, el algoritmo TGCA presentó un
desempeño de agrupamiento menor a los otros algoritmos (ARI = 0.92 y NSR = 0.88).

Los resultados para datos reales en la categoría G4 indicaron que el algoritmo CADE obtuvo
el mejor desempeño de agrupamiento en términos de los índices ARI y NSR. Además, los
resultados del algoritmo fueron estadísticamente diferentes (p < 0.02) del resto de los
algoritmos de agrupamiento metaheurísticos estudiados.

En general, en las Tablas 6.4 y 6.5 se observó que el algoritmo propuesto CADE obtuvo
el mejor desempeño de agrupamiento al ser comparado con otros cuatros algoritmos de
agrupamiento metaheurísticos (ARI = 0.96 y NSR = 0.93).
Respecto a la convergencia de los algoritmos, la Tabla 6.6 muestra los valores de aptitud
del índice Silhouette obtenidos por los diferentes algoritmos. Asimismo, la Figura 6.3 muestra
las gráficas de convergencia correspondientes, donde la maximización del índice Silhouette
indica la obtención de buenas soluciones de agrupamiento. En este caso sólo se consideraron
los conjuntos de datos sintéticos propuestos en la literatura, ya que se pueden considerar
estándar, análogamente a las funciones benchmark usadas en el área de optimización.
En general, los algoritmos CADE y TGCA presentaron los mejores resultados de
convergencia; sin embargo, en algunos escenarios complejos el algoritmo TGCA suele quedar
atrapado en óptimos locales (ver Figura 6.3t). También, se observó que para la mayoría de
los datos estudiados, el algoritmo CADE presentó una mejor convergencia que los otros dos
algoritmos (CDE y ACDE) basados en ED. Esta propiedad de CADE es debido a su estrategia
de inicialización y actualización de la población basada en oposición, inclusive produce
mejores soluciones iniciales que sus contrapartes. Además, se observó que MEPSO obtuvo
un desempeño de convergencia más lento que los otros algoritmos.
6.3. Algoritmos de agrupamiento metaheurísticos versus CADE

Tabla 6.4: Valores ARI y NSR obtenidos por CADE y otros algoritmos de agrupamiento metaheurísticos al abordar el problema
AAD. Los estadísticos de media y desviación estándar (en paréntesis) son presentados. “Cat.” indica la categoría de separabilidad
de los datos y “#” denota el número de conjuntos de datos en una colección.
CADE CDE ACDE MEPSO TGCA
Cat. Colección # ARI NSR ARI NSR ARI NSR ARI NSR ARI NSR
LSD2C2 10 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 0.97 (0.2) 1.00 (0.0) 0.95 (0.2) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0)
LSD2C4 10 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0)
LSD2C6 10 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0)
G1
LSD2C8 10 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0)
LSD2C10 10 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0)
LSD 8 0.95 (0.1) 0.83 (0.3) 0.96 (0.1) 0.85 (0.4) 0.93 (0.1) 0.69 (0.5) 0.94 (0.1) 0.75 (0.4) 0.94 (0.1) 0.82 (0.4)
LSOD2C2 10 0.98 (0.0) 1.00 (0.0) 0.98 (0.0) 1.00 (0.0) 0.97 (0.1) 0.98 (0.2) 0.98 (0.0) 1.00 (0.0) 0.98 (0.0) 1.00 (0.0)
LSOD2C4 10 0.92 (0.0) 1.00 (0.0) 0.92 (0.0) 1.00 (0.0) 0.92 (0.0) 0.99 (0.1) 0.91 (0.0) 1.00 (0.0) 0.92 (0.0) 1.00 (0.0)
LSOD2C6 10 0.92 (0.0) 1.00 (0.0) 0.92 (0.0) 1.00 (0.0) 0.92 (0.0) 0.99 (0.1) 0.89 (0.0) 1.00 (0.0) 0.92 (0.0) 1.00 (0.0)
G2
LSOD2C8 10 0.90 (0.0) 0.90 (0.3) 0.90 (0.0) 0.99 (0.1) 0.89 (0.0) 0.99 (0.1) 0.84 (0.1) 0.86 (0.4) 0.90 (0.0) 1.00 (0.0)
LSOD2C10 10 0.89 (0.1) 0.94 (0.5) 0.87 (0.1) 0.92 (0.3) 0.81 (0.2) 0.65 (0.5) 0.83 (0.1) 0.48 (0.5) 0.91 (0.0) 1.00 (0.0)
LSOD 8 0.89 (0.2) 0.72 (0.4) 0.88 (0.2) 0.80 (0.4) 0.89 (0.2) 0.81 (0.4) 0.88 (0.1) 0.73 (0.4) 0.90 (0.2) 0.84 (0.4)
NLSD2C2 10 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.1) 0.97 (0.1) 0.84 (0.4) 1.00 (0.0) 1.00 (0.0) 0.70 (0.4) 0.59 (0.5)
NLSD2C4 10 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 0.99 (0.1) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0)
NLSD2C6 10 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 0.98 (0.5) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0)
G3
NLSD2C8 10 1.00 (0.0) 0.90 (0.3) 0.99 (0.0) 0.90 (0.3) 1.00 (0.0) 0.90 (0.3) 0.99 (0.0) 0.90 (0.3) 0.99 (0.0) 0.90 (0.3)
NLSD2C10 10 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0) 1.00 (0.0)
NLSD 8 0.93 (0.2) 0.88 (0.3) 0.91 (0.2) 0.83 (0.4) 0.83 (0.2) 0.63 (0.5) 0.93 (0.2) 0.88 (0.3) 0.83 (0.3) 0.80 (0.4)
Iris 1 0.57 (0.0) 0.00 (0.0) 0.57 (0.0) 0.00 (0.0) 0.57 (0.0) 0.00 (0.0) 0.57 (0.0) 0.00 (0.0) 0.57 (0.0) 0.00 (0.0)
Wine 1 0.85 (0.2) 1.00 (0.0) 0.85 (0.3) 0.00 (0.0) 0.85 (0.0) 0.00 (0.0) 0.83 (0.3) 0.00 (0.0) 0.84 (0.1) 0.00 (0.0)
Breast CW 1 0.83 (0.0) 1.00 (0.0) 0.83 (0.0) 1.00 (0.0) 0.83 (0.0) 1.00 (0.0) 0.82 (0.0) 1.00 (0.0) 0.83 (0.0) 1.00 (0.0)
G4
Glass 1 0.68 (0.0) 1.00 (0.0) 0.68 (0.0) 1.00 (0.0) 0.01 (0.0) 1.00 (0.0) 0.68 (0.0) 1.00 (0.0) 0.52 (0.0) 0.82 (0.4)
Ecoli 1 0.45 (0.0) 0.00 (0.0) 0.45 (0.0) 0.00 (0.0) 0.01 (0.0) 0.00 (0.0) 0.45 (0.0) 0.00 (0.0) 0.45 (0.2) 0.00 (0.0)
Newthyroid 1 0.78 (0.0) 0.00 (0.0) 0.03 (0.1) 0.00 (0.0) 0.03 (0.0) 0.00 (0.0) 0.02 (0.0) 0.00 (0.0) 0.02 (0.0) 0.00 (0.0)
Global ARI & NSR 0.97 (0.0) 0.95 (0.1) 0.95 (0.1) 0.93 (0.2) 0.95 (0.1) 0.91 (0.3) 0.95 (0.1) 0.92 (0.3) 0.93 (0.2) 0.92 (0.3)
84
6. Resultados experimentales 85

Tabla 6.5: Resumen de los resultados obtenidos por CADE y otros cuatro algoritmos de
agrupamiento metaheurísticos en términos de los índices ARI y NSR. Los estadísticos de media y
desviación estándar (en paréntesis) son presentados. El símbolo “#” denota el número de conjuntos
de datos en una categoría.

Categoría # CADE CDE ACDE MEPSO TGCA

ARI 0.99 (0.05) 0.99 (0.04) 0.99 (0.05) 0.99 (0.05) 0.99 (0.05)
G1 58
NSR 0.97 (0.18) 0.97 (0.16) 0.95 (0.22) 0.97 (0.18) 0.97 (0.16)

ARI 0.91 (0.10) 0.91 (0.10) 0.90 (0.10) 0.89 (0.08) 0.92 (0.06)
G2 58
NSR 0.92 (0.28) 0.96 (0.20) 0.91 (0.29) 0.85 (0.35) 0.98 (0.15)

ARI 0.99 (0.09) 0.99 (0.08) 0.97 (0.10) 0.99 (0.07) 0.92 (0.23)
G3 58
NSR 0.97 (0.20) 0.96 (0.20) 0.90 (0.30) 0.97 (0.18) 0.88 (0.32)

ARI 0.69 (0.15) 0.57 (0.28) 0.38 (0.38) 0.56 (0.05) 0.54 (0.30)
G4 6
NSR 0.50 (0.50) 0.33 (0.47) 0.33 (0.48) 0.36 (0.48) 0.30 (0.46)

ARI 0.96 (0.09) 0.95 (0.12) 0.95 (0.12) 0.95 (0.10) 0.93 (0.17)
NSR 0.93 (0.25) 0.94 (0.23) 0.91 (0.28) 0.92 (0.27) 0.92 (0.26)
86 6.3. Algoritmos de agrupamiento metaheurísticos versus CADE

CADE CDE ACDE MEPSO TGCA

1 1
0.8 0.8
0.6 0.6
Valor de aptitud

Valor de aptitud
0.4 0.4
0.2 0.2
0 0
−0.2 −0.2
−0.4 −0.4
−0.6 −0.6
−0.8
(a) Orange −0.8
(b) Data_4_3
−1 −1
1 1
0.8 0.8
0.6 0.6
Valor de aptitud

Valor de aptitud
0.4 0.4
0.2 0.2
0 0
−0.2 −0.2
−0.4 −0.4
−0.6 (c) Data_6_2 −0.6 (d) Hepta
−0.8 −0.8
−1
1 −1
1
0.8 0.8
0.6 0.6
Valor de aptitud

Valor de aptitud

0.4 0.4
0.2 0.2
0 0
−0.2 −0.2
−0.4 −0.4
−0.6 −0.6
−0.8
(e) WingNut −0.8 (f) Lsun
−1
1 −1
1
0.8 0.8
0.6 0.6
Valor de aptitud

Valor de aptitud

0.4 0.4
0.2 0.2
0 0
−0.2 −0.2
−0.4 −0.4
−0.6 −0.6 (h) Twenty
(g) Figures
−0.8 −0.8
−1 −1
1 10E1 10E2 10E3 10E4 1 10E1 10E2 10E3 10E4
Evaluaciones de la función objetivo Evaluaciones de la función objetivo

Figura 6.1: Gráficas de convergencia de los conjuntos datos sintéticos de la categoría G1 .


6. Resultados experimentales 87

CADE CDE ACDE MEPSO TGCA

1 1
0.8 0.8
Valor de aptitud

Valor de aptitud
0.6 0.6
0.4 0.4
0.2 0.2
0 0
−0.2 −0.2
−0.4 −0.4
−0.6 (i) Overlapping −0.6 (j) TwoDiamonds
−0.8 −0.8
−11 −11
0.8 0.8
Valor de aptitud

Valor de aptitud
0.6 0.6
0.4 0.4
0.2 0.2
0 0
−0.2 −0.2
−0.4 −0.4
−0.6 (k) Tetra −0.6 (l) Square1
−0.8 −0.8
−1
1 −1
1
0.8 0.8
Valor de aptitud

Valor de aptitud

0.6 0.6
0.4 0.4
0.2 0.2
0 0
−0.2 −0.2
−0.4 −0.4
(m) Sizes5
−0.6 −0.6 (n) Data_10_2
−0.8 −0.8
−1 −1
1 1
0.8 0.8
Valor de aptitud

Valor de aptitud

0.6 0.6
0.4 0.4
0.2 0.2
0 0
−0.2 −0.2
−0.4 (p) Data_9_2 −0.4 (o) Data_5_2
−0.6 −0.6
−0.8 −0.8
−1 −1
1 10E1 10E2 10E3 10E4 1 10E1 10E2 10E3 10E4
Evaluaciones de la función objetivo Evaluaciones de la función objetivo

Figura 6.2: Gráficas de convergencia de los conjuntos datos sintéticos de la categoría G2 .


88 6.3. Algoritmos de agrupamiento metaheurísticos versus CADE

CADE CDE ACDE MEPSO TGCA

1 1
0.8 0.8
Valor de aptitud

Valor de aptitud
0.6 0.6
0.4 0.4
0.2 0.2
0 0
−0.2 −0.2
−0.4 −0.4
(q) Moon (r) Inside
−0.6 −0.6
−0.8 −0.8
−1
1 −1
1
0.8 0.8
Valor de aptitud

0.6 Valor de aptitud 0.6


0.4 0.4
0.2 0.2
0 0
−0.2 −0.2
−0.4 (s) Arcs −0.4
−0.6 −0.6 (t) Part1
−0.8 −0.8
−1
1 −1
1
0.8 0.8
0.6 0.6
Valor de aptitud

Valor de aptitud

0.4 0.4
0.2 0.2
0 0
−0.2 −0.2
−0.4 −0.4
−0.6 (u) Part2 −0.6 (v) Chainlink
−0.8 −0.8
−1 −1
1 1
0.8 0.8
Valor de aptitud

Valor de aptitud

0.6 0.6
0.4 0.4
0.2 0.2
0 0
−0.2 −0.2
−0.4 −0.4
−0.6 (w) Atom −0.6 (x) Spirals
−0.8 −0.8
−1 −1
1 10E1 10E2 10E3 10E4 1 10E1 10E2 10E3 10E4
Evaluaciones de la función objetivo Evaluaciones de la función objetivo

Figura 6.3: Gráficas de convergencia de los conjuntos datos sintéticos de la categoría G3 .


6. Resultados experimentales 89

Tabla 6.6: Valores de aptitud del índice Silhouette obtenidos por CADE y otros cuatro algoritmos
de agrupamiento metaheurísticos. Los estadísticos de media y desviación estándar (en paréntesis)
son presentados para los conjuntos de datos sintéticos tomados de la literatura. Además, los mejores
resultados para cada conjunto de datos están indicados en negrita.

Categoría Nombre CADE CDE ACDE MEPSO TGCA

Orange 0.631 (0.03) 0.630 (0.03) 0.591 (0.08) 0.636 (0.00) 0.622 (0.05)
Data_4_3 0.786 (0.00) 0.786 (0.00) 0.786 (0.00) 0.786 (0.00) 0.786 (0.00)
Data_6_2 0.829 (0.00) 0.829 (0.00) 0.829 (0.00) 0.829 (0.00) 0.829 (0.00)
Hepta 0.808 (0.00) 0.808 (0.00) 0.808 (0.00) 0.808 (0.00) 0.808 (0.00)
G1
WingNut 0.450 (0.00) 0.450 (0.00) 0.446 (0.01) 0.450 (0.00) 0.450 (0.00)
Lsun 0.646 (0.00) 0.646 (0.00) 0.645 (0.01) 0.646 (0.00) 0.642 (0.01)
Figures 0.806 (0.03) 0.806 (0.00) 0.790 (0.05) 0.806 (0.00) 0.806 (0.00)
Twenty 0.758 (0.03) 0.795 (0.02) 0.712 (0.03) 0.701 (0.02) 0.797 (0.01)

Overlapping 0.487 (0.00) 0.487 (0.00) 0.487 (0.00) 0.487 (0.00) 0.487 (0.00)
TwoDiamonds 0.509 (0.00) 0.509 (0.00) 0.509 (0.00) 0.508 (0.00) 0.509 (0.00)
Tetra 0.601 (0.00) 0.601 (0.00) 0.601 (0.00) 0.600 (0.00) 0.601 (0.00)
Square1 0.621 (0.00) 0.621 (0.00) 0.619 (0.01) 0.621 (0.00) 0.621 (0.00)
G2
Size5 0.596 (0.00) 0.596 (0.00) 0.590 (0.01) 0.580 (0.01) 0.596 (0.00)
Data_10_2 0.522 (0.00) 0.521 (0.00) 0.522 (0.00) 0.518 (0.00) 0.521 (0.00)
Data_5_2 0.413 (0.02) 0.420 (0.02) 0.423 (0.02) 0.409 (0.01) 0.439 (0.02)
Data_9_2 0.613 (0.00) 0.613 (0.00) 0.613 (0.00) 0.613 (0.00) 0.613 (0.00)

Moon 0.709 (0.00) 0.695 (0.06) 0.636 (0.09) 0.709 (0.00) 0.692 (0.06)
Inside 0.802 (0.04) 0.788 (0.06) 0.703 (0.10) 0.809 (0.00) 0.755 (0.09)
Arcs 0.644 (0.00) 0.644 (0.00) 0.635 (0.03) 0.644 (0.00) 0.644 (0.00)
Part1 0.550 (0.00) 0.545 (0.02) 0.539 (0.04) 0.550 (0.00) 0.423 (0.04)
G3
Part2 0.740 (0.06) 0.748 (0.04) 0.721 (0.06) 0.762 (0.00) 0.721 (0.07)
Chainlink 0.869 (0.00) 0.869 (0.00) 0.869 (0.00) 0.869 (0.00) 0.869 (0.00)
Atom 0.842 (0.00) 0.842 (0.00) 0.683 (0.12) 0.842 (0.00) 0.842 (0.00)
Spirals 0.940 (0.00) 0.907 (0.10) 0.940 (0.00) 0.940 (0.00) 0.940 (0.00)
90 6.4. Segmentación automática de imágenes de texturas

6.4 Segmentación automática de imágenes de texturas


En esta sección se utiliza el algoritmo CADE, descrito en la Sección 5.3, en una prueba de
concepto para la segmentación automática de imágenes de textura, lo cual puede plantearse
como un problema de agrupamiento de datos. El proceso de segmentación consiste en
particionar una imagen I(x, y) de tamaño M ⇥ N en K subregiones tal que se cumplan las
siguientes condiciones [4]: (i) la unión de todas las subregiones es igual a la imagen completa,
(ii) cada píxel de la imagen debe pertenecer a alguna región y (iii) las regiones deben estar
disjuntas, de modo que cada región sea homogénea con respecto a la característica de la
textura. A continuación se describe el método de segmentación, el diseño experimental, y los
resultados obtenidos.

Imágenes Imágenes de
filtradas características

Imagen de Imagen
Banco de filtros

Banco de filtros

entrada segmentada

Agrupamiento
Algoritmo de
Gaussianos
de Gabor

Coordenadas espaciales de los píxeles

Figura 6.4: Diagrama a bloques del método de segmentación de textura basado en filtros de Gabor.

6.4.1 Método de segmentación de texturas


Para abordar el problema de segmentación de texturas se utilizó el enfoque basado en filtros
de Gabor propuesto por Jain y Farrokhnia [104]. Las funciones de Gabor han sido utilizadas
extensamente para la representación y discriminación de texturas, ya que éstas pueden ser
sintonizadas a un ancho de banda, frecuencia y orientación específicos. El diagrama del
método se ilustran en la Figura 6.4, mientras que sus pasos se describen a continuación.

Descomposición multi-canal: se aplica un banco de filtros de Gabor a la imagen de


entrada para realzar las diferentes texturas que sintonicen algún filtro en particular. En el
6. Resultados experimentales 91

dominio de la frecuencia, la función de Gabor está definida como la suma de dos funciones
Gaussianas desplazadas a partir del origen, con frecuencia radial (uk y -uk ) y orientación
(✓, en el rango [0, ⇡]) específicas, y se expresa como:

" #! " #!
1 (û - uk )2 v̂2 1 (û + uk )2 v̂2
H (u, v) = exp - 2
+ 2 + exp - 2
+ 2 , (6.1)
2 u v 2 u v

donde û = u cos (✓) + v sin (✓), v̂ = v cos (✓) - u sin (✓), u = 2⇡


1
y v = 2⇡
1
con
q x y

ln 2 2b +1
x = y = 1
2uk 2 2b -1
, donde b es el ancho de banda del filtro y la frecuencia radial
(uk ) se calcula como:

p p p p
1 2, 2 2, 4 2, . . . , log2 (Nc/4) 2 ciclos/ancho-imagen , (6.2)

donde Nc es el ancho de la imagen. La Figura 6.5 muestra el banco de filtros de Gabor


generados para una imagen de texturas, así como sus respuestas de textura.

Suavizado: se aplica un banco de filtros Gaussianos a los canales de textura (imágenes


filtradas) para homogeneizar regiones de textura similares. Las varianzas del banco de
filtros Gaussianos depende de las frecuencias radiales (uk ) del banco de filtros de Gabor,
de modo que a medida que un filtro de Gabor se mueve hacia las frecuencias altas, el
suavizado es mayor. En el dominio de la frecuencia, el filtro Gaussiano está definido como:

✓ ◆
u2 + v2
H (u, v) = exp - , (6.3)
2 2

donde la desviación estándar se calcula como = KNc


uk
, donde K es una constante que
controla el ancho del filtro.

Agrupamiento: se aplica un algoritmo de agrupamiento a los canales de textura (imágenes


de características), de modo que se agrupen aquellos puntos o regiones de textura similares.
Además, antes de realizar el agrupamiento, se debe preparar el espacio de atributos
mediante los siguientes procesos:

• Transformar cada canal de textura a un vector columna, el cual representará un atributo


de un espacio d-dimensional de características de tamaño MN ⇥ d, donde M y N son el
ancho y el alto de la imagen y d el número de canales de textura.
92 6.4. Segmentación automática de imágenes de texturas

o o o o ✓
0 45 90 135 uk

p
2

p
2 2
(a)

p
4 2

p
8 2

p
16 2

(b)
p
32 2

p
64 2

(c)

Figura 6.5: Ejemplo de descomposición multi-canal: (a) imagen de entrada, (b) banco de filtros
con pasos de 45 y (c) descomposición multi-canal para diferentes valores de ✓ y uk .

• Agregar las coordenadas espaciales (x, y) de los píxeles como dos atributos adicionales
que proveen información de conectividad espacial en el proceso de agrupamiento.

El proceso de agrupamiento se realiza con el algoritmo K-means y con el algoritmo de


agrupamiento automático propuesto CADE. La salida de los algoritmos es un vector de
etiquetas, que indica la pertenencia de cada píxel a una región de textura.

6.4.2 Diseño experimental para la segmentación de texturas


Esta sección se enfoca en el diseño experimental para investigar el desempeño del algoritmo
propuesto CADE, el cual se utiliza como método de agrupamiento para la segmentación
automática de imágenes de textura. Se consideraron 14 imágenes de textura, donde diez
son imágenes sintéticas que modelan diferentes complejidades como el tipo de textura, forma
geométrica de las regiones de textura y número de grupos de textura, mientras que cuatro son
6. Resultados experimentales 93

imágenes del mundo real en diferentes escenarios. La Tabla 6.7a presenta las características
de cada imagen de textura, mientras que la Tabla 6.7b los parámetros de los filtros de Gabor
usados para cada imagen. También, la Figura 6.6 muestra las imágenes de textura utilizadas
en este experimento. Además, se considera el índice ARI para medir la calidad de las imágenes
de textura obtenidas.
El experimento contempló a los algoritmos CADE y K-means. El algoritmo CADE utilizó
la misma configuración de parámetros reportado en la Tabla 6.1, donde el índice Silhouette
fue utilizado como función objetivo, mientras que el criterio de terminación es el número de
evaluaciones de la función objetivo, NE = 1E3. El algoritmo K-means utilizó como parámetro
de entrada el número correcto de grupos K⇤ . Además, se consideró otra variante de K-means,
denominada K-means+ que consiste en: (i) ejecutar m = Kmáx - Kmı́n + 1 veces el algoritmo
variando el parámetro K en el rango {Kmı́n , Kmáx }, de modo que se genera una colección de
m agrupamientos, donde Kmı́n = 2 y Kmáx = 20; y (ii) seleccionar el agrupamiento final
con el índice Silhouette, donde la maximización del índice estima el número de grupos K.
Los tres algoritmos considerados se ejecutaron 31 veces para cada imagen de textura. En
el experimento se utilizó de Kruskal–Wallis (↵ = 0.05) con corrección de Bonferroni para
determinar significación estadística.

Tabla 6.7: Imágenes de textura utilizadas en el experimento: (a) características de cada imagen y
(b) parámetros de los filtros de Gabor usados en cada imagen.

Nombre N D K⇤ Nombre K b ✓
Textura01 256⇥256 18 2 Textura01 2 0.5 45
Textura02 256⇥256 18 3 Textura02 2 0.5 45
Textura03 256⇥256 18 4 Textura03 2 0.5 45
Textura04 256⇥256 18 4 Textura04 2 0.5 45
Textura05 256⇥256 18 4 Textura05 2 0.5 45
Textura06 256⇥256 18 5 Textura06 2 0.5 45
Textura07 256⇥256 18 5 Textura07 2 1.0 45
Textura08 256⇥256 18 5 Textura08 2 0.5 45
Textura09 256⇥256 18 6 Textura09 2 0.5 45
Textura10 256⇥256 18 8 Textura10 2 0.5 45
Zebra 256⇥384 50 2 Zebra 2 3.0 15
Frog 256⇥329 50 2 Frog 2 0.5 15
Mantas 256⇥256 18 2 Mantas 2 0.5 45
Field 256⇥256 18 4 Field 2 3.0 45
(a) (b)
94 6.4. Segmentación automática de imágenes de texturas

(a) (b) (c) (d) (e)

(f) (g) (h) (i) (j)

(k) (l) (m) (n)

Figura 6.6: Imágenes de textura sintéticas (a)–(j) e imágenes de textura reales (k)–(n) utilizadas.

6.4.3 Resultados de segmentación de texturas

Los resultados experimentales en términos del número de grupos K, índice ARI e índice
Silhouette (Sil) se muestran en la Tabla 6.8. Para cada imagen de textura de prueba se
han sombreado los mejores valores promedio de K, ARI y Sil, mientras que los resultados
estadísticamente similares con respecto al mejor desempeño han sido indicados en negrita. A
continuación se presentan las observaciones generales derivadas del diseño experimental:

Calidad del número de grupos obtenido (K): el algoritmo CADE obtuvo el mejor
desempeño al estimar correctamente el número de grupos para la mayoría de las imágenes
de textura estudiadas. CADE estimó correctamente el número de grupos en 12 de 14
imágenes, y obtuvo un desempeño cercano al ideal para las imágenes restantes, Textura08
y Textura10. Por otro lado, el algoritmo K-means+ también obtuvo un buen desempeño;
sin embargo, su desempeño fue bajo para la imagen Textura10, la cual posee ocho texturas
diferentes.
6. Resultados experimentales 95

Calidad de la partición obtenida (ARI): el algoritmo K-means+ obtuvo el mejor


desempeño de agrupamiento en términos del índice ARI en 9 de 14 imágenes de textura.
Por otro lado, los algoritmos K-means y CADE obtuvieron el mejor desempeño en siete y
seis imágenes, respectivamente.

Calidad del valor de aptitud alcanzado (Sil): el algoritmo CADE obtuvo el mejor
desempeño de agrupamiento en términos del índice Sil en 13 de 14 imágenes de textura.
Por otro lado, los algoritmos K-means y K-means+ obtuvieron valores de aptitud inferiores
al algoritmo propuesto CADE.

Tabla 6.8: Valores del índice ARI, valores de aptitud del índice Silhouette (Sil) y número de grupos
(K) obtenidos por los algoritmos K-means, K-means+ y CADE.

K-means K-means+ CADE

Imagen N D K⇤ ARI Sil K ARI Sil K ARI Sil

Textura01 256⇥256 18 2 0.941 0.398 2.0 0.941 0.398 2.0 0.899 0.412
Textura02 256⇥256 18 3 0.921 0.389 3.0 0.921 0.388 3.0 0.923 0.390
Textura03 256⇥256 18 4 0.929 0.464 4.0 0.929 0.464 4.0 0.920 0.464
Textura04 256⇥256 18 4 0.914 0.488 4.0 0.916 0.488 4.0 0.918 0.492
Textura05 256⇥256 18 4 0.914 0.418 4.0 0.914 0.418 4.0 0.905 0.419
Textura06 256⇥256 18 5 0.936 0.513 5.0 0.936 0.513 5.0 0.930 0.514
Textura07 256⇥256 18 5 0.906 0.384 5.0 0.914 0.386 5.0 0.908 0.387
Textura08 256⇥256 18 5 0.865 0.323 4.9 0.868 0.326 4.9 0.874 0.327
Textura09 256⇥256 18 6 0.651 0.305 6.0 0.650 0.305 6.0 0.659 0.306
Textura10 256⇥256 18 8 0.645 0.232 9.0 0.673 0.240 8.4 0.640 0.236

Zebra 256⇥384 50 2 0.838 0.621 2.0 0.838 0.621 2.0 0.803 0.624
Frog 256⇥329 50 2 0.736 0.280 2.0 0.736 0.280 2.0 0.759 0.287
Mantas 256⇥256 18 2 0.910 0.547 2.0 0.910 0.547 2.0 0.896 0.551
Field 256⇥256 18 4 0.924 0.541 4.0 0.924 0.541 4.0 0.924 0.554

Al considerar los tres índices de desempeño y las 14 imágenes de textura, se observó que
CADE obtuvo el mejor desempeño en 33 de 42 casos posibles, mientras que K-means+ obtuvo
el mejor desempeño en 23 casos. Además, al considerar únicamente los valores de los índices
ARI y Sil, se observó que los algoritmos K-means, K-means+ y CADE obtuvieron el mejor
desempeño de agrupamiento en siete, diez y 19 casos de 28 posibles, respectivamente. Por
tanto, el algoritmo CADE obtuvo en general el mejor desempeño de agrupamiento en términos
del número de grupos obtenido (K) y de los índices ARI y Sil.
96 6.4. Segmentación automática de imágenes de texturas

(a) (b) (c) (d) (e)


Entrada
K-means
CADE

Figura 6.7: Segmentación de texturas de los algoritmos K-means y CADE: (a) textura01, (b) textura02,
(c) textura03, (d) textura04 y (e) textura05.

(a) (b) (c) (d) (e)


Entrada
K-means
CADE

Figura 6.8: Segmentación de texturas de los algoritmos K-means y CADE: (a) textura06, (b) textura07,
(c) textura08, (d) textura09 y (e) textura10.
6. Resultados experimentales 97

(a) (b) (c) (d)


Entrada
K-means
CADE

Figura 6.9: Segmentación de texturas de los algoritmos K-means y CADE: (a) zebra, (b) frog, (c) mantas
y (d) field.

Por otro lado, las Figuras 6.7, 6.8 y 6.9 ilustran las imágenes segmentadas obtenidas por
los algoritmos K-means y CADE. Para las imágenes Textura01 y Textura02, se observó que
ambos algoritmos realizaron una buena segmentación de texturas. Para las imágenes con
cuatro diferentes tipos de texturas (Textura03, Textura04 y Textura05), se observó que
CADE obtuvo el número correcto de grupos, además de generar una mejor segmentación que
el algoritmo K-means. Para las imágenes con cinco diferentes tipos de textura (Textura06,
Textura07 y Textura08), se observó que CADE estimó correctamente el número de texturas y
presentó resultados similares a K-means. Las imágenes Textura09 y Textura10 presentan
un alto grado de dificultad debido al gran número de texturas con diferentes formas, se
observó que CADE obtuvo un buen desempeño al estimar la mayoría de las texturas y generó
segmentaciones similares al algoritmo K-means. Además, respecto a las imágenes de textura
reales presentadas en la Figura 6.9, se observó que ambos algoritmos presentaron resultados
similares. Además, CADE estimó adecuadamente el número de regiones en todas las imágenes
de textura estudiadas, a diferencia de K-means que requiere el número correcto de grupos
como parámetro de entrada.
98 6.5. Discusión de resultados

6.5 Discusión de resultados


Los resultados experimentales en las Secciones 6.2 y 6.3 revelaron que el enfoque de
agrupamiento propuesto cSVM+CADE obtuvo un buen desempeño de agrupamiento para
todas las categorías de datos G1 , G2 , G3 y G4 . En el primer experimento, cSVM+CADE se
comparó con cuatro algoritmos de agrupamiento convencionales, donde se obtuvieron las
siguientes observaciones:

Para la categoría G1 todos los algoritmos obtuvieron un buen desempeño de agrupamiento.


Esto es debido a que la categoría contiene datos linealmente separables sin traslape y, por
tanto, se espera que cualquier algoritmo de agrupamiento sea capaz de lidiar con este tipo
de separabilidad.

Para la categoría G2 los algoritmos CADE y K-means obtuvieron un desempeño de agru-


pamiento adecuado en datos linealmente separables con traslape. Este buen desempeño es
debido a que K-means asume que los datos de entrada se aproximan a una distribución nor-
mal, mientras que CADE al considerar la distancia Euclidiana para cuantificar la similitud
entre patrones tiende a formar grupos hiper-esféricos inclusive con cierto nivel de trasla-
pe. Además, los algoritmos WARD, Single-linkage y DBSCAN presentaron un desempeño
de agrupamiento inferior a los algoritmos mencionados. WARD utiliza la mínima disper-
sión intragrupo para determinar los dos grupos que deben unirse, mientras que este mismo
criterio se utiliza iterativamente en K-means. DBSCAN presentó un desempeño bajo cuan-
do los grupos exhiben diferencias notables en densidad; como aquellos datos que forman
la categoría G2 . El pobre desempeño del algoritmo Single-linkage se debe a que el crite-
rio de mínima separación entre grupos no se satisface adecuadamente cuando los grupos
presentan un cierto grado de traslape.

Para la categoría G3 los algoritmos DBSCAN y CADE presentaron el mejor desempeño


de agrupamiento en datos no linealmente separables. Este buen desempeño corresponde
a que DBSCAN identifica adecuadamente grupos que presenten una alta densidad
independientemente de su forma, mientras que CADE, al considera la distancia MED
para medir la conectividad entre patrones, tiende a formar grupos de forma arbitraria
independientemente de su tipo de separabilidad. El algoritmo Single-linkage obtuvo un
desempeño pobre, el cual no está relacionado con el algoritmo sino con el IVG utilizado
para seleccionar el agrupamiento final. Nótese que cuando Single-likage recibe como
parámetro el número correcto de grupos, su desempeño es adecuado, tal y como se muestra
6. Resultados experimentales 99

en la Tabla 5.1. Finalmente, los algoritmos K-means y WARD presentaron el desempeño


de agrupamiento más bajo, esto debido a que ambos enfoques asumen que los datos de
entrada se aproximan a una distribución normal.

Para la categoría G4 los algoritmos CADE y DBSCAN presentaron el mejor desempeño de


agrupamiento en conjuntos de datos del mundo real. Estos conjuntos de datos involucran
diversas características heterogéneas como distribución, dimensionalidad, densidad; por
tanto, el agrupamiento adecuado de estos conjuntos de datos implica que el desempeño
del algoritmo de agrupamiento puede generalizarse. En contraste, el bajo desempeño de
Single-linkage se debe a la presencia de patrones con valores atípicos y grupos traslapados.

En el segundo experimento se observó que todos los algoritmos de agrupamiento


metaheurísticos estudiados presentaron un desempeño de agrupamiento adecuado, aunque
se observó que el algoritmo propuesto CADE obtuvo en general el mejor desempeño de
agrupamiento y de convergencia. El buen desempeño de los algoritmos es debido a que
incorporaron el selector de la métrica (cSVM), de modo que los enfoques conducen a buenas
soluciones cuando la métrica en el IVG es la adecuada. Por tanto, la identificación el tipo de
separabilidad de los datos para adaptar la medida de proximidad resultó ser más relevante
que el tipo de metaheurística subyacente del algoritmo de agrupamiento automático.
Finalmente, para demostrar la utilidad del algoritmo CADE en una aplicación del mundo
real, se realizó una prueba de concepto para la segmentación de imágenes de textura. Se
seleccionó esta aplicación debido a que la segmentación de imágenes puede plantearse como
un problema de agrupamiento de píxeles con intensidades o texturas similares. Generalmente,
en los métodos que realizan segmentación de texturas se requiere definir a priori el número
de regiones de textura que se desean encontrar, donde el algoritmo k-means suele ser el
más utilizado. Los resultados experimentales en la Sección 6.4.3 mostraron que el algoritmo
CADE fue capaz de estimar automáticamente el número correcto de regiones de textura y fue
competitivo con el algoritmo k-means. Estos resultados confirman el potencial del algoritmo
CADE para segmentar imágenes de textura sin definir a priori el número de regiones.

6.6 Conclusiones
Este capítulo ha presentado un nuevo enfoque de agrupamiento para abordar el problema
AAD. Se propuso adaptar la métrica en el IVG en función del tipo de separabilidad de los
datos de entrada. La selección de la métrica se realizó con un clasificador SVM (cSVM), donde
100 6.6. Conclusiones

la generación del modelo de clasificación considera el análisis de los datos usando diferentes
criterios de agrupamiento intragrupo. Después, se propuso un algoritmo de agrupamiento
basado en evolución diferencial (CADE) que utilizó la medida de proximidad seleccionada en
la etapa previa. CADE se caracteriza por incorporar una inicialización basada en oposición,
para mejorar la convergencia, y utiliza una estrategia de mutación DE/current-to-pbest, para
mejorar la diversidad del algoritmo.
El enfoque cSVM+CADE se desempeñó adecuadamente al agrupar datos con diferentes
tipos de separabilidad y fue comparado con otros ocho algoritmos de agrupamiento en
términos de los índices ARI y NSR. El primer experimento, cSVM+CADE obtuvo el mejor
desempeño de agrupamiento en términos de ARI y NSR al compararse con otros cuatro
algoritmos de agrupamiento convencionales. En el segundo experimento se analizó el
desempeño de CADE con otros cuatro algoritmos de agrupamiento metaheurísticos; todos
los algoritmos incluyeron el componente cSVM para seleccionar la métrica. Se observó que
el componente cSVM estimó adecuadamente la métrica; por tanto, todos los algoritmos
analizados obtuvieron un buen desempeño de agrupamiento. No obstante, se observó que
CADE obtuvo el mejor desempeño general en términos de los índices ARI y NSR. Además,
CADE obtuvo un buen desempeño de convergencia en términos de los valores del índice
Silhouette.
Para demostrar la aplicabilidad del algoritmo CADE en un problema del mundo real, se
abordó el problema de la segmentación automática de texturas, donde se ha considerado
un enfoque basado en filtros de Gabor. Se emplearon imágenes de textura sintéticas y
reales, las cuales fueron procesadas por los algoritmos CADE, K-means+ y K-means. Los
resultados experimentales señalaron que el algoritmo CADE obtuvo el mejor desempeño de
agrupamiento en términos del número de grupos, índice ARI e índice Silhouette. Se observó
que cuando el índice Silhouette se utilizó como un índice interno (i.e, función objetivo en
CADE), se obtuvieron mejores valores de aptitud que cuando se utilizó como un índice externo
en el algoritmo K-means+ . Estos hallazgos indicaron que el uso del índice Silhouette como
una función objetivo en CADE es un enfoque adecuado para estimar el número correcto
de regiones y, además, obtener segmentaciones consistentes y similares a las imágenes de
referencia.
Conclusiones
7
E STA tesis abordó el agrupamiento automático de datos (AAD) con diferentes tipos
de separabilidad usando algoritmos metaheurísticos. En particular, la investigación
se ha centrado en el análisis del tipo de separabilidad de los datos de entrada para
adaptar la métrica en el IVG, lo cual permitió incrementar el desempeño de un algoritmo
de agrupamiento. El propósito de este capítulo final es presentar las conclusiones y
contribuciones principales obtenidas durante el desarrollo de esta investigación.

7.1 Conclusiones
En primer lugar, en el Capítulo 3 se presentó un estudio del estado del arte relacionado
con uso de algoritmos metaheurísticos para abordar el problema AAD. Se revisó un total de
35 algoritmos de agrupamiento metaheurísticos que han sido publicados en las últimas dos
décadas, donde en años recientes existe una tendencia de enfoques híbridos. Se encontró que
los algoritmos evolutivos han sido ampliamente utilizados, representado aproximadamente
el 80 % de todos los enfoques revisados. Esto se debe a que los algoritmos evolutivos han
demostrado su eficacia en la resolución de problemas en diferentes dominios y, en general, a
sus propiedades para resolver problemas reales y complejos (e.g., multimodales, inseparables,
con restricciones, etc.) [10]. Además, se identificaron diferentes tipos de codificaciones para
representar una solución de agrupamiento que permita variar el número de grupos. Se

101
102 7.1. Conclusiones

observó que, debido a su simplicidad, efectividad y escalabilidad, la representación basada en


centroides tiende a ser la más utilizada en la literatura. Asimismo, se identificaron diferentes
IVGs que han sido propuestos para evaluar la calidad de una solución de agrupamiento; sin
embargo, en los trabajos revisados existe poca evidencia del desempeño de estos IVGs como
función objetivo en los algoritmos de agrupamiento metaheurísticos. También, se observó
que la mayor parte de los esfuerzos se han enfocado en agrupar datos linealmente separables,
donde el agrupamiento de datos no linealmente separables representa un campo de estudio
abierto.

El primer estudio de esta investigación consistió en evaluar el desempeño de 22 IVGs,


lo cual se presentó en el Capítulo 4. En los problemas del mundo real generalmente se
desconoce el tipo de distribución de los datos de entrada; por tanto, es deseable tener
enfoques de agrupamiento capaces de lidiar con datos de diferentes tipos de separabilidad.
En este sentido, el estudio comparativo de IVGs consideró datos linealmente separables
sin traslape, linealmente separables con traslape y no linealmente separables. Este estudio
reveló que la mayoría de los IVGs presentaron un desempeño de agrupamiento adecuado
para datos linealmente separables sin traslape, aunque el desempeño de algunos disminuyó
significativamente cuando los datos son linealmente separables con traslape. Además, se
observó que los IVGs estudiados presentaron un desempeño de agrupamiento pobre en
datos no linealmente separables, lo cual está relacionado con lo siguiente: utilizar puntos
representativos (prototipos) para representar los grupos y asumir que los datos de entrada se
aproximan a una distribución normal. En este escenario, los criterios de dispersión intragrupo
y separación intergrupo no se satisfacen simultáneamente, de modo que el IVG pierde su
capacidad discriminatoria, produciendo soluciones de agrupamiento inadecuadas. De manera
general, el índice Silhouette obtuvo el mejor desempeño de agrupamiento, por lo cual
se sugiere este índice como función objetivo para el agrupamiento de datos linealmente
separables con grupos bien separados o inclusive con cierto nivel de traslape. El buen
desempeño del índice Silhouette está relacionado con su propiedad única de calcular para
cada patrón en el conjunto de datos su propia dispersión intragrupo y separación intergrupo;
en contraste, los otros IVGs calculan estos criterios a nivel de agrupaciones, de modo que
el grado de refinamiento es menor. Además, estos hallazgos sobre el índice Sil al agrupar
datos linealmente separables confirman otros resultados similares reportados en el estado
del arte [83, 84]. Por otro lado, una alternativa para el agrupamiento exitoso de datos no
linealmente separables es reemplazar en el IVG el criterio de similitud basado en proximidad
por uno basado en la conectividad de los datos.
7. Conclusiones 103

En el Capítulo 5 se presentó el método de agrupamiento propuesto que consiste de un


selector de la métrica y de un algoritmo de agrupamiento basado en ED. En primer lugar,
se realizó un análisis sobre la influencia de la métrica en el índice Silhouette al agrupar
datos con diferentes tipos de separabilidad. Se utilizaron como criterios de similitud a la
distancia Euclidiana, para medir proximidad, y la distancia MED, para medir conectividad.
El experimento reveló lo siguiente: (i) ambas funciones de distancia se desempeñaron
adecuadamente para datos linealmente separables sin traslape, (ii) la distancia Euclidiana
presentó el mejor desempeño en datos linealmente separables con traslape y (iii) la distancia
MED obtuvo el mejor desempeño en datos no linealmente separables. Estos resultados están
relacionados con el grado de conectividad de los datos que pertenecen a un grupo en
particular. En el caso de datos linealmente separables, los grupos que se forman usando
la distancia Euclidiana presentan de manera inherente alta conectividad, es decir, no se
generan regiones vacías dentro de un grupo. Por otro lado, en el caso de datos no linealmente
separables, los grupos formados mediante la distancia Euclidiana poseen baja conectividad,
de modo que en este escenario resulta más conveniente usar un criterio de similitud basado
en conectividad como la distancia MED.

A partir de estos hallazgos, con la finalizad de adaptar el criterio de similitud en el IVG,


se propuso un selector de la métrica a partir de un análisis del tipo de separabilidad de los
datos. Para la creación del selector se consideraron 174 conjuntos de datos, divididos en tres
colecciones de acuerdo a su tipo de separabilidad, y 20 criterios de agrupamiento basados
en dispersión intragrupo y separación intergrupo, extraídos de los 22 IVGs utilizados en el
Capítulo 4. Para cada conjunto de datos, estos criterios fueron utilizados para evaluar una
colección de agrupamientos hiper-esféricos generados por el algoritmo K-means al variar el
p
número de grupos, K, en el rango [1, N]. La expectativa era que estos criterios convergieran
más rápidamente para datos que efectivamente son linealmente separables y, por otra parte,
se esperaba una lenta convergencia para datos no linealmente separables. De esta manera se
puede caracterizar el tipo de separabilidad de los datos en términos de dispersión intragrupo
y separación intergrupo. Al analizar las gráficas de convergencia, se observó que los criterios
de dispersión intragrupo discriminaron mejor entre tipos de separabilidad cuando K tiende
a uno; por el contrario, los criterios de separación intergrupo discriminaron mejor cuando
p
K tiende a N. Estos comportamientos obedecen a que la mayor información sobre la
distribución y varianza de los patrones es cuando todos los patrones están englobados en
pocos grupos. Por otro lado, la información sobre grupos bien definidos y aislados se obtienen
cuando el número de grupos tiende al número de patrones en el conjunto de datos.
104 7.1. Conclusiones

La formación del conjunto de características consideró estas observaciones, donde además


se contempló una etiqueta de clase para cada tipo se separabilidad. De esta manera, el
comportamiento de los criterios de agrupamiento en función del tipo de separabilidad
puede ser modelado mediante aprendizaje supervisado. Se utilizó un clasificador SVM que
evaluó gradualmente subespacios de características obteniendo un modelo de clasificación
(denominado cSVM) capaz de distinguir entre tipos de separabilidad. Por tanto, la clase
asignada por el clasificador es usada para seleccionar la métrica que será utilizada por el
IVG. En este sentido, si el clasificador indica que los datos son linealmente separables sin
traslape o no linealmente separables entonces se usa la distancia MED, en otro caso, se trata
de datos linealmente separables con traslape y se usa la distancia Euclidiana.

Por otra parte, se propuso un algoritmo de agrupamiento automático basado en evolución


diferencial (CADE), el cual utiliza una inicialización basada en oposición y una estrategia de
mutación current-to-pbest. Estos dos componentes han probado por separado su eficiencia en
diversos problemas de optimización; por consiguiente, en esta propuesta fueron integrados
en el diseño del algoritmo de agrupamiento CADE. La inicialización y actualización de la
población basada en oposición ayuda en la aceleración de convergencia del algoritmo. Por
otro lado, la estrategia de mutación current-to-pbest selecciona aleatoriamente alguna de
las mejores soluciones en la población, de modo que se incrementaría la diversidad en la
población para evitar problemas de convergencia prematura, ya que no necesariamente se
selecciona la mejor solución.

El desempeño del enfoque propuesto cSVM+CADE se comparó contra ocho algoritmos de


agrupamiento en dos experimentos independientes. En el primer experimento, cSVM+CADE
se comparó contra cuatro algoritmos de agrupamiento convencionales K-means, Single-
linkage, WARD y DBSCAN. Se observó que los algoritmos convencionales obtuvieron un
buen desempeño para un tipo de separabilidad en específico. No obstante, ninguno de los
cuatro métodos fue capaz de resolver adecuadamente el agrupamiento de todos los tipos
de separabilidad. Por el contrario, se observó que CADE obtuvo un buen desempeño para
los tres tipos de separabilidad, y fue competitivo con aquellos casos donde un algoritmo
convencional funcionó adecuadamente. Este buen desempeño de CADE está relacionado con
la incorporación del selector de la métrica para estimar adecuadamente la función de distancia
en función del tipo de separabilidad. Por tanto, los algoritmos convencionales podrían mejorar
su desempeño al incorporar de alguna manera el selector cSVM; no obstante, este proyecto de
investigación se acotó a la adaptación de la métrica en un IVG usado como función objetivo
en un algoritmo de agrupamiento metaheurístico.
7. Conclusiones 105

En el segundo experimento, se comparó el desempeño del algoritmo propuesto CADE


contra cuatro algoritmos de agrupamiento metaheurísticos reportados en la literatura: CDE,
ACDE, MEPSO y TGCA. Para realizar un estudio comparativo justo, se incorporó el selector
SVM y el índice Silhouette en cada algoritmo, aunque preservando las características y
componentes intrínsecos de los algoritmos de agrupamiento. En general, los resultados
experimentales revelaron que CADE obtuvo el mejor desempeño en términos de calidad del
agrupamiento, número de grupos y velocidad de convergencia. Además, se observó que la
incorporación del selector cSVM en los algoritmos estudiados propició un buen desempeño
de agrupamiento debido a que se seleccionó adecuadamente la métrica. Se concluye que
aunque cada algoritmo posee operadores de optimización conceptualmente diferentes, el
agrupamiento de datos con diferente tipo de separabilidad es dependiente del tipo de criterio
de similitud y no tanto del tipo de metaheurística, ya que todas tuvieron la capacidad de
converger a buenas soluciones de agrupamiento. Por tanto, es recomendable continuar los
esfuerzos en el diseño de nuevos IVGs y criterios de similitud.

El algoritmo propuesto CADE se utilizó para la segmentación automática de imágenes de


textura sintéticas y reales. Esta aplicación se seleccionó como prueba de concepto debido
a la gran cantidad de problemas de segmentación en el mundo real, por ejemplo, en la
detección de distintos tipos de vegetación o construcciones en imágenes aéreas y espectrales,
en la identificación de distintos tejidos en imágenes médicas, entre otras. En los resultados
experimentales, CADE obtuvo resultados similares a un enfoque de segmentación de texturas
ampliamente utilizado basado en K-means. Además, CADE demostró ser un enfoque adecuado
para estimar el número correcto de regiones en todas las imágenes de textura estudias, a
diferencia de K-means que requiere el número correcto de grupos como parámetro de entrada.

El enfoque propuesto tiene algunas limitaciones como el agrupamiento de datos no


linealmente separables con grupos traslapados, ya que este tipo de separabilidad no fue
considerado en esta investigación debido a que es un escenario particularmente complejo,
de modo que el selector de la métrica no está entrenado para detectar este caso. Por tanto, se
requiere mayor investigación para caracterizar las propiedades de este tipo de separabilidad.
También, el enfoque propuesto no fue estudiado desde el punto de vista de la dimensionalidad
de los datos, aunque en el caso de segmentación de imágenes hubo espacios de características
con 18 y 50 dimensiones. Sin embargo, aun falta investigar el impacto de la dimensionalidad
en el enfoque propuesto. Además, debido a que el enfoque requiere computar el árbol
recubridor mínimo para calcular la distancia MED entre patrones, es necesario considerar
estrategias de paralelismo para que el enfoque sea escalable con respecto al número de
106 7.2. Contribuciones

patrones en el conjunto de datos. Finalmente, como trabajo futuro se propone analizar


otras propiedades de los datos como el grado de traslape, ruido en los datos y mejorar
la escalabilidad del método. Otra dirección de investigación interesante sería incorporar y
adaptar el selector cSVM en los algoritmos de agrupamiento convencionales.

7.2 Contribuciones
El proyecto de investigación presenta las siguientes contribuciones:

Un estudio extenso y detallado del estado del arte sobre trabajos relacionados al
agrupamiento automático usando metaheurísticas. Este estudio ha sido publicado en la
revista Applied Soft Computing, en 2016, intitulado “Automatic clustering using nature-
inspired metaheuristics: A survey” [9].

Un estudio comparativo del desempeño de diferentes IVGs utilizados como función objetivo
en un algoritmo de agrupamiento automático basado en evolución diferencial.

Un enfoque de agrupamiento automático que consiste de un selector de la métrica


basado en un clasificador SVM y un algoritmo de agrupamiento metaheurístico basado
en evolución diferencial, el cual es capaz de agrupar datos con diferentes tipos de
separabilidad. Este enfoque puede ser utilizado en diversas aplicaciones reales como la
segmentación de imágenes, análisis de datos de microarrays, etc.
Listado de índices de validez de grupos
A
A C ontinuación se presentan los IVGs estudiados en este trabajo de investigación. Cada
IVG tiene asignado un acrónimo, una flecha que indica si debe maximizarse (") o
minimizarse (#), una descripción basándose en los criterios de compacidad intragrupo y
separabilidad intergrupo y, finalmente, la formulación matemática del IVG.

Índice Dunn (DI" ) [22]: La compacidad de cada grupo se representa por la distancia
máxima entre sus patrones y la separabilidad se representa por la distancia mínima entre
los patrones de diferentes grupos, lo cual se expresa como

mı́nck 2C mı́ncr 2C\ck { (ck , cr )}


DI(C) = , (A.1)
máxck 2C { (ck )}
donde

(ck , cr ) = mı́nxi 2ck ,xj 2cr {de (xi , xj )} ,


(ck ) = máxxi ,xj 2ck {de (xi , xj )} .

Variantes del índice Dunn1 (gD31" , gD41" , gD51" , gD33" , gD43" , gD53" ) [16], donde
los subíndices representan el tipo de variante de cohesión ( ) y separación ( ),
respectivamente. En este sentido, las variantes del índice DI son combinaciones de tres
variantes de la medida de separación :

1 Bedeck y Pal presentaron 18 variantes, aunque únicamente fueron seleccionadas las variantes que presentaron un
mejor desempeño de acuerdo al trabajo de et al. [84].

107
108

P
3 (ck , cr ) = 1
nk ⇥nr xi 2ck ,xj 2cr de (xi , xj ) ,
4 (ck , cr ) = de (c̄k , c̄r ) , (A.2)
hP P i
5 (ck , cr ) = nk +nr xi 2ck de (xi , c̄k ) + xj 2cr de (xj , c̄r )
1

y dos variantes de la medida de compacidad :

1 (ck ) = máx {de (xi , xj )} ,


xi ,xj 2ck
2 X
3 (ck ) = de (xi , c̄k ) .
nk x 2c
i k

Índice Calinski–Harabasz (CH" ) [14]: La compacidad de cada grupo se calcula como la


suma de las distancias entre los patrones a su respectivo centroide y la separabilidad se
define como la suma de las distancias entre los centroides de los grupos y el centroide
global, y se expresa como

P ⌘
N-K n
ck 2 C k e d 2
c̄ k , X
CH(C) = ⇥P P . (A.3)
xi 2ck de (xi , c̄k )
2
K-1 ck 2 C

Índice C (CI# ) [28]: Este es un índice normalizado donde la compacidad de cada grupo
se computa como la suma de las distancias entre los patrones que lo conforman y la
separabilidad se calcula como la suma de las distancias mínimas y máximas entre todos
los patrones del conjunto de datos, lo cual se expresa como

S(C) - Smı́n (C)


CI(C) = , (A.4)
Smáx (C) - Smı́n (C)
donde
P P
S(C) = ck 2 C xi ,xj 2ck de (xi , xj ) ,
P
Smı́n (C) = mı́n (nw )xi ,xj 2X {de (xi , xj )} ,
P
Smáx (C) = máx (nw )xi ,xj 2X {de (xi , xj )} .

donde nw es el número de pares de objetos en una partición que pertenecen al mismo


P
grupo, nw = ck 2C n2k .
Índice Davies–Bouldin (DB# ) [19]: La compacidad de cada grupo se calcula como la suma
de las distancias entre los patrones a su respectivo centroide, mientras que la separabilidad
está basada en las distancias entre los centroides de diferentes grupos y se define como
A. Listado de índices de validez de grupos 109

1 X S(ck ) + S(cr )
DB(C) = máx , (A.5)
K c r 2 C \c k
ck 2 C
de (c̄k , c̄r )

donde

1 X
S(ck ) = de (xi , c̄k ) .
nk x 2 c
i k

Índice Davies–Bouldin modificado (mDB# ) [20]: Este índice es una variación del índice DB,
donde el criterio de separación se calcula como la suma de las distancias mínimas entre los
diferentes centroides y se define como

1 X máxcr 2C\ck {S(ck ) + S(cr )}


mDB(C) = . (A.6)
K mı́ncr 2C\ck {de (c̄k , c̄r )}
ck 2 C

Índice Silhouette (Sil" ) [23]: Este es un índice normalizado donde la compacidad de cada
grupo está basada en la distancia promedio de los patrones en el grupo, mientras que la
separabilidad está basada en la distancia mínima entre los patrones de grupos diferentes,
lo cual se expresa como

1 X X b (xi , ck ) - a (xi , ck )
SI(C) = , (A.7)
N x 2c
ck 2 C
máx {b ( xi , c k ) , a (xi , c k )}
i k

donde

1 X
a (xi , ck ) = de (xi , xj ) ,
nk - 1 x 2c
j k
8 9
<1 X =
b (xi , ck ) = mı́n de (xi , xj ) .
cr 2C\ck : nr ;
x 2c j r

Índice Xie–Beni (XB# ) [15]: La compacidad de cada grupo se calcula como la suma de las
distancias entre los patrones a su respectivo centroide y la separabilidad se representa por
la distancia mínima entre los diferentes centroides, lo cual se define como
P P
ck 2 C xi 2ck d2e (xi , c̄k )
XB(C) = ⌦ ↵. (A.8)
N mı́nck 2C mı́ncr 2C\ck d2e (c̄k , c̄r )
1
Índice S_Dbw (SDbw# ) [24]: Este índice está basado en la norma Euclidiana, kxk = xT x 2 ;
110

P ⇣ ⌘2
la varianza del conjunto de datos, (X) = 1
|X| xi 2X xi - X , y la desviación estándar del
qP
agrupamiento, stdev (C) = 1
K ck 2 C k (ck )k. El índice SDbw se expresa como

P k (ck )k
Scat(C) = 1
K ck 2C k (X)k ,
P P den(ck ,cr )
Dbw(C) = 1
K(K-1) ck 2 C cr 2C\ck máx{den(ck ),den(cr )} , (A.9)
SDbw(C) = Scat(C) + Dbw(C),

donde
P
den (ck ) = xi 2ck f (xi , c̄k ) ,
P
den (ck , cr ) = xi 2ck [cr f xi , c̄k +2
c̄r
,

y
8
<0 if de (xi , c̄k ) > stdev (C)
f (xi , c̄k ) = .
:1 otherwise

Índice CS (CS# ) [25]: La compacidad de cada grupo es el promedio de las distancias entre
los patrones que forman el grupo, mientras que la separabilidad se calcula como la suma
de las distancias mínimas entre los diferentes centroides, lo cual se define como
P
(ck )
ck 2 C
CS(C) = P , (A.10)
ck 2C mı́ncr 2C\ck {de (c̄k , c̄r )}

donde

1 X
(ck ) = máx {de (xi , xj )} .
nk x 2c xj 2ck
i k

Índice Score Function (SF" ) [17]: La compacidad de cada grupo es el promedio de las
distancias entre los patrones a su respectivo centroide y la separabilidad se calcula como la
suma de las distancias entre los centroides de los grupos al centroide global multiplicado
por el número de patrones en cada grupo, lo cual se define como

1
SF(C) = 1 - ebcd(C)-wcd(C)
, (A.11)
e
donde
A. Listado de índices de validez de grupos 111

X 1 X
wcd (C) = de (xi , c̄k ) ,
nk x 2c
ck 2 C i k
P ⇣ ⌘
n
ck 2 C k ed c̄ k , X
bcd (C) = .
N⇥K

Índice PBM (PBM" ) [82]: La compacidad de cada grupo se calcula como la suma de
las distancias entre los patrones a su respectivo centroide, además se considera una
compacidad global que se obtiene al sumar las distancias entre los patrones en conjunto de
datos al centroide global. La separabilidad se representa por la distancia máxima entre los
diferentes centroides. El índice PBM se define como
2 P ⇣ ⌘ 32
xi 2X de xi , X
PBM(C) = 4 P P ⇥ máx {de (c̄k , c̄r )}5 . (A.12)
K ck 2 C xi 2ck de (xi , c̄k ) ck ,cr 2C

Índice Symmetry (Sym" ) [18]: Este índice es una variante del índice PBM, la principal
diferencia es que la compacidad del grupo se calcula basándose en su simetría puntual en
lugar de la distancia Euclidiana; además, se descarta la compacidad global. El índice Sym
se define como

máxck ,cr 2C {de (c̄k , c̄r )}


Sym(C) = P P . (A.13)
K ck 2C xi 2ck dps (xi , ck )
donde la distancia de simetría puntual entre el patrón xi y el grupo ck se define por [18]:

1 X
dps (xi , ck ) = mı́n (kn ) {de (2c̄k - xi , xj )} . (A.14)
kn xj 2ck

donde 2c̄k - xi es el punto simétrico de xi con respecto al centroide de ck y kn = 2 son sus


P
puntos vecinos más cercanos. La función mı́n puede interpretarse como una adaptación
P
de la función mı́n, donde mı́n (n) obtiene la suma de los n elementos más pequeños.
Índices basados Simetría Puntual (SDB# , SDI" ) [27]: Estos índices además de incluir la
distancia de simetría puntual, dps , también modificaron el criterio de compacidad. Por un
lado, el índice SDB, basado en el índice DB, calcula la compacidad como

1 X
S(ck ) = dps (xi , c̄k ) . (A.15)
nk x 2 c
i k

Por otro lado, el índice SDI, basado en el índice DI, obtiene la medida de cohesión como
112

(ck ) = máx {dps (xi , c̄k )} . (A.16)


xi 2ck

Índice COP (COP# ) [26]: La compacidad de cada grupo es el promedio de las distancias
entre los patrones que lo forman y la separabilidad se representa por la distancia mínima
de las distancias máximas entre los patrones de grupos diferentes, lo cual se expresa como
P
xi 2ck de (xi , c̄k )
1
1 X nk
COP(C) = nk . (A.17)
N mı́nxi 2/ck máxxj 2ck de (xi , xj )
ck 2 C

Índice SV (SV" ) [21]: La compacidad de cada grupo es la suma de las distancias entre
un porcentaje de los patrones a su respectivo centroide, mientras que la separabilidad se
calcula como la suma de las distancias mínimas entre los centroides de los grupos. El índice
SV se define como
P
mı́nc 2C\ck {de (c̄k , c̄r )}
SV(C) = P ⇣ ck 2⌘C P r . (A.18)
10
ck 2C nk máx nk
xi 2ck 10 {d e ( x ,
i kc̄ )}
Metaheurísticas
B
A C ontinuación se presentan las metaheurísticas que fueron utilizadas como el enfoque de
agrupamiento subyacente de los algoritmos TGCA, ACDE y MEPSO, los cuales están
descritos en la Sección 2.5.

Algoritmo genético
El AG fue creado por J. Holland en la década de 1970 para entender el proceso adaptativo de
los sistemas naturales. Los AGs funcionan entre un conjunto de soluciones llamado fenotipo
y el conjunto de individuos de una población natural, codificando la información de cada
solución en una cadena llamada cromosoma. Cuando la representación de los cromosomas
se hace con cadenas binarias se le conoce como genotipo. Los símbolos que forman el
cromosoma son llamados genes. Los cromosomas evolucionan a través de iteraciones llamadas
generaciones. En cada generación, los cromosomas son evaluados usando alguna medida
de aptitud (f(·)). Para las siguientes generaciones, los nuevos cromosomas son generados
aplicando los operadores genéticos de selección, recombinación (o cruza), mutación y
reemplazo. La estructura básica del algoritmo genético con representación real se presenta
en el Algoritmo 2, mientras que los pasos básicos se detallan a continuación:

Inicialización: Sea Pg = {zg1 , . . . , zgNP } la población actual con NP individuos en la


generación g = 0. El i-ésimo individuo es un cromosoma d-dimensional denotado como
zgi = [zgi,1 , . . . , zgi,d ], donde cada variable se inicializa aleatoriamente con una distribución
up
uniforme entre los límites inferior (zlow low
j ) y superior (zj ) tal que zj 6 zi,j 6 zup
j .

113
114

Selección: En cada generación g, basándose en la aptitud de cada individuo, elegir NP


2
pares de cromosomas, donde aquellos con mejor aptitud tienen mayor probabilidad de ser
seleccionados debido a que la técnica de selección (s(·)) los favorece.

Recombinación: Aplicar a cada par de individuos un operador de recombinación (c(·)), el


cual crea dos descendientes al combinar las características de ambos cromosomas.

Mutación: Utilizar una técnica de mutación (m(·)) para modificar de forma aleatoria
algunos genes de los individuos.

Reemplazo: Una vez aplicados los operadores genéticos, utilizar una técnica de reemplazo
(r(·)) para seleccionar a los mejores individuos que formarán la nueva población de la
siguiente generación.

Algoritmo 2: Pseudocódigo de un algoritmo genético simple.


Input: Número máximo de generaciones (Gmax ) y tamaño de la población (NP)
Output: La mejor solución encontrada z⇤ 2 PGmax
1 begin
2 g=0
3 I NICIALIZACIÓN: Generar la población inicial Pg = {zg1 , . . . , zgNP }
4 while g < Gmax do
5 E VALUACIÓN: f(Pg )
6 S ELECCIÓN: Pgp = s(Pg )
7 R ECOMBINACIÓN: Pgr = c(Pgp )
8 M UTACIÓN: Pgm = m(Pgr )
9 R EEMPLAZO: Pg+1 = r(Pg , Pgm )
10 g=g+1
11 end
12 end

Algoritmo de evolución diferencial


Evolución diferencial [55] es un algoritmo evolutivo propuesto por Price y Storn para
resolver problemas de optimización global. Primero, el algoritmo ED crea una población
de soluciones candidatas y después se aplican diferentes operadores evolutivos (mutación,
cruza y selección) de manera iterativa hasta que se cumpla un criterio de paro o un número
determinado de generaciones. La estructura básica de la variante DE/rand/1/bin se presenta
en el Algoritmo 3, mientras que los pasos básicos se detallan a continuación:
B. Metaheurísticas 115

Inicialización: Sea Pg = {zg1 , . . . , zgNP } la población inicial con NP miembros en la


generación g = 0. El i-ésimo individuo es un vector d-dimensional denotado como
zgi = [zgi,1 , . . . , zgi,d ], donde cada variable se inicializa aleatoriamente de acuerdo a una
up
distribución uniforme entre los límites inferior (zlow low
j ) y superior (zj ) tal que zj 6 zi,j 6
up
zj .

Mutación: En cada generación g, para cada miembro de la población actual zgi , se crea un
vector mutante vig a partir de diferencias de vectores de la población:

vig = zgr1 + F (zgr2 - zgr3 ) , (B.1)

donde r1, r2 y r3 son números enteros seleccionados aleatoriamente del conjunto


{1, . . . , NP} \ {i} tal que r1 6= r2 6= r3, y F es el factor de escalamiento de mutación que
usualmente se define en el rango (0, 1).

Cruza: Una operación de cruza binomial crea un vector de prueba ugi al intercambiar los
elementos de los vectores zgi y vig como

8
<vg si randj (0, 1) < CR _ j = jrand
i,j
ugi,j = , (B.2)
:zg en otro caso
i,j

donde randj (0, 1) es un número aleatorio tomado de una distribución uniforme en el


intervalo [0, 1], jrand = randint (1, d) es un número entero seleccionado aleatoriamente en
el rango [1, d] y CR 2 [0, 1] es un valor escalar conocido como la tasa de recombinación.

Selección: Si la aptitud del vector de prueba f(ugi ) es mejor que la aptitud del vector actual
f(zgi ), entonces ugi reemplaza a zgi en la siguiente generación g + 1, y se expresa de la
siguiente manera:

8
<ug si f (ugi ) < f (zgi )
i
zg+1
i = , (B.3)
:z g en otro caso
i

donde f (·) denota la función objetivo que es minimizada sin pérdida de generalidad.
116

Algoritmo 3: Pseudocódigo del algoritmo DE/rand/1/bin.


Input: Número máximo de generaciones (Gmax ) y tamaño de la población (NP)
Output: La mejor solución encontrada z⇤ 2 PGmax
1 begin
2 g=0
3 I NICIALIZACIÓN: Generar la población inicial Pg = {zg1 , . . . , zgNP }
4 E VALUACIÓN: Evaluar los individuos en la población Pg
5 while g < Gmax do
6 foreach zi 2 Pg do
7 M UTACIÓN: Generar vig (B.1)
8 C RUZA: Generar ugi (B.2)
9 S ELECCIÓN: Actualizar el individuo zg+1
i (B.3)
10 end
11 g=g+1
12 end
13 end

Optimización por cúmulos de partículas


El algoritmo PSO fue originalmente desarrollado por Kennedy y Eberhart en 1995, basándose
en un concepto conocido como la metáfora social, que se resume de la siguiente forma: los
individuos que conviven en una sociedad tienen una opinión que es parte de un conjunto
de creencias compartidos por todos los posibles individuos. En este sentido, el cúmulo de
partículas es un sistema multiagente, donde las partículas son agentes simples que se mueven
por el espacio de búsqueda. Para ello, cada partícula tiene una aptitud, una posición y
una velocidad. Además, las partículas tienen una cantidad de inercia y una aceleración que
depende principalmente de dos características:

Cada partícula es atraída hacia la mejor localización en el espacio de búsqueda que ha


encontrado en su historia (mejor personal).

Cada partícula es atraída hacia la mejor localización en el espacio de búsqueda que ha sido
encontrada por el conjunto de partículas (mejor global).

La fuerza con que las partículas son empujadas en cada una de estas direcciones depende
de dos parámetros que deben ajustarse (atracción-al-mejor-personal y atracción-al-mejor-
global), de forma que a medida que las partículas se alejan de estas mejores localizaciones, la
B. Metaheurísticas 117

fuerza de atracción es mayor. También se suele incluir un factor aleatorio que influye en cómo
las partículas son empujadas hacia estas localizaciones.
Entonces, el algoritmo PSO consiste en un proceso iterativo y estocástico que opera sobre
un cúmulo de partículas. La posición de cada partícula representa una solución potencial al
problema de optimización. Generalmente, una partícula d-dimensional está compuesta por la
combinación de cuatro vectores:

El vector zi = [zi,1 , . . . , zi,d ] almacena la posición actual de la partícula.


El vector pi = [pi,1 , . . . , pi,d ] almacena la posición de la mejor solución encontrada por la
partícula hasta el momento.
El vector vi = [vi,1 , . . . , vi,d ] almacena la velocidad actual según la cual se moverá la
partícula.
El vector g = [g1 , . . . , gd ] almacena la posición de la mejor solución encontrada por la
población hasta el momento.

El cúmulo se inicializa generando las posiciones y velocidades iniciales de las partículas.


Las posiciones se generan aleatoriamente entre los rangos de las variables del espacio de
búsqueda. Las velocidades se generan aleatoriamente en el intervalo [-vmax , +vmax ], donde
vmax denota la velocidad máxima que puede tomar una partícula en cada movimiento. La
estructura del algoritmo PSO se presenta en el Algoritmo 4, mientras que las operaciones
básicas se detallan a continuación:

Velocidad: Actualizar la velocidad de la i-ésima partícula en la iteración t:

vti,j = ! · vt-1 t-1


i,j + '1 · r1 · (pi,j - zi,j ) + '2 · r2 · (gj - zi , j
t-1
), (B.4)

donde ! es el factor de inercia, '1 y '2 son pesos de aprendizaje que controlan los
componentes cognitivo y social, respectivamente, y r1 y r2 son números aleatorios tomados
de una distribución uniforme en el intervalo [0, 1].

Posición: Actualizar la posición de cada partícula en el espacio de las variables como:

zti = zt-1
i + vit . (B.5)

Actualización: Actualizar las posiciones del mejor personal y mejor global. Por tanto, en
cada iteración, cada partícula cambiará su posición de acuerdo a su experiencia propia y a
la de su vecindario.
118

Algoritmo 4: Pseudocódigo del algoritmo PSO.


Input: Número máximo de generaciones (Tmax ) y tamaño de la población (NP)
Output: La mejor solución encontrada z⇤ 2 PTmax
1 begin
2 t=0
3 I NICIALIZACIÓN: Generar un cúmulo inicial de partículas Pt = {zt1 , . . . , ztNP }
4 while t < Tmax do
5 foreach zi 2 Pt do
6 E VALUACIÓN: Evaluar cada partícula zi del cúmulo Pt
7 A CTUALIZACIÓN: Actualizar las posiciones de las mejores partículas:
8 if f(zi ) < f(pi ) then
9 pi = zi
10 end
11 if f(pi ) < f(g) then
12 g = pi
13 end
14 end
15 V ELOCIDAD: Actualizar la velocidad de vit (B.4)
16 P OSICIÓN: Actualizar la posición de zti (B.5)
17 t=t+1
18 end
19 end
Listado de criterios de agrupamientos
C
A C ontinuación se lista la formulación matemática de los criterios de agrupamiento de
dispersión intragrupo y separación intergrupo. Estos criterios fueron utilizados en la
Sección 5.2 y están basados en los IVGs descritos en el Apéndice A.

Criterios de dispersión intragrupo


Criterio wgs1 basado en el algoritmo K-means y en los índices CH y XB:

X 1 X
wgs1(C) = d2e (xi , c̄k ) . (C.1)
nk x 2c
ck 2 C i k

Criterio wgs2 basado en los índices SF, PBM y COP:

X 1 X
wgs2(C) = de (xi , c̄k ) . (C.2)
nk x 2c
ck 2 C i k

Criterio wgs3 basado en el índice DI:

wgs3(C) = máx máx {de (xi , xj )} . (C.3)


ck 2C xi ,xj 2ck

Criterio wgs4 basado en los índices CS y SV:

X 1 X
wgs4(C) = máx {de (xi , xj )} . (C.4)
nk x 2c xj 2ck
ck 2 C i k

119
120

Criterio wgs5 basado en el índice DB:

X
wgs5(C) = máx {S(ck ) + S(cr )} , (C.5)
c r 2 C \c k
ck 2 C

donde

1 X
S(ck ) = de (xi , c̄k ) .
nk x 2c
i k

Criterio wgs6 basado en el índice gD31:

2 X
wgs6(C) = máx de (xi , c̄k ) . (C.6)
ck 2C nk
x 2c i k

Criterio wgs7 basado en el índice CI:

X X
wgs7(C) = de (xi , xj ) . (C.7)
ck 2C xi ,xj 2ck

Criterio wgs8 basado en el índice Sil:

1 X X 1 X
wgs8(C) = de (xi , xj ) . (C.8)
N x 2c
nk x 2c
ck 2 C i k j k

Criterio wgs9 es una variación del criterio de dispersión wgs1:

X 2 X
wgs9(C) = de (xi , c̄k ) . (C.9)
nk x 2c
ck 2 C i k

Criterio wgs10 es una variación del criterio de dispersión wgs3:

X
wgs10(C) = máx {de (xi , xj )} . (C.10)
xi ,xj 2ck
ck 2 C

Criterios de separación intergrupo


Criterio bgs1 basado en los índices CH y SF:

X ⇣ ⌘
bgs1(C) = nk de c̄k , X . (C.11)
ck 2 C

Criterio bgs2 basado en los índices CS, mDB y SV:


C. Listado de criterios de agrupamientos 121

X
bgs2(C) = mı́n {de (c̄k , c̄r )} . (C.12)
c r 2 C \c k
ck 2 C

Criterio bgs3 basado en el índice PBM:

bgs3(C) = máx {de (c̄k , c̄r )} . (C.13)


c k , ck 2 C

Criterio bgs4 basado en los índices XB y gD41:

bgs4(C) = mı́n mı́n d2e (c̄k , c̄r ) . (C.14)


c k 2 C c r 2 C \c k

Criterio bgs5 basado en el índice DI:

bgs5(C) = mı́n mı́n mı́n {de (xi , xj )} . (C.15)


ck 2C cr 2C\ck xi 2ck ,xj 2cr

Criterio bgs6 basado en el índice DB:

X
bgs6(C) = máx {de (c̄k , c̄r )} . (C.16)
c r 2 C \c k
ck 2 C

Criterio bgs7 basado en el índice gD31:

1 X
bgs7(C) = mı́n mı́n de (xi , xj ) . (C.17)
c k 2 C c r 2 C \c k nk ⇥ nr xi 2ck ,xj 2cr

Criterio bgs8 basado en el índice gD51:


2 3
1 X X
bgs8(C) = mı́n mı́n 4 de (xi , c̄k ) + de (xj , c̄r )5 . (C.18)
c k 2 C c r 2 C \c k nk + nr x 2 c x 2c
i k j r

Criterio bgs9 es una modificación del criterio de separación bgs6:

1 X
bgs9(C) = máx {de (c̄k , c̄r )} . (C.19)
K c r 2 C \c k
ck 2 C

Criterio bgs10 es una modificación del criterio de separación bgs4:

bgs10(C) = mı́n mı́n {de (c̄k , c̄r )} . (C.20)


c k 2 C c r 2 C \c k
Parámetros del algoritmo DBSCAN
D
A C ontinuación
se lista en las Tablas D.1, D.2 y D.3 los parámetros utilizados por el
algoritmo DBSCAN. Estas configuraciones de parámetros fueron empleadas en el
experimento reportado en la Sección 6.2.

Tabla D.1: Parámetros de los conjuntos de datos sintéticos propuestos para este proyecto.

Categoría Nombre Eps MinPts

LSD2C2 0.10 5
LSD2C4 0.09 5
G1 LSD2C6 0.05 5
LSD2C8 0.06 5
LSD2C10 0.05 5

LSOD2C2 0.16 49
LSOD2C4 0.14 99
G2 LSOD2C6 0.11 75
LSOD2C8 0.10 108
LSOD2C10 0.08 88

NLSD2C2 0.05 5
NLSD2C4 0.04 5
G3 NLSD2C6 0.04 5
NLSD2C8 0.04 5
NLSD2C10 0.05 5

123
124

Tabla D.2: Parámetros de los conjuntos de datos sintéticos propuestos en la literatura.

Categoría Nombre Eps MinPts

Orange 0.09 5
Data_4_3 0.08 5
Data_6_2 0.07 5
Hepta 0.11 5
G1
WingNut 0.06 5
Lsun 0.09 5
Figures 0.05 5
Twenty 0.05 5
Overlapping 0.07 15
TwoDiamonds 0.30 100
Tetra 0.14 95
Square1 0.07 15
G2
Size5 0.07 25
Data_10_2 0.15 35
Data_5_2 0.11 50
Data_9_2 0.11 60
Moon 0.07 5
Inside 0.08 5
Arcs 0.07 5
Part1 0.06 5
G3
Part2 0.06 5
Chainlink 0.05 5
Atom 0.18 5
Spirals 0.03 5

Tabla D.3: Parámetros de los conjuntos de datos reales propuestos en la literatura.

Categoría Nombre Eps MinPts

Iris 0.12 5
Wine 0.49 20
Breast CW 0.48 15
G4
Glass 0.50 140
Yeast 0.23 30
Newthyroid 0.15 50
Bibliografía

[1] S. Das, A. Abraham, and A. Konar, “Automatic Clustering Using an Improved Differential
Evolution Algorithm,” IEEE Transactions on Systems, Man and Cybernetics, vol. 38, no. 1,
pp. 218–237, 2008.

[2] S. Rahnamayan, H. Tizhoosh, and M. Salama, “Opposition-Based Differential Evolution,” IEEE


Transactions on Evolutionary Computation, vol. 12, no. 1, pp. 64–79, 2008.

[3] L. Kaufman and P. J. Rousseeuw, Finding Groups in Data. Wiley Series in Probability and
Statistics, Hoboken, NJ, USA: John Wiley & Sons, Inc., 1990.

[4] S. Theodoridis and K. Koutrumbas, Pattern Recognition. Elsevier Inc., fourth ed., 2009.

[5] A. K. Jain, “Data Clustering: 50 Years Beyond K-means,” Pattern Recognition Letters, vol. 31,
no. 8, pp. 651–666, 2010.

[6] B. S. Everitt, L. Sabine, M. Leese, and D. Stahl, Cluster Analysis. London: John Wiley and
Sons Ltd, fifth edit ed., 2011.

[7] E. R. Hruschka and N. F. F. Ebecken, “A Genetic Algorithm for Cluster Analysis,” Intelligent
Data Analysis, vol. 7, no. 1, pp. 15–25, 2003.

[8] J. Handl and J. Knowles, “An Evolutionary Approach to Multiobjective Clustering,” IEEE
Transactions on Evolutionary Computation, vol. 11, no. 1, pp. 56–76, 2007.

[9] A. José-García and W. Gómez-Flores, “Automatic Clustering Using Nature-Inspired Metaheu-


ristics: A Survey,” Applied Soft Computing, vol. 41, pp. 192–213, 2016.

[10] E. G. Talbi, Metaheuristics from Design to Implementation. John Wiley and Sons, 2009.

[11] R. Liu, B. Zhu, R. Bian, Y. Ma, and L. Jiao, “Dynamic Local Search Based Immune Automatic
Clustering Algorithm and its Applications,” Applied Soft Computing, vol. 27, pp. 250–268,
2015.

[12] D. Elizondo, “The linear separability problem: Some testing methods,” IEEE Transactions on
Neural Networks, vol. 17, no. 2, pp. 330–344, 2006.

[13] A. E. Bayá and P. M. Granitto, “How Many Clusters: A Validation Index for Arbitrary-Shaped
Clusters,” IEEE/ACM Transactions on Computational Biology and Bioinformatics, vol. 10,
no. 2, pp. 401–14, 2013.

[14] T. Calinski and J. Harabasz, “A Dendrite Method for Cluster Analysis,” Communications in
Statistics - Theory and Methods, vol. 3, no. 1, pp. 1–27, 1974.

[15] X. L. Xie and G. Beni, “A Validity Measure for Fuzzy Clustering,” IEEE Transactions on Pattern
Analysis and Machine Intelligence, vol. 13, no. 8, pp. 841–847, 1991.

125
126 BIBLIOGRAFÍA

[16] J. C. Bezdek and N. R. Pal, “Some New Indexes of Cluster Validity,” IEEE Transactions on
Systems, Man, and Cybernetics, Part B (Cybernetics), vol. 28, no. 3, pp. 301–15, 1998.

[17] S. Saitta, B. Raphael, and I. F. C. Smith, “A Bounded Index for Cluster Validity,” in Machine
Learning and Data Mining in Pattern Recognition, pp. 174–187, Berlin, Heidelberg: Springer
Berlin Heidelberg, 2007.

[18] S. Bandyopadhyay and S. Saha, “A Point Symmetry-Based Clustering Technique for Automatic
Evolution of Clusters,” IEEE Transactions on Knowledge and Data Engineering, vol. 20, no. 11,
pp. 1441–1457, 2008.

[19] D. L. Davies and D. W. Bouldin, “A Cluster Separation Measure,” IEEE Transactions on


Pattern Analysis and Machine Intelligence, vol. 1, no. 2, pp. 224–227, 1979.

[20] M. Kim and R. S. Ramakrishna, “New Indices for Cluster Validity Assessment,” Pattern
Recognition Letters, vol. 26, no. 15, pp. 2353–2363, 2005.

[21] K. R. Žalik and B. Žalik, “Validity Index for Clusters of Different Sizes and Densities,” Pattern
Recognition Letters, vol. 32, no. 2, pp. 221–234, 2011.

[22] J. C. Dunn, “A Fuzzy Relative of the ISODATA Process and Its Use in Detecting Compact
Well-Separated Clusters,” Journal of Cybernetics, vol. 3, no. 3, pp. 32–57, 1973.

[23] P. J. Rousseeuw, “Silhouettes: A Graphical Aid to the Interpretation and Validation of Cluster
Analysis,” Journal of Computational and Applied Mathematics, vol. 20, pp. 53–65, 1987.

[24] M. Halkidi and M. Vazirgiannis, “Clustering Validity Assessment: Finding the Optimal
Partitioning of a Data Set,” in Proceedings 2001 IEEE International Conference on Data
Mining, (California, USA), pp. 187–194, IEEE, 2001.

[25] C. H. Chou, M. C. Su, and E. Lai, “A New Cluster Validity Measure and its Application to
Image Compression,” Pattern Analysis and Applications, vol. 7, no. 2, pp. 205–220, 2004.

[26] I. Gurrutxaga, I. Albisua, O. Arbelaitz, J. I. Martín, J. Muguerza, J. M. Pérez, and I. Perona,


“SEP/COP: An Efficient Method to Find the Best Partition in Hierarchical Clustering Based
on a New Cluster Validity Index,” Pattern Recognition, vol. 43, no. 10, pp. 3364–3373, 2010.

[27] S. Saha and S. Bandyopadhyay, “Performance Evaluation of Some Symmetry-Based Cluster


Validity Indexes,” IEEE Transactions on Systems, Man, and Cybernetics, Part C (Applications
and Reviews), vol. 39, no. 4, pp. 420–425, 2009.

[28] L. J. Hubert and J. R. Levin, “Ageneral Statistical Framework for Assessing Categorical
Clustering in Free Recall,” Psychological Bulleting, vol. 83, pp. 1072–1080, 1976.

[29] J. A. Hartigan and M. A. Wong, “Algorithm AS 136: A K-Means Clustering Algorithm,” Applied
Statistics, vol. 28, no. 1, pp. 100–108, 1979.
BIBLIOGRAFÍA 127

[30] J. MacQueen, “Some Methods for Classification and Analysis of Multivariate Observations,” in
Fifth Berkeley Symposium on Mathematics, Statistics and Probability, pp. 91–110, University
of California Press, 1967.

[31] M. Ester, H.-P. Kriegel, X. Xu, and J. Sander, “A Density-Based Algorithm for Discovering
Clusters in Large Spatial Databases with Noise,” in Proceedings of the Second International
Conference on Knowledge Discovery and Data Mining, pp. 226–231, AAAI Press, 1996.

[32] H. He and Y. Tan, “A Two-Stage Genetic Algorithm for Automatic Clustering,” Neurocompu-
ting, vol. 81, pp. 49–59, 2012.

[33] K. Price, R. Storn, and J. Lampinen, Differential Evolution: A Practical Approach to Global
Optimization. Springer-Verlag Berlin, natural co ed., 2005.

[34] S. Das, A. Abraham, and A. Konar, “Spatial Information Based Image Segmentation Using
a Modified Particle Swarm Optimization Algorithm,” in Sixth International Conference on
Intelligent Systems Design and Applications, vol. 2, (Jinan, China), pp. 438–444, IEEE, 2006.

[35] S. Das, A. Abraham, and A. Konar, “Automatic Kernel Clustering with a Multi-Elitist Particle
Swarm Optimization Algorithm,” Pattern Recognition Letters, vol. 29, no. 5, pp. 688–699,
2008.

[36] S. Bandyopadhyay and U. Maulik, “Genetic Clustering for Automatic Evolution of Clusters
and Application to Image Classification,” Pattern Recognition, vol. 35, no. 6, pp. 1197–1208,
2002.

[37] U. Alfred, “Clustering with SOM: U*C,” in Proceedings Workshop on Self-Organizing Maps
(WSOM), (Paris, France), pp. 75–82, 2005.

[38] S. K. Pal and S. Mitra, “Fuzzy Versions of Kohonen’s Net and MLP-Based Classification:
Performance Evaluation for Certain Nonconvex Decision Regions,” Information Sciences,
vol. 76, no. 3-4, pp. 297–337, 1994.

[39] K. L. Priddy and P. E. Keller, Artificial Neural Networks. Bellingham, WA: SPIE, 2005.

[40] M. Lichman, “UCI Machine Learning Repository,” 2013.

[41] L. Hubert and P. Arabie, “Comparing Partitions,” Journal of Classification, vol. 2, no. 1,
pp. 193–218, 1985.

[42] C. Willmott and K. Matsuura, “Advantages of the Mean Absolute Error (MAE) over the Root
Mean Square Error (RMSE) in Assessing Average Model Performance,” Climate Research,
vol. 30, pp. 79–82, 2005.

[43] I. Saha, U. Maulik, and D. Plewczynski, “A New Multi-Objective Technique for Differential
Fuzzy Clustering,” Applied Soft Computing, vol. 11, no. 2, pp. 2765–2776, 2011.
128 BIBLIOGRAFÍA

[44] D. X. Chang, X. D. Zhang, C. W. Zheng, and D. M. Zhang, “A Robust Dynamic


Niching Genetic Algorithm With Niche Migration for Automatic Clustering Problem,” Pattern
Recognition, vol. 43, no. 4, pp. 1346–1360, 2010.

[45] N. Vecek, M. Crepinsek, and M. Mernik, “On the influence of the number of algorithms,
problems, and independent runs in the comparison of evolutionary algorithms,” Applied Soft
Computing, vol. 54, no. Supplement C, pp. 23–45, 2017.

[46] W. H. Kruskal and W. A. Wallis, “Use of Ranks in One-Criterion Variance Analysis,” Journal
of the American Statistical Association, vol. 47, no. 260, pp. 583–621, 1952.

[47] S. Bandyopadhyay and U. Maulik, “Nonparametric Genetic Clustering: Comparison of Validity


Indices,” IEEE Transactions on Systems, Man, and Cybernetics, Part C (Applications and
Reviews), vol. 31, no. 1, pp. 120–125, 2001.

[48] E. Falkenauer, Genetic Algorithms and Grouping Problems. Chichester, England: John Wiley
and Sons Ltd, 1998.

[49] S. J. Nanda and G. Panda, “A Survey on Nature Inspired Metaheuristic Algorithms for
Partitional Clustering,” Swarm and Evolutionary Computation, vol. 16, pp. 1–18, 2014.

[50] M. Sarkar, B. Yegnanarayana, and D. Khemani, “A Clustering Algorithm Using an Evolutionary


Programming-Based Approach,” Pattern Recognition Letters, vol. 18, no. 10, pp. 975–986,
1997.

[51] C. Y. Lee and E. K. Antonsson, “Dynamic Partitional Clustering Using Evolution Strategies,”
in 26th Annual Conference of the IEEE Industrial Electronics Society. IECON 2000., vol. 4,
(Nagoya, Japan), pp. 2716–2721, IEEE, 2000.

[52] H. Kashan, B. Rezaee, and S. Karimiyan, “An Efficient Approach for Unsupervised Fuzzy
Clustering based on Grouping Evolution Strategies,” Pattern Recognition, vol. 46, no. 5,
pp. 1240–1254, 2013.

[53] J. C. Bezdek, Pattern Recognition with Fuzzy Objective Function Algorithms. Boston, MA:
Springer US, 1981.

[54] J. Kennedy and R. Eberhart, “Particle Swarm Optimization,” in International Conference on


Neural Networks, vol. 4, (Perth, Australia), pp. 1942–1948, IEEE, 1995.

[55] R. Storn and K. Price, “Differential Evolution - A Simple and Efficient Heuristic for Global
Optimization Over Continuous Spaces,” Journal of Global Optimization, vol. 11, no. 4, pp. 341–
359, 1997.

[56] A. H. Kashan, “League Championship Algorithm: A New Algorithm for Numerical Function
Optimization,” in International Conference of Soft Computing and Pattern Recognition,
(Malacca, Malaysia), pp. 43–48, IEEE, 2009.
BIBLIOGRAFÍA 129

[57] L. Y. Tseng and S. B. Yang, “A Genetic Approach to the Automatic Clustering Problem,”
Pattern Recognition, vol. 34, no. 2, pp. 415–424, 2001.

[58] L. Y. Tseng and S. Bien Yang, “A Genetic Clustering Algorithm for Data with Non-Spherical-
Shape Clusters,” Pattern Recognition, vol. 33, no. 7, pp. 1251–1259, 2000.

[59] G. Garai and B. B. Chaudhuri, “A Novel Genetic Algorithm for Automatic Clustering,” Pattern
Recognition Letters, vol. 25, no. 2, pp. 173–187, 2004.

[60] H. J. Lin, F. W. Yang, and Y. T. Kao, “An Efficient GA-based Clustering Technique,” Tamkang
Journal of Science and Engineering, vol. 8, no. 2, pp. 113–122, 2005.

[61] E. R. Hruschka, R. J. G. B. Campello, and L. N. de Castro, “Improving the Efficiency of


a Clustering Genetic Algorithm,” in Advances in Artificial Intelligence - IBERAMIA 2004,
ch. Genetic Al, pp. 861–870, Puebla, Mexico: Springer Berlin Heidelberg, 2004.

[62] E. R. Hruschka, R. J. G. B. Campello, and L. N. de Castro, “Evolving Clusters in Gene-


Expression Data,” Information Sciences, vol. 176, no. 13, pp. 1898–1927, 2006.

[63] C. C. Lai, “A Novel Clustering Approach using Hierarchical Genetic Algorithms,” Intelligent
Automation & Soft Computing, vol. 11, no. 3, pp. 143–153, 2005.

[64] S. M. Pan and K. S. Cheng, “Evolution-Based Tabu Search Approach to Automatic Clustering,”
IEEE Transactions on Systems, Man, and Cybernetics, Part C (Applications and Reviews),
vol. 37, no. 5, pp. 827–838, 2007.

[65] W. Sheng, S. Swift, L. Zhang, and X. Liu, “A Weighted Sum Validity Function for Clustering
With a Hybrid Niching Genetic Algorithm,” IEEE Transactions on Systems, Man, and
Cybernetics, Part B (Cybernetics), vol. 35, no. 6, pp. 1156–1167, 2005.

[66] D. Horta, I. C. de Andrade, and R. J. G. B. Campello, “Evolutionary Fuzzy Clustering of


Relational Data,” Theoretical Computer Science, vol. 412, no. 42, pp. 5854–5870, 2011.

[67] Y. Liu, X. Wu, and Y. Shen, “Automatic Clustering Using Genetic Algorithms,” Applied
Mathematics and Computation, vol. 218, no. 4, pp. 1267–1279, 2011.

[68] C. C. Lai and C. Y. Chang, “A Hierarchical Evolutionary Algorithm for Automatic Medical
Image Segmentation,” Expert Systems with Applications, vol. 36, no. 1, pp. 248–259, 2009.

[69] H. Liu, J. Li, and M. A. Chapman, “Automated Road Extraction from Satellite Imagery Using
Hybrid Genetic Algorithms and Cluster Analysis,” Journal of Environmental Informatics, vol. 1,
no. 2, pp. 40–47, 2003.

[70] P. C. H. Ma, K. C. C. Chan, X. Yao, and D. K. Y. Chiu, “An Evolutionary Clustering


Algorithm for Gene Expression Microarray Data Analysis,” IEEE Transactions on Evolutionary
Computation, vol. 10, no. 3, pp. 296–314, 2006.
130 BIBLIOGRAFÍA

[71] M. Omran, A. Salman, and A. P. Engelbrecht, “Dynamic Clustering using Particle Swarm
Optimization with Application in Image Segmentation,” Pattern Analysis and Applications,
vol. 8, no. 4, pp. 332–344, 2005.

[72] S. Das and A. Konar, “Automatic Image Pixel Clustering with an Improved Differential
Evolution,” Applied Soft Computing, vol. 9, no. 1, pp. 226–236, 2009.

[73] U. Maulik and S. Bandyopadhyay, “Fuzzy Partitioning Using a Real-Coded Variable-Length


Genetic Algorithm for Pixel Classification,” IEEE Transactions on Geoscience and Remote
Sensing, vol. 41, no. 5, pp. 1075–1081, 2003.

[74] S. Das and S. Sil, “Kernel-Induced Fuzzy Clustering of Image Pixels with an Improved
Differential Evolution Algorithm,” Information Sciences, vol. 180, no. 8, pp. 1237–1256, 2010.

[75] Yuhua Gu and L. Hall, “Kernel Based Fuzzy Ant Clustering with Partition Validity,” in IEEE
International Conference on Fuzzy Systems, pp. 61–65, IEEE, 2006.

[76] U. Maulik and I. Saha, “Automatic Fuzzy Clustering Using Modified Differential Evolution for
Image Classification,” IEEE Transactions on Geoscience and Remote Sensing, vol. 48, no. 9,
pp. 3503–3510, 2010.

[77] S. Ouadfel, M. Batouche, and A. Taleb-Ahmed, “A Modified Particle Swarm Optimization


Algorithm for Automatic Image Clustering,” in Proceedings of the 1st International Symposium
on Modeling and Implementing Complex Systems, (Constantine, Algeria), 2010.

[78] J. Qu, Z. Shao, and X. Liu, “Mixed PSO Clustering Algorithm Using Point Symmetry Distance,”
Journal of Computational Information Systems, vol. 6, no. 6, pp. 2027–2035, 2010.

[79] R. J. Kuo, Y. J. Syu, Z.-Y. Chen, and F. C. Tien, “Integration of Particle Swarm Optimization
and Genetic Algorithm for Dynamic Clustering,” Information Sciences, vol. 195, pp. 124–140,
2012.

[80] T. Cura, “A Particle Swarm Optimization Approach to Clustering,” Expert Systems with
Applications, vol. 39, no. 1, pp. 1582–1588, 2012.

[81] M. Omran, A. P. Engelbrecht, and A. Salman, “Dynamic Clustering Using Particle Swarm
Optimization with Application in Unsupervised Image Segmentation,” International Journal of
Computer, Information Science and Engineering, vol. 1, no. 9, pp. 232–237, 2007.

[82] U. Maulik and S. Bandyopadhyay, “Performance Evaluation of Some Clustering Algorithms


and Validity Indices,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 24,
no. 12, pp. 1650–1654, 2002.

[83] R. Xu, J. Xu, and D. C. Wunsch, “A Comparison Study of Validity Indices on Swarm-
Intelligence-Based Clustering.,” IEEE Transactions on Systems, Man, and Cybernetics, Part
B (Cybernetics), vol. 42, no. 2, 2012.
BIBLIOGRAFÍA 131

[84] O. Arbelaitz, I. Gurrutxaga, J. Muguerza, J. M. Pérez, and I. Perona, “An Extensive


Comparative Study of Cluster Validity Indices,” Pattern Recognition, vol. 46, no. 1, pp. 243–
256, 2013.

[85] Yanchi Liu, Zhongmou Li, Hui Xiong, Xuedong Gao, Junjie Wu, and Sen Wu, “Understanding
and Enhancement of Internal Clustering Validation Measures,” IEEE Transactions on
Cybernetics, vol. 43, no. 3, pp. 982–994, 2013.

[86] J.-H. Yeh, F.-J. Joung, and J.-C. Lin, “CDV Index: A Validity Index for Better Clustering
Quality Measurement,” Journal of Computer and Communications, vol. 2, no. 4, pp. 163–171,
2014.

[87] S. Saha and S. Bandyopadhyay, “Some Connectivity Based Cluster Validity Indices,” Applied
Soft Computing, vol. 12, no. 5, pp. 1555–1565, 2012.

[88] G. W. Milligan and M. C. Cooper, “An Examination of Procedures for Determining the Number
of Clusters in a Data Set,” Psychometrika, vol. 50, no. 2, pp. 159–179, 1985.

[89] J. C. Bezdek, W. Q. Li, Y. Attikiouzel, and M. Windham, “A Geometric Approach to Cluster


Validity for Normal Mixtures,” Soft Computing - A Fusion of Foundations, Methodologies and
Applications, vol. 1, no. 4, pp. 166–179, 1997.

[90] E. Dimitriadou, S. Dolničar, and A. Weingessel, “An Examination of Indexes for Determining
the Number of Clusters in Binary Data Sets,” Psychometrika, vol. 67, no. 1, pp. 137–159,
2002.

[91] M. Brun, C. Sima, J. Hua, J. Lowey, B. Carroll, E. Suh, and E. R. Dougherty, “Model-based
Evaluation of Clustering Validation Measures,” Pattern Recognition, vol. 40, no. 3, pp. 807–
824, 2007.

[92] I. Gurrutxaga, J. Muguerza, O. Arbelaitz, J. M. Pérez, and J. I. Martín, “Towards a Standard


Methodology to Evaluate Internal Cluster Validity Indices,” Pattern Recognition Letters,
vol. 32, no. 3, pp. 505–515, 2011.

[93] W.-J. Zhang and X.-F. Xie, “DEPSO: Hybrid Particle Swarm with Differential Evolution
Operator,” in IEEE International Conference on Systems, Man and Cybernetics., vol. 4,
pp. 3816–3821, IEEE, 2003.

[94] N. R. Pal and J. C. Bezdek, “On Cluster Validity for the Fuzzy C-Means Model,” IEEE
Transactions on Fuzzy Systems, vol. 3, no. 3, pp. 370–379, 1995.

[95] A. Paoli, F. Melgani, and E. Pasolli, “Clustering of Hyperspectral Images Based on


Multiobjective Particle Swarm Optimization,” IEEE Transactions on Geoscience and Remote
Sensing, vol. 47, no. 12, pp. 4175–4188, 2009.
132 BIBLIOGRAFÍA

[96] Hanchuan Peng, Fuhui Long, and C. Ding, “Feature Selection Based on Mutual Information
Criteria of Max-Dependency, Max-Relevance, and Min-Redundancy,” IEEE Transactions on
Pattern Analysis and Machine Intelligence, vol. 27, no. 8, pp. 1226–1238, 2005.

[97] V. N. Vapnik, The Nature of Statistical Learning Theory. New York, NY: Springer New York,
2000.

[98] J. Platt, N. Cristianini, and J. Shawe-Taylor, “Large Margin DAG’s for Multiclass Classifica-
tion,” in Proc. Advances in Neural Information Processing Systems, pp. 547–553, 1999.

[99] R. Kohavi, “A Study of Cross-Validation and Bootstrap for Accuracy Estimation and Model
Selection,” in Proceedings of the 14th International Joint Conference on Artificial intelligence,
vol. 2, pp. 1137–1143, 1995.

[100] P. Baldi, S. Brunak, Y. Chauvin, C. A. F. Andersen, and H. Nielsen, “Assessing the Accuracy of
Prediction Algorithms for Classification: An Overview,” Bioinformatics, vol. 16, no. 5, pp. 412–
424, 2000.

[101] C.-C. Chang and C.-J. Lin, “LIBSVM: A library for support vector machines,” ACM
Transactions on Intelligent Systems and Technology, vol. 2, pp. 27:1–27:27, 2011.

[102] A. Abdiansah and R. Wardoyo, “Time complexity analysis of support vector machines (SVM)
in LibSVM,” International Journal of Computer Applications, vol. 128, no. 3, pp. 28–34, 2015.

[103] Jingqiao Zhang and A. Sanderson, “JADE: Adaptive Differential Evolution With Optional
External Archive,” IEEE Transactions on Evolutionary Computation, vol. 13, no. 5, pp. 945–
958, 2009.

[104] A. Jain and F. Farrokhnia, “Unsupervised Texture Segmentation Using Gabor Filters,” in 1990
IEEE International Conference on Systems, Man, and Cybernetics Conference Proceedings,
(Los Angeles), pp. 14–19, IEEE, 1990.

También podría gustarte