Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ajg2017 PDF
Ajg2017 PDF
Doctor en Ciencias
en Computación
Director de la Tesis:
Dr. Wilfrido Gómez Flores
__________________________________________
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 amigos Hillel, Misael y David por brindarme su amistad sincera y apoyo
incondicional, son muchos los momentos y anécdotas que hemos compartido.
Índice General I
Índice de Figuras V
Í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
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
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
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
vi
Índice de Tablas
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
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
ix
Publicaciones
xi
Resumen
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
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].
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.
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
Conjunto de
datos (X
X)
Selector
Algoritmo de
Métrica basada agrupamiento
en conectividad automático
Agrupamiento (C
C)
Figura 1.2: Esquema general del enfoque de agrupamiento propuesto.
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.
Para lograr el objetivo general se han establecido los siguientes objetivos específicos:
9
10 2.2. Métricas
Una métrica es una medida de proximidad que denota el criterio de similitud y es usada
para cuantificar la similaridad entre dos patrones.
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:
D
! p1
X p
d(x, y) = |xl - yl | . (2.1)
l=1
D
X
d1 (x, y) = |xl - yl | . (2.2)
l=1
D
! 12
X
de (x, y) = |xl - yl |2 . (2.3)
l=1
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.
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.,
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
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:
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
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 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í.
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
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].
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).
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
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):
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.
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.
(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
(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 .
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}.
(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
(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 .
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.
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 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.
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.
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 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 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 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 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 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.
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.
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.
ideal P⇤ está ubicado en (1, 1). Entonces, el balance entre los índices se calcula como:
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
29
30 3.1. Componentes de un algoritmo de agrupamiento metaheurístico
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 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.
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.
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
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.
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.
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 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
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.
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
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 .
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).
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.
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
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
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
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
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).
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.
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.
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)
ARI
ARI
0.4 0.4 0.4
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.
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
Figura 5.4: Diagrama de flujo del selector del criterio de similitud basado en SVM.
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.
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
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
Valor de aptitud
Valor de aptitud
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
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).
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].
(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.
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
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:
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 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
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.
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
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
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.
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:
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.
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.
(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 .
77
78 6.1. Diseño experimental
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].
Jr = 0.3
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.
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)
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.
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
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
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
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
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
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.
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
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
Figura 6.4: Diagrama a bloques del método de segmentación de textura basado en filtros de Gabor.
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
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)
✓ ◆
u2 + v2
H (u, v) = exp - , (6.3)
2 2
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.
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
Figura 6.6: Imágenes de textura sintéticas (a)–(j) e imágenes de textura reales (k)–(n) utilizadas.
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 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.
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
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.
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
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.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
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.
Í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
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
Í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
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
Í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
1 X
dps (xi , ck ) = mı́n (kn ) {de (2c̄k - xi , xj )} . (A.14)
kn xj 2ck
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
Í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:
113
114
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.
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:
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
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
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:
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].
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
X 1 X
wgs1(C) = d2e (xi , c̄k ) . (C.1)
nk x 2c
ck 2 C i k
X 1 X
wgs2(C) = de (xi , c̄k ) . (C.2)
nk x 2c
ck 2 C i k
X 1 X
wgs4(C) = máx {de (xi , xj )} . (C.4)
nk x 2c xj 2ck
ck 2 C i k
119
120
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
2 X
wgs6(C) = máx de (xi , c̄k ) . (C.6)
ck 2C nk
x 2c i k
X X
wgs7(C) = de (xi , xj ) . (C.7)
ck 2C xi ,xj 2ck
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
X 2 X
wgs9(C) = de (xi , c̄k ) . (C.9)
nk x 2c
ck 2 C i k
X
wgs10(C) = máx {de (xi , xj )} . (C.10)
xi ,xj 2ck
ck 2 C
X ⇣ ⌘
bgs1(C) = nk de c̄k , X . (C.11)
ck 2 C
X
bgs2(C) = mı́n {de (c̄k , c̄r )} . (C.12)
c r 2 C \c k
ck 2 C
X
bgs6(C) = máx {de (c̄k , c̄r )} . (C.16)
c r 2 C \c k
ck 2 C
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
1 X
bgs9(C) = máx {de (c̄k , c̄r )} . (C.19)
K c r 2 C \c k
ck 2 C
Tabla D.1: Parámetros de los conjuntos de datos sintéticos propuestos para este proyecto.
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
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
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.
[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.
[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.
[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.
[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.
[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
[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.
[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.
[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.
[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.
[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.
[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.
[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.
[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.
[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.
[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
[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.
[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.
[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.
[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.