Agrupamiento de Datos utilizando técnicas MAM-SOM

Anuncio
Agrupamiento de Datos utilizando técnicas MAM-SOM
Carlos Eduardo Bedregal Lizárraga
Orientador: Prof. Mag. Juan Carlos Gutiérrez Cáceres
Tesis profesional presentada al Programa Profesional de
Ingeniería Informática como parte de los requisitos para
obtener el Título Profesional de Ingeniero Informático.
UCSP - Universidad Católica San Pablo
Julio de 2008
A mis padres y mi hermano.
Abreviaturas
MAM Métodos de Acceso Métrico
SAM Spatial Access Method
MAE Métodos de Acceso Espacial
NCD Número de Cálculos de Distancia
SOM Self-Organizing Maps
GSOM Growing Self-Organizing Maps
GHSOM Growing Hierarchical Self-Organizing Maps
GNG Growing Neural Gas
CHL Competitive Hebbian Learning
BMU Best Matching Unit
IGG Incremental Grid-Growing
RNA Redes Neuronales Artificiales
ART Adaptative Resonance Theory
MST Minimal Spanning Tree
SAT Spatial Approximation Tree
IGNG Incremental Growing Neural Gas
DBGNG Density Based Growing Neural Gas
NGCHL Neural Gas with Competitive Hebbian Learning
AESA Approximating and Eliminating Search Algorithm
3
Agradecimientos
En primer lugar deseo agradecer a Dios por haberme guiado a lo largo de mis años de estudio.
Agradezco a mi familia por el gran apoyo brindado para forjarme como un profesional.
Agradezco a la universidad por haberme brindado la formación que ahora me permitirá ayudar
a construir una mejor sociedad.
Agradezco de forma muy especial a Ernesto y a Juan Carlos por haberme guiado en esta tesis.
Muchas gracias también a todos los profesores con los que trabajé durante esos largos cinco
años, y al personal administrativo por la atención brindada y por su disposición a ayudar.
Resumen
Hoy en día la necesidad de procesar grandes volúmenes de datos es cada vez
más frecuente. Investigaciones recientes buscan proponer algoritmos eficientes para
problemas complejos como el agrupamiento de datos. Una de estas investigaciones
llevó al desarrollo de la familia de técnicas MAM-SOM y SAM-SOM, que propone
la combinación de Self-Organizing Maps (SOM) y Métodos de Acceso para una rápida recuperación de información por similitud. En esta investigación se presentan
resultados empíricos del uso de técnicas MAM-SOM empleando Métodos de Acceso recientes como Slim-Tree y Omni-Secuencial, aplicadas a tareas de agrupamiento
de datos; mostrando la mejora y propiedades de estas técnicas en contraste con una
de las técnicas tradicionales de agrupamiento: las redes SOM.
Abstract
Nowadays the need to process lots of complex multimedia databases is more
frequent. Recent investigations pursue to find efficient algorithms to solve complex
problems such as data clustering. One of these investigations led to the development of the MAM-SOM and SAM-SOM families, which propose the combination of Self-Organizing Maps (SOM) with Access Methods for a faster similarity
information retrieval. In this investigation we present experimental results of the
MAM-SOM techniques using recent Access Methods such as Slim-Tree and OmniSequential when performing clustering tasks, showing the improvement acquired
by these techniques and their properties in contrast with one traditional clustering
technique: the SOM networks.
Índice general
1. Introducción
14
1.1. Contexto y Motivación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14
1.2. Definición del problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16
1.3. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16
1.4. Organización de la tesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16
2. Agrupamiento de datos
17
2.1. Consideraciones iniciales . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
17
2.2. Agrupamiento de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
2.2.1. Reducción de la dimensionalidad . . . . . . . . . . . . . . . . . . . .
19
2.2.2. Validez de un grupo . . . . . . . . . . . . . . . . . . . . . . . . . . .
19
2.2.3. Estimación de error . . . . . . . . . . . . . . . . . . . . . . . . . . . .
20
2.2.4. Conocimiento del dominio de datos . . . . . . . . . . . . . . . . . . .
20
2.2.5. Otras propiedades . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
20
2.3. Etapas del proceso de agrupamiento . . . . . . . . . . . . . . . . . . . . . . .
20
2.3.1. Representación del patrón . . . . . . . . . . . . . . . . . . . . . . . .
21
2.3.2. Definición de la medida de proximidad . . . . . . . . . . . . . . . . .
21
2.3.3. Agrupamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
22
2.3.4. Abstracción de datos . . . . . . . . . . . . . . . . . . . . . . . . . . .
22
2.3.5. Evaluación de resultados . . . . . . . . . . . . . . . . . . . . . . . . .
22
7
ÍNDICE GENERAL
2.4. Clasificación de las técnicas de agrupamiento . . . . . . . . . . . . . . . . . .
23
2.4.1. Agrupamiento jerárquico . . . . . . . . . . . . . . . . . . . . . . . . .
23
2.4.2. Agrupamiento particional . . . . . . . . . . . . . . . . . . . . . . . .
23
2.5. Técnicas comunes para agrupamiento de datos . . . . . . . . . . . . . . . . . .
24
2.5.1. Agrupamiento con vecinos más cercanos . . . . . . . . . . . . . . . .
24
2.5.2. Agrupamiento difuso . . . . . . . . . . . . . . . . . . . . . . . . . . .
24
2.5.3. Agrupamiento con RNA . . . . . . . . . . . . . . . . . . . . . . . . .
24
2.5.4. Agrupamiento con métodos evolutivos . . . . . . . . . . . . . . . . . .
24
2.6. Aplicaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
25
2.7. Consideraciones finales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26
3. Redes Neuronales Artificiales
27
3.1. Consideraciones iniciales . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
3.2. Definiciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
3.2.1. Modelo de una neurona artificial . . . . . . . . . . . . . . . . . . . . .
28
3.2.2. Arquitectura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
28
3.2.3. Aprendizaje . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
29
3.3. Redes neuronales auto-organizables . . . . . . . . . . . . . . . . . . . . . . .
30
3.3.1. Entrenamiento de los mapas auto-organizables . . . . . . . . . . . . .
31
3.4. Redes SOM constructivas . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
32
3.4.1. Incremental Grid-Growing . . . . . . . . . . . . . . . . . . . . . . . .
33
3.4.2. Growing Self-Organizing Maps . . . . . . . . . . . . . . . . . . . . .
33
3.4.3. Growing Neural Gas . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
3.4.4. Density Based Growing Neural Gas . . . . . . . . . . . . . . . . . . .
33
3.4.5. Aprendizaje Hebbiano Competitivo . . . . . . . . . . . . . . . . . . .
33
3.4.6. Gas Neuronal con Aprendizaje Hebbiano Competitivo . . . . . . . . .
34
3.5. Growing Neural Gas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
Ingeniería Informática - UCSP
8
ÍNDICE GENERAL
3.5.1. Algoritmo GNG . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
35
3.6. Consideraciones finales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38
4. Métodos de Acceso Métrico
39
4.1. Consideraciones iniciales . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
39
4.2. Definiciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
39
4.2.1. Consultas de proximidad . . . . . . . . . . . . . . . . . . . . . . . . .
40
4.2.2. Consideraciones de eficiencia . . . . . . . . . . . . . . . . . . . . . .
41
4.3. Algoritmos de búsqueda . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
42
4.3.1. Burkhard-Keller Tree . . . . . . . . . . . . . . . . . . . . . . . . . . .
42
4.3.2. Vantage-Point Tree . . . . . . . . . . . . . . . . . . . . . . . . . . . .
43
4.3.3. M-Tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
43
4.3.4. Slim-Tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
44
4.3.5. Omni-Tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
44
4.3.6. DBM-Tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
44
4.4. Slim-Tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
45
4.4.1. Funcionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
45
4.5. Omni-Secuencial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
47
4.6. Consideraciones finales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
48
5. Técnica MAM-SOM para agrupamiento de datos
50
5.1. Consideraciones iniciales . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
50
5.2. Trabajos Previos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
50
5.3. Técnicas MAM-SOM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
52
5.3.1. MAM-SOM Híbrida . . . . . . . . . . . . . . . . . . . . . . . . . . .
52
5.3.2. MAM-SOM* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
53
5.4. Propiedades de las técnicas MAM-SOM . . . . . . . . . . . . . . . . . . . . .
54
Ingeniería Informática - UCSP
9
ÍNDICE GENERAL
5.5. Estructuras propuestas para la técnica MAM-SOM . . . . . . . . . . . . . . .
55
5.6. Agrupamiento con MAM-SOM . . . . . . . . . . . . . . . . . . . . . . . . .
55
5.7. Consideraciones finales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
57
6. Experimentos
58
6.1. Consideraciones iniciales . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
58
6.2. Bases de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
58
6.3. Primer grupo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
59
6.3.1. Discusión en relación al número de agrupamientos . . . . . . . . . . .
59
6.3.2. Discusión en relación al número de patrones . . . . . . . . . . . . . .
61
6.4. Segundo grupo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
61
6.4.1. Discusión en relación al número de conexiones . . . . . . . . . . . . .
61
6.4.2. Discusión en relación al número de patrones . . . . . . . . . . . . . .
61
6.5. Tercer grupo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
64
6.6. Experimentos adicionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
67
6.6.1. Discusión con respecto a los agrupamientos . . . . . . . . . . . . . . .
67
6.6.2. Discusión con respecto al tiempo consumido . . . . . . . . . . . . . .
67
7. Conclusiones y Trabajos Futuros
70
7.1. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
70
7.2. Contribuciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
71
7.3. Problemas encontrados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
71
7.4. Recomendaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
71
7.5. Trabajo futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
71
Bibliografía
77
Ingeniería Informática - UCSP
10
Índice de cuadros
6.1. Comparación de resultados para la base de datos COVERT (54-d) . . . . . . .
64
6.2. Comparación de resultados para la base de datos IMAGES (1215-d) . . . . . .
67
6.3. Comparación de resultados para la base de datos NURSERY (8-d) . . . . . . .
67
11
Índice de figuras
2.1. Ejemplo de agrupamientos de diferentes formas. . . . . . . . . . . . . . . . . .
18
2.2. Etapas de la tarea de agrupamiento de datos. . . . . . . . . . . . . . . . . . . .
21
3.1. Neurona McCulloch-Pitts [Jain et al., 1996]. . . . . . . . . . . . . . . . . . . .
28
3.2. Taxonomía de la arquitectura de las RNA [Jain et al., 1996]. . . . . . . . . . .
29
3.3. Mapa auto-organizable de Kohonen [Jain et al., 1996]. . . . . . . . . . . . . .
31
3.4. La red GNG se adapta a la distribución de señales con áreas y dimensionalidades diferentes del espacio de entrada [Fritzke, 1995]. . . . . . . . . . . . . .
35
4.1. Tipos básicos de consultas por proximidad. . . . . . . . . . . . . . . . . . . .
41
4.2. Taxonomía de algoritmos en base a sus características [Chávez et al., 2001] . .
43
4.3. División de nodos con el algoritmo MST [Caetano Traina et al., 2000]. . . . . .
46
4.4. Funcionamiento del algoritmo Slim-down [Caetano Traina et al., 2000]. . . . .
47
4.5. Selección de los candidatos para una consulta de rango con diferentes cardinalidades de F [Filho et al., 2001]. . . . . . . . . . . . . . . . . . . . . . . . . .
48
5.1. Impacto del valor λ en la red GNG [Cuadros-Vargas and Romero, 2005]. . . . .
52
5.2. Ejemplo del proceso de poda de conexiones de las técnicas MAM-SOM* con
5000 patrones y N eighborhoodSize = 3 [Cuadros-Vargas and Romero, 2002].
54
6.1. Comparación del Número de Cálculos de Distancia acumulado de la red Growing Neural Gas y la técnica MAM-SOM GNG+Slim-Tree a lo largo del proceso
de entrenamiento de la red en relación al número de agrupamientos generados. .
60
12
ÍNDICE DE FIGURAS
6.2. Comparación del Número de Cálculos de Distancia acumulado de la red Growing Neural Gas y la técnica MAM-SOM GNG+Slim-Tree a lo largo del proceso
de entrenamiento de la red en relación al número de patrones presentados. . . .
62
6.3. Comparación del Número de Cálculos de Distancia acumulado de la red Growing Neural Gas y la técnica MAM-SOM* Slim-Tree en relación al número de
conexiones creadas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
63
6.4. Comparación del Número de Cálculos de Distancia acumulado de la red Growing Neural Gas y la técnica MAM-SOM* Slim-Tree en relación al número de
patrones presentados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
65
6.5. Comparación del Número de Cálculos de Distancia acumulado por patrón presentado usando la base de datos COVERT (54-d) . . . . . . . . . . . . . . . .
66
6.6. Comparación del Número de Cálculos de Distancia acumulado por patrón presentado usando la base de datos IMAGES (1215-d) . . . . . . . . . . . . . . .
66
6.7. Comparación del Número de Cálculos de Distancia acumulado por patrón presentado usando la base de datos NURSERY (8-d) . . . . . . . . . . . . . . . .
66
6.8. Reducción gradual del parámetro τ para encontrar agrupamientos en un conjunto datos sintéticos de 1000 puntos en dos dimensiones. N eighborhoodSize = 3. 68
Ingeniería Informática - UCSP
13
Capítulo 1
Introducción
1.1. Contexto y Motivación
En el mundo actual la información se ha convertido en uno de los recursos más valiosos
dentro de cualquier actividad humana. Asimismo, la cantidad y complejidad de la información
disponible presenta un crecimiento explosivo a medida que la tecnología avanza, siendo cada
vez más frecuente el caso en que aplicaciones necesiten manejar grandes volúmenes de datos
con el fin de responder a determinados problemas.
La información cumple un rol muy importante en el desarrollo de personas, organizaciones y sociedades. La aparición de grandes conjuntos de datos es cada vez más frecuente
como consecuencia del acelerado desarrollo informático, en especial de la Internet (YouTube,
Wikis, Google, Yahoo, etc.). De igual manera, la complejidad de los datos se va incrementando: desde trabajar con datos simples como números o cadenas de texto hasta problemas que
involucran datos complejos como imágenes, vídeos o cadenas de ADN.
Proyectos como CLUTO 1 de la Universidad de Minnesota para tareas de agrupamiento
de datos, CYBER-T 2 de la Universidad de California para el análisis de ADN, IMEDIA 3 del
gobierno de Francia para la recuperación de información en bases de datos multimedia son solo
algunos ejemplos de la necesidad de técnicas cada vez más eficientes para procesar los datos,
detectar interrelaciones y agrupamientos entre ellos e incluso generar nuevo conocimiento.
El agrupamiento de datos es una tarea de análisis exploratorio que se refiere a la clasificación de patrones de una forma no supervisada, formando grupos en base a las relaciones
no perceptibles a simple vista, con el objetivo de poder descubrir una estructura subyacente
[Duda et al., 2000, Jain et al., 2000]. La utilidad en el análisis exploratorio de datos está fuertemente demostrada por su uso en diversos contextos y disciplinas como la recuperación de información, la minería de datos o la segmentación de imágenes entre muchas otras [Jain et al., 1999,
1
http://glaros.dtc.umn.edu/gkhome/views/cluto
http://cybert.microarray.ics.uci.edu/
3
http://www-rocq.inria.fr/imedia/
2
14
CAPÍTULO 1. Introducción
Jain and Dubes, 1988].
De las varias técnicas existentes para agrupamiento de datos, los Mapas Auto-organizables
de Kohonen [Kohonen, 1988], del inglés SOM, vienen siendo ampliamente utilizados en el
agrupamiento de grandes conjuntos de datos, debido principalmente a la poca dependencia
al dominio del conocimiento y a los eficientes algoritmos de aprendizaje disponibles. Estas
estructuras resaltan por su capacidad de generar mapas topológicos a través de una arquitectura paralela y distribuida. Estos mapas pueden ser vistos como una representación en bajas
dimensiones de los datos de entrada, preservando las propiedades topológicas de la distribución
[Kohonen, 1998].
Si bien los mapas auto-organizables son muy populares para tareas de agrupamiento
de grandes conjuntos de datos (siendo un caso muy popular WEBSOM [Lagus et al., 1999]),
poseen algunas debilidades como la búsqueda secuencial de la unidad ganadora utilizada en la
etapa de entrenamiento. Por cada patrón presentado a la red se hace una comparación de proximidad con todas las unidades (neuronas) existentes, haciendo pesado el entrenamiento de la
red [Cuadros-Vargas, 2004].
Otro punto importante a tocar en las redes SOM, y de la mayoría de Redes Neuronales
Artificiales (RNA), es el dilema Estabilidad-Plasticidad [Grossberg, 1972]. La estabilidad se refiere a la pertenencia de cada patrón a una sola categoría a lo largo del entrenamiento, es decir,
que no se activen diferentes unidades de salida en diferentes momentos, mientras que la plasticidad se refiere a la capacidad de adaptarse a nuevos datos, incorporando nuevo conocimiento sin
afectar el aprendido anteriormente. Elasticidad y plasticidad están inversamente relacionadas,
ya que la presencia de una afecta a la otra.
La topología estática del modelo original de Kohonen llevo al desarrollo de técnicas constructivas, que, incorporadas a las redes SOM, lograron abarcar el tema de la plasticidad, otorgando a las redes la capacidad de cambiar su arquitectura durante el entrenamiento. Entre algunas redes constructivas representativas tenemos Growing Neural Gas (GNG) [Fritzke, 1995],
Growing Self-Organizing Maps (GSOM) [Alahakoon et al., 1998], Growing Hierarchical SelfOrganizing Maps (GHSOM) [Dittenbach et al., 2000] e Incremental Grid-Growing (IGG)
[Blackmore and Miikkulainen, 1993].
Por otro lado, las redes SOM carecen de la capacidad para responder a búsquedas específicas como búsquedas por rango o búsquedas de los k-vecinos mas cercanos. En las comunidades de Base de Datos y Recuperación de Información el problema de búsquedas específicas por similitud es comúnmente abordado por los Métodos de Acceso Métrico (MAM)
[Chávez et al., 2001]. Algunas estructuras conocidas son BK-Tree [Burkhard and Keller, 1973],
M-Tree [Ciaccia et al., 1997], Slim-Tree [Caetano Traina et al., 2000] y más recientemente DBMTree [Marcos R. Viera and Traina, 2004], que permiten realizar consultas de proximidad eficientemente. La incorporación de Métodos de Acceso Métrico en las redes SOM, técnica conocida como MAM-SOM [Cuadros-Vargas, 2004], logra reducir el costo computacional de la
búsqueda de la unidad ganadora, acelerando drásticamente el proceso de agrupamiento.
Ingeniería Informática - UCSP
15
1.2. Definición del problema
1.2. Definición del problema
El problema en tareas de agrupamiento de datos es la complejidad algorítmica de procesamiento y clasificación. La dificultad de agrupar grandes conjuntos de datos complejos se debe
principalmente al alto número de cálculos de distancia entre elementos que los algoritmos SOM
realizan.
1.3. Objetivos
El objetivo principal de esta investigación es proponer un algoritmo de agrupamiento
MAM-SOM eficiente para su aplicación en grandes conjuntos de datos considerando una mínima complejidad algorítmica.
La presente investigación pretende además demostrar la eficiencia de las técnicas MAMSOM. Estas técnicas combinan mapas auto-organizables y métodos de acceso métrico para
agilizar el procesamiento de grandes conjuntos de datos.
Se busca demostrar la rapidez de las técnicas MAM-SOM comparándolas con otras redes
SOM en tareas de agrupamiento de datos, así como la mejora y beneficios ganados al introducir
Métodos de Acceso Métrico.
1.4. Organización de la tesis
La tesis está organizada como sigue:
En el capítulo 2 se desarrolla el tema de Agrupamiento de datos. Se describen sus definiciones, aplicaciones y etapas.
En el capítulo 3 se exponen las Redes Neuronales Artificiales, definiciones y su uso como técnicas de agrupamiento de datos, características de los mapas auto-organizables y la red
propuesta para los experimentos.
En el capitulo 4 se exponen los Métodos de Acceso Métrico: definiciones, propiedades y
consideraciones de eficiencia, así como las estructuras propuestas para este investigación.
En el capítulo 5 se presentan las técnicas MAM-SOM, la combinación de los métodos de
acceso y los mapas auto-organizables, y la técnica propuesta para las tareas de agrupamiento de
datos.
En el capítulo 6 se describirán y analizarán los experimentos realizados con diversas técnicas, y la comparación con las técnicas propuestas.
En el capítulo 7 se presentarán las conclusiones y consideraciones para trabajos futuros.
Ingeniería Informática - UCSP
16
Capítulo 2
Agrupamiento de datos
2.1. Consideraciones iniciales
El reconocimiento, descripción, clasificación y agrupamiento de patrones de forma automática son problemas importantes en varias disciplinas científicas como biología, psicología,
medicina, visión por computadora e inteligencia artificial. En [Watanabe, 1985] se define a patrón como lo opuesto al caos, una entidad vagamente definida que puede ser nombrada.
Dado un patrón, su reconocimiento/clasificación consiste en una de las siguientes dos
tareas [Jain et al., 2000]: 1) clasificación supervisada, en la que el patrón de entrada es identificado como miembro de una clase predefinida, o 2) clasificación no supervisada (agrupamiento
de datos o clustering), en la que el patrón es asignado a una clase aún no conocida.
El área de reconocimiento de patrones incluye aplicaciones de minería de datos (identificar una correlación entre millones de patrones multidimensionales), clasificación de documentos, predicciones financieras, organización y recuperación de bases de datos multimedia, y
biometría (identificación personal basada en atributos físicos), entre otras.
En [Jain et al., 2000] se especifican cuatro métodos para el reconocimiento de patrones:
1) templatematching, 2) clasificación estadística, 3) coincidencia sintáctica o estructural, y 4)
redes neuronales.
En los métodos estadísticos, cada patrón es representado en términos de d características
o medidas, y es visualizado como un punto en un espacio d-dimensional. El objetivo aquí es seleccionar las características que permitan a los vectores de patrones que pertenecen a diferentes
categorías ocupar regiones compactas y disjuntas en el espacio de características d-dimensional.
A pesar de los principios aparentemente diferentes, la mayoría de modelos de redes
neuronales son implícitamente equivalentes o similares a los métodos estadísticos clásicos de
reconocimiento de patrones [Jain et al., 2000]. Como veremos, las redes neuronales ofrecen
además varias ventajas.
17
2.2. Agrupamiento de datos
Figura 2.1: Ejemplo de agrupamientos de diferentes formas.
En muchas aplicaciones de reconocimiento de patrones, es en exceso costoso, difícil, o
incluso imposible, etiquetar manualmente cada un patrón con su categoría correcta. Por este motivo la clasificación no supervisada, conocida como agrupamiento de datos, provee una solución
a este tipo de problemas.
2.2. Agrupamiento de datos
En el área de reconocimiento de patrones, el reconocimiento o clasificación no supervisada (agrupamiento de datos), es el conjunto de procedimientos diseñados para encontrar grupos
naturales basados en las similitudes presentes en un conjunto de patrones; los patrones son representados como un vector de medidas o como un punto en un espacio multidimensional, para
luego ser agrupados en base a su similitud [Jain and Dubes, 1988, Jain et al., 1999].
En agrupamiento de datos, la clasificación de patrones se da de forma no supervisada, que
a diferencia de la clasificación supervisada en la que se tienen patrones previamente clasificados,
el objetivo radica en agrupar el conjunto de patrones no etiquetados en agrupamientos con algún
significado.
La clasificación no supervisada o agrupamiento es un problema complejo debido a que los
datos pueden originar grupos con diferentes formas y tamaños. En [Jain et al., 2000]se definen
las propiedades que deben cumplir los agrupamientos: 1) los patrones dentro de un grupo son
más similares entre sí que patrones que pertenecen a grupos diferentes, y 2) un grupo consiste
de una relativa alta densidad de puntos separados de otros grupos por una relativa baja densidad
de puntos.
El creciente uso de técnicas de agrupamiento en el campo de análisis exploratorio de paIngeniería Informática - UCSP
18
CAPÍTULO 2. Agrupamiento de datos
trones, agrupamiento, toma de decisiones y aprendizaje de máquina han demostrado su utilidad.
Aplicaciones como la minería datos [Hand et al., 2001, Vesanto and Alhoniemi, 2000], donde
se busca obtener información útil a partir de grandes cantidades de datos; el reconocimiento de objetos [Lowe, 2001], caracteres [Breuel, 2001], del habla [Waibel et al., 1990] e incluso
del hablante [Xu et al., 2006]; la recuperación de información [Tombros et al., 2002]; y la segmentación de imágenes [Rueda and Qin, 2005, Arifin and Asano, 2006] que permite una clasificación de los píxeles de una imagen para el reconocimiento de superficies o texturas (útil para
la medicina o la geología); son solo algunos ejemplos de su uso práctico en el mundo actual.
En varios de estos problemas existe poca información previa de los datos, por lo que las
técnicas de agrupamiento son apropiadas para la exploración de las interrelaciones existentes
entre los datos.
Entre los principales temas a considerar en las tareas de agrupamiento de datos tenemos la
dimensionalidad de los datos, la determinación de la validez de un grupo, la estimación de la tasa
de error del sistema de reconocimiento, el conocimiento previo que se tenga sobre el dominio de
datos y las propiedades del algoritmo de agrupamiento [Jain et al., 2000, Jain and Dubes, 1988,
Jain et al., 1999].
2.2.1. Reducción de la dimensionalidad
Hay dos razones principales para mantener la dimensionalidad de la representación de los
patrones lo más pequeña posible: costo de medición y precisión de la clasificación.
Un reducido conjunto de características simplifica tanto la representación del patrón como
los clasificadores que se construyen sobre la representación seleccionada. El clasificador resultante será más rápido y usará menos memoria, pero por otro lado la reducción del número de
características puede disminuir la exactitud del sistema al reducir el poder de discriminación.
Por lo tanto, la selección de características es muy importante, ya que es posible hacer dos
patrones similares arbitrariamente representándolos con características redundantes.
Para la reducción de la dimensionalidad se aplican algoritmos de selección y extracción de
características. La selección de características se refiere a algoritmos que seleccionan el mejor
subconjunto de características. Los algoritmos de extracción de características crean nuevas características en base a transformaciones o combinaciones del conjunto original de características.
2.2.2. Validez de un grupo
En general, se dice que un grupo es válido si es compacto y aislado. Entonces, se debe
determinar cuán compacto es un grupo midiendo la cohesión interna entre los elementos del
grupo; y cuán aislado es, midiendo la separación del grupo con otros patrones que no pertenecen
a él.
Ingeniería Informática - UCSP
19
2.3. Etapas del proceso de agrupamiento
2.2.3. Estimación de error
En la práctica, la tasa de error de un sistema de reconocimiento debe ser estimada a partir
de todas las muestras disponibles, divididas en conjuntos de entrenando y prueba. El clasificador
se construye usando las muestras de entrenamiento, y luego se evalúa en base a la clasificación
de las muestras del conjunto de prueba. El porcentaje de muestras de prueba que fueron mal
clasificadas se toma como una estimación de la tasa de error.
2.2.4. Conocimiento del dominio de datos
Debido a que la tarea de agrupamiento es subjetiva (i.e. los mismos datos pueden ser
particionados de diferentes formas para diferentes propósitos), esta subjetividad es incorporada en el criterio de agrupamiento al añadir conocimiento del dominio en una o más fases del
proceso de agrupamiento ya sea implícita o explícitamente. Este conocimiento influye en la
selección de la representación de los patrones, la selección de la medida de similitud y en la
selección del esquema de agrupamiento. En el caso de las Redes Neuronales Artificiales (RNA)
el conocimiento del domino se usa implícitamente al seleccionar los valores de los parámetros
de control o aprendizaje.
2.2.5. Otras propiedades
Algunas de las propiedades más comunes en los algoritmos de agrupamiento de datos
son:
Aglomerativo o divisivo. Una clasificación jerárquica aglomerativa coloca cada objeto en
un grupo propio y gradualmente une estos grupos en otros más grandes hasta que todos
los objetos están dentro del mismo grupo, mientras que una clasificación divisiva coloca
inicialmente a todos los objetos en un único grupo que es gradualmente dividido.
Serial o simultáneo. Los procesos seriales manejan a los patrones uno por uno, mientras
que los simultáneos trabajan con todo el conjunto de patrones al mismo tiempo.
Rígido o difuso. Un algoritmo rígido coloca cada patrón en un solo grupo. Un algoritmo
difuso asigna a cada patrón grados de pertenencia a varios grupos.
2.3. Etapas del proceso de agrupamiento
La Figura 2.2 muestra el proceso típico de agrupamiento de datos. Entonces, la actividad
de agrupamiento involucra los siguientes pasos [Jain et al., 1999]:
1. Representación del patrón (extracción y selección de características),
Ingeniería Informática - UCSP
20
CAPÍTULO 2. Agrupamiento de datos
Figura 2.2: Etapas de la tarea de agrupamiento de datos.
2. Definición de una medida de proximidad de patrones apropiada al dominio de datos,
3. Agrupamiento,
4. Abstracción de datos, y
5. Evaluación de resultados.
2.3.1. Representación del patrón
La representación de patrones hace referencia al número de clases, la cantidad de patrones
disponibles y en especial al número, tipo y escala de las características con las cuales el algoritmo de agrupamiento trabajará. Típicamente los patrones son representados como vectores
multidimensionales, donde cada dimensión es asociada a una característica. Las características
pueden ser cuantitativas (como el peso) o cualitativas (como el color).
Como se mencionó anteriormente, existen dos técnicas para determinar el grupo de características que representarán a los patrones: selección y extracción. En la selección de características se identifica el conjunto de características originales más efectivo para la tarea de
agrupamiento. En la extracción de características se aplican diversas transformaciones en las
características existentes para producir nuevas características. En ambos casos lo que se busca
es mejorar el rendimiento de la clasificación y/o la eficiencia computacional.
Una investigación cuidadosa sobre las características disponibles, y sus transformaciones,
puede mejorar significantemente los resultados del agrupamiento. Asimismo una buena representación de patrones facilitará el entendimiento del agrupamiento resultante.
2.3.2. Definición de la medida de proximidad
Debido a que la definición de similitud es una parte fundamental en la determinación de
agrupamientos, la métrica con la que se medirá la similitud entre patrones debe ser escogida
cuidadosamente. En lugar de medir la similitud entre dos patrones es más común medir la
disimilitud usando una métrica definida en el espacio de características. Esta disimilitud entre
patrones se mide por medio de una función de distancia (como la distancia Euclidiana) que
refleja la diferencia entre dos patrones.
Ingeniería Informática - UCSP
21
2.3. Etapas del proceso de agrupamiento
Estas y otras consideraciones sobre los espacios métricos se abordarán con más detalle en
el Capítulo 4.
2.3.3. Agrupamiento
La etapa de agrupamiento es donde se forman los grupos en sí. Este agrupamiento puede
darse de diferentes maneras dependiendo del algoritmo de agrupamiento seleccionado y de
sus propiedades. Los grupos de salida (clusters) pueden ser rígidos o difusos. Adicionalmente
pueden aplicarse otro tipo de técnicas para la etapa de agrupamiento, como métodos probabilísticos y de teoría de grafos.
2.3.4. Abstracción de datos
El proceso de abstracción de datos consiste en generar una representación simple del
conjunto de datos que sea fácil de comprender o procesar. En el contexto de agrupamiento
de datos, la abstracción de datos se refiere a una descripción compacta de cada grupo, por lo
general en términos de patrones representativos o prototipos.
Para grupos pequeños e isótropos se puede utilizar al “centroide” como representación.
En el caso de grupos grandes, es mejor trabajar con puntos localizados en la región externa del
grupo, requiriendo más puntos en proporción a la complejidad de la forma del grupo.
Al brindar una descripción simple e intuitiva de los grupos, la abstracción de datos es una
herramienta útil para el análisis exploratorio.
2.3.5. Evaluación de resultados
Así como se hace una evaluación previa de los datos de entrada para determinar si deben
ser procesados o no, en la etapa de evaluación de resultados se hace un análisis de validez de
los agrupamientos en base a un criterio específico de optimización (usualmente subjetivo). El
análisis de validez busca determinar si el agrupamiento obtenido es significativo.
Existen tres tipos de estudios para analizar la validez de los grupos formados: 1) una
evaluación externa que compara la estructura obtenida con una previa, 2) una evaluación interna
que determina si la estructura es intrínsecamente apropiada para los datos y, 3) una evaluación
relativa que compara dos estructuras y mide el mérito relativo de cada una [Dubes, 1993].
Ingeniería Informática - UCSP
22
CAPÍTULO 2. Agrupamiento de datos
2.4. Clasificación de las técnicas de agrupamiento
La gran variedad de técnicas para la representación de los datos, medición de similitud
entre elementos, y agrupamiento han producido una amplia gama de métodos de agrupamiento.
No existe una técnica de agrupamiento de datos que sea universalmente aplicable debido principalmente a las suposiciones implícitas de la forma del grupo o al criterio de agrupamiento que
posee cada algoritmo.
Considerando al agrupamiento de datos como una tarea de clasificación no supervisada, la gran mayoría de métodos pueden ser divididos en: 1) jerárquicos, que producen una
serie de particiones anidadas basadas en un criterio para unir o dividir grupos basados en su
similitud, y 2) particionales, que identifican la partición que optimiza un criterio agrupamiento
[Jain et al., 1999].
Según la forma de construcción del dendograma, los métodos jerárquicos pueden clasificarse a su vez en aglomerativos y particionales. Según el criterio de optimización, los métodos
particionales pueden clasificarse en error cuadrático, mixture resolving, mode seeking y teoría
de grafos.
2.4.1. Agrupamiento jerárquico
Los métodos jerárquicos pueden construirse de forma aglomerativa o divisiva. Los métodos aglomerativos construyen la jerarquía de abajo a arriba, creando un grupo por objeto para
luego unirlos gradualmente hasta que todos los objetos pertenezcan del mismo grupo. Los métodos divisivos construyen la jerarquía de arriba a abajo, creando inicialmente un único grupo al
que pertenecen todos los objetos para luego ser dividido gradualmente.
Los métodos particionales suelen tener ventaja sobre los jerárquicos en aplicaciones donde
se trabaja con grandes conjuntos de datos, debido principalmente al costo computacional de la
construcción del dendograma de los métodos jerárquicos.
2.4.2. Agrupamiento particional
El agrupamiento particional puede ser expresado como: dados n patrones en un espacio
métrico d-dimensional, determinar la partición de los patrones en K grupos, de modo que los
patrones en un grupo son más similares entre sí que con patrones de otros grupos. El valor
de K puede o no ser especificado, y debe adoptarse un criterio de optimización global o local
[Jain et al., 2000].
Un criterio global, como el de error cuadrático, representa cada grupo a través de un prototipo y asigna los patrones a los grupos de acuerdo a los prototipos más similares. Un criterio
local forma los grupos utilizando estructuras locales en los datos, por ejemplo, identificando
regiones de alta densidad en el espacio de patrones o asignando un patrón y sus k vecinos más
Ingeniería Informática - UCSP
23
2.5. Técnicas comunes para agrupamiento de datos
cercanos al mismo grupo.
Los criterios de error cuadrático y descomposición de mezcla (mixture decomposition)
son los más populares dentro de los métodos de agrupamiento particional [Jain et al., 2000],
siendo el error cuadrático la estrategia más usada. Aquí el objetivo es obtener la partición que,
para un determinado número de grupos, minimice el error cuadrático.
2.5. Técnicas comunes para agrupamiento de datos
2.5.1. Agrupamiento con vecinos más cercanos
Debido a que la proximidad juega un papel importante en la noción de grupo, las distancias de los vecinos más cercanos sirven de base para procedimientos de agrupamiento. Un
patrón usualmente pertenece al mismo grupo que su vecino más cercano, y dos patrones son
considerados similares si comparten vecinos [Jain and Dubes, 1988].
2.5.2. Agrupamiento difuso
Los métodos tradicionales de agrupamiento de datos generan particiones, donde cada
patrón pertenece a un solo grupo, por lo que los grupos son disjuntos. El agrupamiento difuso
asocia cada patrón con todos los grupos usando una función de pertenencia. El diseño de esta
función de pertenencia es el punto más importante en el agrupamiento difuso.
2.5.3. Agrupamiento con RNA
Las Redes Neuronales Artificiales (RNA) han sido utilizadas extensamente en las últimas
décadas tanto para agrupamiento como para clasificación. Entre las principales características
tenemos la arquitectura de procesamiento paralela y distribuida, la capacidad de aprender relaciones no lineales complejas, el entrenamiento y la adaptación al dominio de datos. Las redes
neuronales competitivas son las más usadas para el agrupamiento de datos.
2.5.4. Agrupamiento con métodos evolutivos
Los métodos evolutivos hacen uso de operadores evolutivos y una población de soluciones
para obtener la partición de datos globalmente óptima. Las soluciones candidatas para el problema de agrupamiento son codificadas como cromosomas. Los operadores transforman uno o
más cromosomas de entrada en uno o más de salida, siendo los más populares: selección, combinación y mutación. Adicionalmente se aplica una función de evaluación a los cromosomas
para determinar la probabilidad de un cromosoma de pasar a la siguiente generación.
Ingeniería Informática - UCSP
24
CAPÍTULO 2. Agrupamiento de datos
Los métodos evolutivos destacan por ser técnicas de búsqueda global, a diferencia del
resto de métodos que realizan búsquedas locales.
2.6. Aplicaciones
Las técnicas de agrupamiento de datos fueron inicialmente desarrolladas en biología y
zoología para la construcción de taxonomías. La necesidad de varias disciplinas científicas de
organizar grandes cantidades de datos en grupos con significado ha hecho del agrupamiento
de datos una herramienta valiosa en el análisis de datos. Un sin número de entidades han sido objeto de aplicaciones de agrupamiento de datos: enfermedades, huellas digitales, estrellas,
consumidores e imágenes. En muchas aplicaciones no es primordial identificar el número exacto de grupos o la correcta pertenencia de cada patrón, basta con agrupar los objetos de una
forma eficaz para que el proceso físico, biológico o evolutivo subyacente pueda ser entendido o
aprendido [Jain and Dubes, 1988].
Entre las principales aplicaciones de agrupamiento de datos tenemos la segmentación de
imágenes, la minería de datos, la recuperación de información, el procesamiento del lenguaje
natural y el reconocimiento de objetos.
Segmentación de imágenes. Componente fundamental en muchas aplicaciones de visión computacional, consiste en el exhaustivo particionamiento de una imagen de entrada para la
identificación de regiones, cada una de las cuales es considerada homogénea con respecto a alguna propiedad de la imagen. Para cada píxel de la imagen se define un
vector de características compuesto por lo general de funciones de intensidad y ubicación del píxel. Esta idea ha sido satisfactoriamente usada para imágenes de intensidad (con o sin textura), imágenes de rango (profundidad) e imágenes multiespectrales
[Rueda and Qin, 2005, Arifin and Asano, 2006].
Reconocimiento de objetos. Cada objeto es representado en términos de un conjunto de imágenes del objeto obtenidas desde un punto de vista arbitrario. Debido a la infinidad de
vistas posibles de un objeto tridimensional se descartan las comparaciones de una vista
no conocida con las ya almacenadas. Entonces, a través de técnicas de agrupamiento es
posible seleccionar e identificar al conjunto de vistas de un objeto que sean cualitativamente similares [Lowe, 2001].
Procesamiento del lenguaje natural. Técnicas de agrupamiento son también utilizadas para
el reconocimiento de caracteres y del habla. Sistemas dependientes o independientes del
sujeto capaces de reconocer lexemas y morfemas para identificar caracteres escritos y
discursos hablados. A mayor número de sujetos con los que el sistema debe trabajar, más
difícil es discriminar entre clases debido a la superposición en el espacio de características
[Breuel, 2001, Waibel et al., 1990].
Minería de datos. Es necesario desarrollar algoritmos que puedan extraer información significante de la gran cantidad de datos disponibles. La generación de información útil, o
conocimiento, a partir de grandes cantidades de datos es conocida como minería de datos.
Ingeniería Informática - UCSP
25
2.7. Consideraciones finales
La minería de datos puede ser aplicada a bases de datos relacionales, transaccionales y
espaciales, así como en almacenes de datos no estructurados como la Internet. El agrupamiento de datos es a menudo un importante paso inicial de muchos procesos de minería
de datos, como segmentación de bases de datos, modelamiento predictivo, y visualización
[Hand et al., 2001, Vesanto and Alhoniemi, 2000].
2.7. Consideraciones finales
El análisis de agrupamientos es una técnica muy útil e importante. La velocidad, fiabilidad
y consistencia con las que un algoritmo de agrupamiento puede organizar grandes conjuntos de
datos constituyen las razones de su uso en aplicaciones de minería de datos, recuperación de
información entre otras. Los procedimientos de agrupamiento producen una descripción de los
datos en términos de grupos de datos que poseen fuertes similitudes internas [Duda et al., 2000].
Al aplicar un algoritmo de agrupamiento se debe considerar que: 1) antes de aplicar el algoritmo los datos deben sujetarse a pruebas para ver si existe alguna tendencia de agrupamiento,
2) no existe un “mejor.algoritmo de agrupamiento para los datos.
En [Jain et al., 1999] realizan una comparación de las diferentes técnicas de agrupamiento
de datos, donde se resalta que: la mayoría de métodos particionales utilizan la función criterio
de error cuadrado, pero las particiones generadas no son tan versátiles como las generadas por
algoritmos jerárquicos. Los grupos generados son en su mayoría de forma hiperesférica. Las
redes neuronales y los algoritmos genéticos pueden implementarse en hardware paralelo para
mejorar su velocidad, pero por otra parte, son sensibles a la selección de varios parámetros de
aprendizaje o control.
Los métodos evolutivos presentan un buen desempeño cuando el conjunto de datos es
pequeño y para datos de bajas dimensiones. Generalmente, al algoritmo de k-medias y su red
neuronal equivalente, la red de Kohonen, han sido aplicados en conjuntos de datos grandes.
Ingeniería Informática - UCSP
26
Capítulo 3
Redes Neuronales Artificiales
3.1. Consideraciones iniciales
Inspiradas en las redes neuronales biológicas, las Redes Neuronales Artificiales (RNA)
han sido satisfactoriamente utilizadas para resolver problemas de clasificación de patrones,
agrupamiento de datos, aproximación de funciones, predicción, optimización, recuperación por
el contenido, y control, convirtiéndose en herramientas populares para la resolución de este tipo
de problema.
En el área de reconocimiento de patrones, las RNA proveen arquitecturas que permiten
mapear algoritmos estadísticos de reconocimiento de patrones. La adaptabilidad de las RNA es
crucial para el diseño de sistemas de reconocimiento de patrones no sólo por su capacidad de
generalización, sino por su desempeño en ambientes dinámicos durante el entrenamiento.
Dentro de la tarea de agrupamiento de datos, las principales características de las redes
neuronales artificiales son [Jain et al., 1999]:
Procesamiento de vectores numéricos, por lo que los patrones deben representarse con
características cuantitativas.
Poseen una arquitectura de procesamiento distribuido y paralelo.
Pueden aprender los pesos de sus interconexiones adaptativamente, actuando como normalizadores de patrones y selectores de características.
3.2. Definiciones
Las redes neuronales pueden verse como sistemas de cómputo paralelos que consisten
en un gran número de procesadores simples con varias interconexiones. Los modelos de redes neuronales usan principios de organización como aprendizaje, generalización, adaptación,
27
3.2. Definiciones
Figura 3.1: Neurona McCulloch-Pitts [Jain et al., 1996].
tolerancia a fallos y procesamiento distribuido, en una red de grafos dirigidos, en la cual los
nodos son neuronas artificiales y las conexiones entre las salidas de las neuronas y sus entradas
son aristas dirigidas y con pesos. Entre sus principales características tenemos la habilidad de
aprender complejas relaciones no lineales de entrada-salida, usar entrenamiento secuencial y la
adaptación al dominio de datos [Jain et al., 1996, Haykin, 1994, Bishop, 1995].
3.2.1. Modelo de una neurona artificial
McCulloch y Pitts propusieron una unidad de umbral binario como modelo computacional
de una neurona. La Figura 3.1 muestra un diagrama esquemático de la neurona McCullochPitts, la cual calcula la suma de los pesos de sus n señales de entrada, xj , j = 1, 2, . . . , n, y
genera una salida “1” si la suma está por encima de un parámetro µ, o una salida “0” en el caso
contrario. McCulloch y Pitts probaron que con los pesos apropiados, un arreglo sincronizado de
las neuronas es capaz de una computación universal.
Comparando este modelo con la neurona biológica, las interconexiones modelan a los
axones, los pesos de conexión representan la sinapsis, y la función de activación aproxima la
actividad en el soma. Por otra parte las neuronas biológicas tiene grados de respuesta, producen
una secuencia de pulsos, y son actualizadas de forma asíncrona [Jain et al., 1996].
La neurona McCulloch-Pitts marcó una nueva era en el modelamiento computacional
de neuronas, siendo generalizado de muchas formas, principalmente remplazando la función
umbral de activación por otras como la sinodal o la Gaussiana.
3.2.2. Arquitectura
El agrupamiento de neuronas es llamado Redes Neuronales Artificiales (RNA), la que
puede ser vista como un grafo dirigido con pesos, donde los nodos son neuronas artificiales y
las aristas son las conexiones entre las neuronas [Haykin, 1994]. Como se observa en la Figura 3.2, según el patrón de conexión o arquitectura las RNA pueden clasificarse en: 1) redes
f eedf orward, en las que no existen ciclos en el grafo, y 2) redes f eedback en las que existen
ciclos debido a las conexiones de retroalimentación [Jain et al., 1996].
Las redes f eedf orward son llamadas estáticas porque producen un solo conjunto de salIngeniería Informática - UCSP
28
CAPÍTULO 3. Redes Neuronales Artificiales
Figura 3.2: Taxonomía de la arquitectura de las RNA [Jain et al., 1996].
idas, además, no poseen memoria ya que la respuesta a una entrada es independiente de los
estados previos de la red. Las redes f eedback o recurrentes son sistemas dinámicos donde un
nuevo estado de la red se genera por cada nueva entrada presentada, proceso que se repite hasta
llegar a un punto de convergencia.
3.2.3. Aprendizaje
La habilidad de aprender es una característica fundamental de la inteligencia. Un proceso
de aprendizaje, visto en el contexto de Redes Neuronales Artificiales, se refiere a la actualización de la arquitectura de la red y de los pesos de conexión. Algunos de los conceptos más
importantes en el aprendizaje de RNAs son el paradigma de aprendizaje, el algoritmo de aprendizaje y la teoría de aprendizaje [Haykin, 1994, Bishop, 1995, Jain et al., 1996].
El paradigma de aprendizaje se refieren al modelo de entrenamiento de la red (como la
información está disponible para la red). Los tres principales paradigmas son: 1) supervisado,
2) no supervisado, e 3) híbrido.
En el aprendizaje supervisado o aprendizaje con profesor, se le proporciona a la red la
respuesta correcta de cada patrón de entrenamiento. Opuestamente, en el aprendizaje no supervisado no se necesita la respuesta correcta de cada patrón, debido a que la red explora la
estructura subyacente de datos y la correlación de los mismos, organizándolos en categorías. El
aprendizaje híbrido combina el aprendizaje supervisado y el no supervisado.
La teoría de aprendizaje estudia la capacidad, complejidad de muestras, y complejidad
de tiempo de la red. La capacidad determina cuánto puede aprender la red de los ejemplos si
la solución óptima está contenida en las soluciones que da la red. La complejidad de muestras
determina el número de patrones de entrenamiento requeridos en la red para garantizar una generalización válida. Por último, la complejidad de tiempo investiga cuán rápido puede aprender
el sistema, es decir, la complejidad computacional del algoritmo para estimar una solución.
Ingeniería Informática - UCSP
29
3.3. Redes neuronales auto-organizables
El algoritmo de aprendizaje se refiere a la aplicación de las reglas de aprendizaje para
ajustar los pesos de la red. Los cuatro tipos básicos de aprendizaje son: 1) corrección de error,
2) Boltzmann, 3) Hebbiano, y 4) competitivo.
El algoritmo de corrección de error, aplicable al aprendizaje supervisado, utiliza la señal
de error (d − y), donde y es la salida actual y d la salida deseada, para modificar los pesos
de conexión y gradualmente reducir el error.
El aprendizaje Boltzmann es una regla de aprendizaje estocástico derivada de los principios de termodinámica y de teoría de información. El objetivo es ajustar los pesos de
las conexiones para que el estado de las unidades visibles satisfaga una distribución de
probabilidades deseada.
En el aprendizaje Hebbiano si dos neuronas son activadas simultanea y repetitivamente,
entonces la fuerza de la sinapsis es incrementada. Una propiedad importante es que el
aprendizaje se da localmente.
En el aprendizaje competitivo todas las unidades de salida compiten entre ellas para ser
activadas, resultando sólo una unidad de salida activada en un instante de tiempo.
Las redes más utilizadas en tareas de agrupamiento de datos son aquellas que hacen uso
del aprendizaje competitivo, donde patrones similares son agrupados automáticamente en base
a correlaciones de datos y representados por una neurona [Jain et al., 1999], siendo los mapas auto-organizables de Kohonen (SOM) [Kohonen, 1982] y las redes Adaptative Resonance
Theory (ART) [Carpenter and Grossberg, 1988] (y las derivaciones de ambos) los modelos más
difundidos.
Una característica común en ambos modelos es la simplicidad de sus arquitecturas ya que
poseen una sola capa. Los patrones son presentados en la entrada para luego ser asociados con
los nodos de salida. Los pesos entre los nodos de entrada y salida son iterativamente modificados
hasta satisfacer un criterio de parada.
3.3. Redes neuronales auto-organizables
Los mapas auto-organizables de Kohonen [Kohonen, 1982], del inglés Self-Organizing
Maps (SOM), trabajan bajo el paradigma no supervisado y emplean un aprendizaje competitivo
en el que se define una vecindad espacial para cada unidad de salida, pudiendo ser de forma
cuadrada, rectangular o circular. En este aprendizaje competitivo, se actualizan los vectores de
pesos asociados con la unidad ganadora y con sus vecinas.
Los mapas auto-organizables tienen la propiedad de preservar la topología, es decir, patrones de entrada cercanos activan unidades de salida cercanas en el mapa. La Figura 3.3 muestra la arquitectura básica de los SOM, pudiéndose describir como un arreglo de unidades cada
una conectada con todos los patrones de entrada.
Ingeniería Informática - UCSP
30
CAPÍTULO 3. Redes Neuronales Artificiales
Figura 3.3: Mapa auto-organizable de Kohonen [Jain et al., 1996].
3.3.1. Entrenamiento de los mapas auto-organizables
En el proceso de entrenamiento de los mapas auto-organizables, cada patrón o señal de
entrada es representado por un vector de tamaño n, x = {x1 , x2 , . . . , xn }, y cada unidad de
la red tiene asociado un vector de pesos w = {w1 , w2 , . . . , wn }, donde wi representa el peso
asociado al i-ésimo componente de la señal de entrada.
Inicialmente los pesos de las neuronas son establecidos aleatoriamente. Cuando se presenta un patrón x a la red se evalúan todas las salidas de la red, calculando la diferencia entre x
y los vectores de pesos w de cada neurona presente en la red de acuerdo con la Ecuación 3.1.
kx − wk
(3.1)
Luego se selecciona la unidad vencedora o Best Matching Unit (BMU) de acuerdo con la
Ecuación 3.2. Esta unidad presenta la menor diferencia con el patrón presentado.
kx − wc k = min{kx − wi k}∀i
(3.2)
Finalmente se actualizan el vector de pesos de la neurona vencedora y los vectores de
pesos de sus vecinos topológicos de acuerdo a la Ecuación 3.3, de manera que toda la vecindad
es aproximada hacia el patrón de entrada usando una tasa de aprendizaje α que va decreciendo
a través del entrenamiento.
w(t + 1) = w(t) + α[x(t) − w(t)]
(3.3)
Debido a que las redes SOM pueden generar una partición no óptima si los pesos iniciales
no son escogidos apropiadamente, se pueden aplicar políticas adicionales para la selección de
estos pesos.
La convergencia de la red es controlada por parámetros como la vecindad de la neurona
ganadora o la tasa de aprendizaje. Es aquí que surge el problema de la estabilidad, ya que
es posible que un mismo patrón de entrada active diferentes unidades de salida a lo largo del
Ingeniería Informática - UCSP
31
3.4. Redes SOM constructivas
entrenamiento. Entonces, se dice que un sistema es estable si ningún patrón cambia de categoría
durante la fase de entrenamiento. Este problema esta muy relacionado con la plasticidad o
habilidad de adaptarse a nuevos datos sin perder la información obtenida anteriormente. Para
salvaguardar la estabilidad la tasa de aprendizaje debe decrecer durante el proceso, pero la
plasticidad se ve aún afectada.
Con el modelo ART [Carpenter and Grossberg, 1988] se logró una red con estabilidad y
plasticidad pero se sacrificó la robustez de la misma al ser dependiente del orden en el que se
presentan los patrones, obteniendo así diferentes particiones del conjunto de datos para diferentes órdenes de presentación. Además, el tamaño y número de grupos generados por las redes
ART dependen del parámetro de vigilancia establecido.
También poseen un número fijo de nodos de salida, limitando el número de grupos que
pueden producir.
Una desventaja del modelo original de Kohonen es la necesidad de definir el número de
grupos a priori, generando la necesidad de evaluar diferentes topologías para escoger de entre
todas la más óptima para la solución de un problema. Además, la distribución de datos puede
variar en el tiempo, y la red debe ser capaz de adaptarse adecuadamente a los cambios de la
distribución, creando unidades en caso de que el número de patrones aumente, o eliminando
unidades que dejen de ser útiles luego de la eliminación de patrones.
Entre algunos de los modelos constructivos que surgen para solucionar la topología estática del modelo original de Kohonen tenemos:
Growing Neural Gas [Fritzke, 1995]
Density Based Growing Neural Gas [Ocsa et al., 2007]
Growing Self-Organizing Maps [Alahakoon et al., 1998]
Growing Hierarchical Self-Organizing Maps [Dittenbach et al., 2000]
Incremental Grid-Growing [Blackmore and Miikkulainen, 1993]
3.4. Redes SOM constructivas
Las redes SOM constructivas incorporan técnicas para poder alterar su arquitectura a
través del proceso de entrenamiento. Como se muestra en [Cuadros-Vargas, 2004], un algoritmo
constructivo debe: 1) reconocer y corregir las neuronas que hayan sido generadas en posiciones
inapropiadas para la distribución de datos, o 2) corregir la topología existente para minimizar el
error.
Algunos de los algoritmos más representativos de redes SOM constructivas son:
Ingeniería Informática - UCSP
32
CAPÍTULO 3. Redes Neuronales Artificiales
3.4.1. Incremental Grid-Growing
El algoritmo de Incremental Grid-Growing (IGG) [Blackmore and Miikkulainen, 1993]
construye la red dinámicamente modificando la estructura de las conexiones de acuerdo con
los datos de entrada. El entrenamiento se inicia con cuatro neuronas conectadas formando un
cuadrado, y nuevas neuronas son creadas en los límites externos del mapa, cerca de las neuronas
con mayor error acumulado. Esto permite al algoritmo IGG mantener siempre una estructura de
dos dimensiones, incluso si los patrones son de dimensionalidad mayor.
3.4.2. Growing Self-Organizing Maps
El algoritmo Growing Self-Organizing Maps (GSOM) [Alahakoon et al., 1998] permite
el crecimiento de la red en forma dinámica, similar al algoritmo IGG, inicialmente se tienen
cuatro neuronas conectadas formando un rectángulo, y nuevas unidades son insertadas en base
a la unidad con mayor error acumulado. A diferencia de IGG, GSOM posee un método de
inicialización de pesos, lo que reduce la probabilidad de generar mapas inapropiados.
3.4.3. Growing Neural Gas
El algoritmo Growing Neural Gas (GNG) propuesto por Firtzke [Fritzke, 1995], permite
crear y eliminar unidades en el proceso de entrenamiento. El algoritmo GNG resulta de la
combinación de los métodos de Neural Gas [Martinetz and Schulten, 1994] y el Aprendizaje
Hebbiano Competitivo [White, 1992], siendo un importante representante de los modelos SOM
constructivos [Cuadros-Vargas, 2004]. La red GNG posee una arquitectura f eedback, y así como los Self-Organizing Maps, trabaja bajo el paradigma de aprendizaje no supervisado.
3.4.4. Density Based Growing Neural Gas
Density Based Growing Neural Gas (DBGNG) propuesto en [Ocsa et al., 2007], es una
red constructiva que introduce un criterio de densidad en el entrenamiento de la red, insertando
y eliminando unidades de en base a la relativa concentración de patrones en la región en la
que se ubique el patrón presentado. La región de evaluación es determinada por un radio de
forma similar al algoritmo Incremental Growing Neural Gas [Prudent and Ennaji, 2005], pero
a diferencia de éste, se generan una mejor representación del dominio de datos.
3.4.5. Aprendizaje Hebbiano Competitivo
La técnica de Aprendizaje Hebbiano Competitivo, o Competitive Hebbian Learning (CHL)
[White, 1992], permite crear conexiones dinámicamente durante el proceso de entrenamiento.
Ingeniería Informática - UCSP
33
3.5. Growing Neural Gas
A diferencia del modelo clásico de Kohonen, CHL verifica si existe una conexión entre las
unidades s1 y s2 más próximas al patrón ξ presentado, y la crea de no existir.
3.4.6. Gas Neuronal con Aprendizaje Hebbiano Competitivo
El algoritmo Gas Neuronal con Aprendizaje Hebbiano Competitivo, del inglés Neural
Gas with Competitive Hebbian Learning (NGCHL) [Martinetz and Schulten, 1994] elimina las
conexiones no útiles en la red incorporando un contador que controle la “edad” de las conexiones, contador que se incrementa cuando la neurona a la que pertenecen es elegida vencedora,
y que al alcanzar un parámetro máximo de edad elimina la conexión. La principal diferencia
con GNG es la necesidad de especificar el número de unidades de la red, además de trabajar
con parámetros no constantes en el tiempo.
Todos estos modelos proporcionan estructuras capaces de trabajar en ambientes dinámicos. De entre la gran variedad de modelos de redes constructivas, en esta investigación se utilizará la red GNG por ser una red representativa, por lo que será detallada con mayor profundidad a continuación.
3.5. Growing Neural Gas
Growing Neural Gas (GNG) es un algoritmo de agrupamiento incremental no supervisado resultante de la combinación de los métodos Neural Gas [Martinetz and Schulten, 1994] y
Aprendizaje Hebbiano Competitivo [White, 1992]. Dada una distribución de datos de entrada
en Rn , GNG crea incrementalmente un grafo, o red neuronal, donde cada nodo en el grafo tiene
una posición en Rn .
Este modelo surgió principalmente con el objetivo de mejorar algunas limitaciones del
modelo básico de Kohonen. En cuanto una red de Kohonen precisa de la iniciación de su
topología, Growing Neural Gas inicia su entrenamiento con una estructura mínima y nuevas
unidades son creadas gradualmente [Fritzke, 1995]. Por tanto el modelo GNG además de trabajar con el paradigma no supervisado, también es constructivo, siendo capaz de generar una
topología diferente para cada tipo de problema.
Otra diferencia con el modelo de Kohonen es la forma de conectar las unidades. En los
mapas de Kohonen las conexiones crean mallas rectangulares, mientras que en el modelo GNG,
una unidad puede tener más de cuatro vecinos [Fritzke, 1995], generando así diversas figuras
geométricas y una red con mayor capacidad de aprendizaje como se observa en la Figura 3.4.
Comenzando con dos nodos el algoritmo construye un grafo en el que los nodos son
considerados vecinos si están conectados entre sí por medio de una arista. La información de
vecindad se obtiene mediante CHL: para cada señal de entrada x se crea una arista entre los dos
nodos más cercanos a la señal medidos en una distancia Euclidiana [Fritzke, 1995].
El grafo generado por CHL, también llamado triangulación inducida de Delaunay, es un
Ingeniería Informática - UCSP
34
CAPÍTULO 3. Redes Neuronales Artificiales
Figura 3.4: La red GNG se adapta a la distribución de señales con áreas y dimensionalidades
diferentes del espacio de entrada [Fritzke, 1995].
sub-grafo de la triangulación de Delaunay correspondiente al grupo de nodos. La triangulación
inducida de Delaunay preserva óptimamente la topología en un sentido general. CHL es un
componente esencial del algoritmo GNG, ya que es usado para dirigir la adaptación local de los
nodos y la inserción de nuevos nodos. Además, Growing Neural Gas usa solamente parámetros
que son constantes en el tiempo.
3.5.1. Algoritmo GNG
El algoritmo GNG asume que cada nodo k consiste en:
kw - un vector de referencia en Rn , es decir, la posición de un nodo en el espacio de
entrada.
Errork - una variable local de error acumulado que representa la medida estadística que
se usa para determinar los puntos de inserción apropiados para nuevos nodos.
Un conjunto de aristas definen la topología de los vecinos del nodo k, donde cada arista
posee una variable de edad que se usa para decidir cuándo remover las aristas viejas con
el objetivo de mantener la topología actualizada.
Teniendo en cuenta lo anterior, el Algoritmo 1 muestra el proceso de entrenamiento de la
red GNG.
Ingeniería Informática - UCSP
35
3.5. Growing Neural Gas
Algoritmo 1: Algoritmo de entrenamiento de una red GNG
1: Inicializar la red A con dos unidades c1 e c2 :
A = {c1 , c2 }
(3.4)
Los pesos deben ser inicializados con valores aleatorios, generalmente en el intervalo [0,1].
Inicializar el conjunto de conexiones C, C ⊂ A x A:
C=∅
(3.5)
2: Presentar el patrón ξ 1 a la red de acuerdo con una distribución uniforme p(ξ).
3: Determinar las dos neuronas s1 y s2 más próximas a ξ de acuerdo con las ecuaciones (3.6)
y (3.7):
s1 = argminkξ − wc k ∀c ∈ A
(3.6)
s2 = argminkξ − wc k ∀c ∈ A − {s1 }
(3.7)
donde kξ−w~c k representa la función de distancia (en este caso euclidiana) entre los vectores
ξ e w~c .
4: Si no existe conexión entre s1 y s2 , entonces crearla.
C = C ∪ {s1 , s2 }
(3.8)
Inicializar la edad de esta nueva conexión en 0.
edad(s1 ,s2 ) = 0
(3.9)
5: Actualizar la variable de error local adicionando el cuadrado de la distancia entre la neurona
ganadora y el patrón presentado:
Es1 = Es1 + kξ − ws1 k2
(3.10)
6: Actualizar el vector de pesos de s1 y los vectores de pesos de sus vecinos de acuerdo con
las ecuaciones 3.11 y 3.12:
4w~s1 = µb (ξ − w~s1 )
(3.11)
4w
~ i = µn (ξ − w
~ i ) (∀i ∈ Ns1 )
(3.12)
donde Ns1 es el conjunto de vecinos topológicos de la unidad ganadora s1 , µb y µn son las
tasas de aprendizaje para la neurona ganadora y para sus vecinos respectivamente.
7: Incrementar la edad de todas las conexiones de s1 :
edad(si , i) = edad(si , i) + 1 ∀i ∈ Ns1 .
(3.13)
8: Remover las conexiones con edad mayor que amax 2 . Si después de este proceso existen
unidades sin conexiones, éstas deben ser removidas de la red.
1
2
ξ ∈ Rn , donde n es la dimensión de los patrones.
amax es el parámetro de entrenamiento que determina la edad máxima permitida para una conexión.
Ingeniería Informática - UCSP
36
CAPÍTULO 3. Redes Neuronales Artificiales
9: Si el número de patrones presentados hasta el momento es múltiplo del parámetro λ, una
nueva unidad debe ser insertada de la siguiente forma:
Determinar la unidad q con el mayor error acumulado de toda la red.
q = max{Ec , ∀c ∈ A}
(3.14)
Determinar, de entre los vecinos de q, la unidad f con el mayor error acumulado.
f = max{Ec } ∀c ∈ Nq
(3.15)
Agregar una nueva unidad r a la red e interpolar su vector de pesos a partir de q y f
de acuerdo con la Ecuación 3.17.
A=A∪r
w~r =
w~q + w~f
2
(3.16)
(3.17)
Conectar la nueva unidad r con q y f , y remover la conexión original entre q y f :
C = C ∪ {(r, q), (r, f )}
(3.18)
C = C − {(q, f )}
(3.19)
Disminuir las variables de error de las unidades q y f en una fracción α:
4Eq = −αEq , 4 Ef = −αEf
(3.20)
Interpolar la variable de error de r a partir de q e f :
Er =
Eq + Ef
2
(3.21)
10: Disminuir la variable de error de todas las unidades en base a la tasa de corrección de error
β:
4Ec = −βEc , ∀c ∈ A
(3.22)
11: Si el criterio de parada 3 no ha sido alcanzado, volver al paso 2.
Gracias al entrenamiento, GNG puede ser usado para encontrar estructuras topológicas
que reflejan la estructura de la distribución de entrada. Entonces, incluso si la distribución de
entrada cambia en el tiempo, GNG es capaz de adaptarse moviendo los nodos hasta cubrir la
nueva distribución.
No es necesario decidir a priori el número de nodos ya que los nodos son añadidos incrementalmente durante la ejecución. La inserción de nuevos nodos termina cuando se cumple un
criterio de desempeño definido por el usuario o si se llega a un tamaño máximo de la red.
3
Un criterio de parada puede ser un tamaño máximo de red, un determinado número de ciclos, o alguna otra
medida de desempeño.
Ingeniería Informática - UCSP
37
3.6. Consideraciones finales
3.6. Consideraciones finales
En este capítulo se presentaron las redes neuronales artificiales, algunas propiedades y
conceptos básicos así como los mapas auto-organizables o Self-Organizing Maps y algunas
de variaciones constructivas del modelo de Kohonen. La gran ventaja de las redes SOM es su
capacidad de aprendizaje y generalización.
Las redes SOM vienen siendo ampliamente usadas en aplicaciones de agrupamiento de
grandes conjuntos de datos (como WEBSOM [Lagus et al., 1999]) debido principalmente a que
estas redes son capaces de establecer nuevas relaciones entre los datos, organizando la información de entrada mediante un aprendizaje no supervisado.
Las redes SOM generan mapas topológico que mantiene las relaciones de vecindad en
base a criterios de similitud, y por lo tanto, crean de forma natural agrupamientos de patrones
con características similares, lo que sumado a sus otras características, ofrece una técnica de
agrupamiento de datos efectiva.
Una limitación importante de los mapas auto-organizables es la falta de una estructura
capaz de responder a consultas específicas como las de k-vecinos más cercanos o búsquedas
por rango, así como el alto costo computacional de su entrenamiento.
Ingeniería Informática - UCSP
38
Capítulo 4
Métodos de Acceso Métrico
4.1. Consideraciones iniciales
Los Métodos de Acceso Métrico (MAM) se enfocan en el problema de organización de
datos para que, en base a un criterio de similitud, facilitar la búsqueda del conjunto de elementos
que estén cerca de un elemento de consulta [Chávez et al., 2001]. Este problema está presente
en un sinfín de aplicaciones que van desde escenarios de la vida cotidiana hasta las ramas
de las ciencias de la computación, como el reconocimiento de patrones o la recuperación de
información.
Tradicionalmente, las estructuras de datos han aplicado operaciones de búsqueda, donde
se hace una coincidencia exacta. Por ejemplo, en las bases de datos donde se manejan registros,
cada registro es comparado con los demás por medio de una clave y las búsquedas retornan los
registros cuya clave coincida con la clave suministrada.
Tras la aparición de nuevos contextos, debido principalmente al desarrollo tecnológico,
vienen surgiendo nuevos algoritmos y métodos de acceso más eficientes y veloces.
En las búsquedas por similitud o proximidad, la similitud entre elementos es modelada
a través de una función de distancia que satisfaga la desigualdad triangular, y un conjunto de
objetos llamado espacio métrico.
4.2. Definiciones
Los Métodos de Acceso Métrico son estructuras ampliamente utilizadas en el campo de
Recuperación de Información. Un MAM debe organizar un conjunto de datos en base a un
criterio de similitud para responder eficientemente a consultas específicas de proximidad.
Los Métodos de Acceso Métrico puedes ser descritos como una herramienta de organización de datos. Los MAMs trabajan sobre espacios métricos definidos por un conjunto de
39
4.2. Definiciones
objetos y una función de distancia que mide la disimilitud entre los objetos del espacio métrico
[Chávez et al., 2001].
Consideremos un conjunto U que denota el universo de objetos válidos y la función
d : U × U −→ R que mide la distancia entre objetos. Se define como espacio métrico al
subconjunto S ⊆ U de tamaño n = |S| llamado diccionario o base de datos, que denota el conjunto de objetos de búsqueda, y a la función d() que mide la disimilitud entre objetos y satisface
las propiedades de:
1. ∀x, y ∈ U, d(x, y) ≥ 0, positividad;
2. ∀x, y ∈ U, d(x, y) = d(y, x), simetría;
3. ∀x ∈ U, d(x, x) = 0, reflexividad;
4. ∀x, y ∈ U, x 6= y ⇒ d(x, y) > 0, positividad estricta;
5. ∀x, y, z ∈ U, d(x, y) ≤ d(x, z) + d(z, y), desigualdad triangular.
La desigualdad triangular es la propiedad más importante porque establece los límites
de distancias que aún pueden no haberse calculado, generando algoritmos de búsqueda por
similitud significativamente más rápidos [Clarkson, 2006].
Para los espacios vectoriales (un caso particular de espacios métricos) donde cada objeto es descrito como un vector de características (x1 , x2 , x3 , . . . , xn ) varios Métodos de Acceso
Espacial (MAE) como Kd-Tree [Bentley, 1979] o R-Tree [Guttman, 1984] han sido propuestos
para indexar este tipo de objetos multidimensionales. El problema principal de los espacios vectoriales está relacionado con las altas dimensiones de los datos, la también conocida maldición
de la dimensionalidad [Chávez et al., 2001].
4.2.1. Consultas de proximidad
Dado un objeto de consulta q ∈ U, para poder recuperar los objetos similares a q, se
definen los siguientes tipos básicos de consulta:
Consultas de rango Rq(q, r). Recupera todos los elementos que se encuentran dentro de un
radio r de q. Esto es, {u ∈ U / d(q, u) ≤ r}.
Consulta de vecino más cercano N N (q). Recupera el elemento en U más cercano a q. Esto
es {u ∈ U / ∀v ∈ U, d(q, u) ≤ d(q, v)}. Adicionalmente se puede establecer un rango
máximo r.
Consulta de k-vecinos más cercanos N Nk (q). Recupera los k elementos en U más cercanos
a q. Esto es, {A ⊆ U / |A| = k ∧ ∀u ∈ A, v ∈ {U − A}, d(q, u) ≤ d(q, v)}.
Ingeniería Informática - UCSP
40
CAPÍTULO 4. Métodos de Acceso Métrico
(a) Ejemplo de búsqueda por rango (b) Ejemplo de búsqueda del veci- (c) Ejemplo de búsqueda de los kr en un conjunto de puntos.
no más cercano en un conjunto de vecinos más cercanos en un conjunpuntos.
to de puntos con k = 4.
Figura 4.1: Tipos básicos de consultas por proximidad.
4.2.2. Consideraciones de eficiencia
La eficiencia de los Métodos de Acceso Métrico está determinada por muchos factores.
Primero, como el conjunto inicial de datos es muy grande como para tenerlo en memoria principal, el número de accesos a disco requeridos para procesar una consulta o inserción es crucial. Segundo, el costo computacional de la función de distancia puede ser tan grande que el
número de cálculos de distancia tienen gran impacto en la eficiencia. Tercero, la capacidad
y uso del almacenamiento, no por el costo de almacenamiento sino por los accesos a disco
[Bozkaya and Ozsoyoglu, 1997].
El tiempo total para evaluar una consulta viene determinado por la Ecuación 4.1, donde
NCD representa el Número de Cálculos de Distancia, d() es la función de distancia, tiempo E/S
es el tiempo requerido para el acceso a memoria secundaria y tiempo CPU el tiempo consumido
por el procesador [Chávez et al., 2001].
T = NCD × complejidad de d() + tiempo CPU + tiempo E/S
(4.1)
En muchas aplicaciones evaluar la función d() puede ser tan costoso que los demás componentes son descartados. El Número de Cálculos de Distancia (NCD) se mide en base a la complejidad de los algoritmos. Se puede asumir un trabajo de CPU lineal siempre que el número
de cálculos de distancia sea bajo. La importancia del tiempo E/S depende de la cantidad de
memoria principal disponible y el costo relativo de calcular la función de distancia. Entonces,
para poder minimizar T es necesario reducir el NCD.
Es entonces necesario diseñar algoritmos de indexación eficientes que reduzcan el NCD.
En general, estas estructuras pueden resultar costosas de construir, pero el costo de construcción
es compensado por la reducción de cálculos de distancia en las consultas posteriores.
Ingeniería Informática - UCSP
41
4.3. Algoritmos de búsqueda
4.3. Algoritmos de búsqueda
Los Métodos de Acceso Métrico son estructuras que trabajan sobre espacios métricos,
organizando los datos para responder eficientemente a consultas por similitud. De acuerdo con
[Zezula et al., 2006], los MAMs pueden ser clasificados en:
Particionamiento de esferas: Fixed Queries Tree [Baeza-Yates et al., 1994], Vantage Point
Tree [Uhlmann, 1991].
Particionamiento de hiperplanos: Generalized Hyper-plane Tree [Uhlmann, 1991].
Distancias Precomputadas: Omni-Family [Filho et al., 2001], Approximating and Eliminating Search Algorithm [Ruiz, 1986].
Métodos híbridos: GNAT [Brin, 1995], Spatial Approximation Tree [Navarro, 2002], Multi Vantage Point Tree [Bozkaya and Ozsoyoglu, 1997].
Otros métodos: M-Tree [Ciaccia et al., 1997], Slim-Tree [Caetano Traina et al., 2000], DIndex [Dohnal et al., 2003].
La Figura 4.2 muestra otra clasificación de los Métodos de Acceso Métrico propuesta en
[Chávez et al., 2001], aquí se clasifican a los métodos de búsqueda en: basados en agrupamiento
y basados en pivotes. Los métodos basados en agrupamiento particionan el espacio en regiones
representadas por un centroide o centro de grupo, para luego poder descartar regiones completas
cuando se hace una búsqueda. Los métodos basados en pivotes seleccionan un conjunto de
elementos como pivotes, y construyen un índice en base a las distancias entre cada elemento y
los pivotes.
Se pueden encontrar buenas referencias sobre clasificación y definición de los MAMs
en [Chávez et al., 2001], [Hjaltason and Samet, 2003] y [Clarkson, 2006]. A continuación se
describen sólo algunos métodos de la gran variedad existente.
4.3.1. Burkhard-Keller Tree
La estructura Burkhard-Keller Tree (BKT) [Burkhard and Keller, 1973] inicialmente selecciona un elemento arbitrario p ∈ U como la raíz del árbol. Para cada distancia i > 0, se
define Ui = {u ∈ U, d(u, p) = i} como el conjunto de todos los elementos a distancia i de
la raíz p, y para cada Ui no vacío, se construye un hijo de p (etiquetado i) para luego recursivamente construir el BKT para Ui . Este método es conveniente para funciones de distancia
discreta.
Ingeniería Informática - UCSP
42
CAPÍTULO 4. Métodos de Acceso Métrico
Figura 4.2: Taxonomía de algoritmos en base a sus características [Chávez et al., 2001]
4.3.2. Vantage-Point Tree
El árbol Vantage-Point Tree (VPT) presentado por Uhlmann en [Uhlmann, 1991] fue diseñado para funciones de distancia continua. VPT construye recursivamente un árbol binario seleccionando también un elemento arbitrario p ∈ U como raíz y la mediana todas las distancias,
M = mediana{d(p, u)/u ∈ U }. Los elementos a distancia menor o igual a M son insertados
en el subárbol izquierdo, mientras que los mayores a M son insertados en el subárbol derecho.
4.3.3. M-Tree
La estructura de datos M-Tree [Ciaccia et al., 1997] provee capacidades dinámicas (construcción gradual) y un buen manejo de E/S además de un reducido número de cálculos de
distancia. Es un árbol donde se selecciona un conjunto de elementos representativos en cada
nodo y el elemento más cercano a cada representativo es organizado en el subárbol cuya raíz es
el elemento representativo. Cada representativo almacena su radio de cobertura.
Al hacer una consulta el elemento de consulta es comparado con todos los representativos
del nodo y el algoritmo de búsqueda entra recursivamente en los nodos no descartados usando
el criterio del radio de cobertura.
La principal diferencia en M-Tree con métodos anteriores es el algoritmo de inserción. Los
Ingeniería Informática - UCSP
43
4.3. Algoritmos de búsqueda
elementos son insertados en el “mejor” subárbol, definido como aquel subárbol que minimice
la expansión del radio de cobertura. El elemento es luego agregado al nodo hoja. En caso de
overf low se divide el nodo dos y se lleva un elemento del nodo a un nivel superior, obteniendo
una estructura de datos balanceada.
4.3.4. Slim-Tree
Slim-Tree propuesto por Traina en [Caetano Traina et al., 2000] es un MAM dinámico y
balanceado con una estructura básica similar al M-Tree donde los datos se almacenan en los
nodos hoja. Slim-Tree crece de abajo a arriba, de las hojas a la raíz, organizando los objetos en
un estructura jerárquica que usa un representativo como el centro de cada región que cubre los
objetos en el sub-árbol.
Las principales características son la introducción de un nuevo algoritmo de división e
inserción así como el algoritmo Slim-down [Caetano Traina et al., 2000] y una medida de sobreposición llamada Fat-factor par la construcción de árboles más rápidos. El algoritmo de
división está basado en el MST [Kruskal, 1956], desempeñándose más rápidamente que otros
algoritmos de división y sin sacrificar el rendimiento de las consultas. Además, el algoritmo
de inserción produce un considerable mayor uso de almacenamiento. El algoritmo Slim-down
es introducido para reducir el grado de sobreposición, haciendo al árbol más estrecho y por lo
tanto mejorando el desempeño de las consultas y de la construcción, trabajando con memoria
principal o secundaria.
4.3.5. Omni-Tree
La familia de métodos Omni [Filho et al., 2001] trabaja de forma similar a la estructura
LAESA [Micó L., 1994], pero a diferencia de ésta, Omni propone el algoritmo HF para la selección estratégica de un subconjunto de objetos del conjunto de datos para ser usados como
puntos de referencia globales u Omni-coordenadas, definidas como el conjunto de distancias de
un objeto a cada uno de los focos generalmente accesibles a través de una matriz con distancias
precalculadas. Una vez que las Omni-coordenadas son calculadas y almacenadas, pueden ser
utilizadas para reducir el número de cálculos de distancia.
4.3.6. DBM-Tree
Un método de acceso más reciente, DBM-Tree (del inglés Density Based Metric-Tree)
[Marcos R. Viera and Traina, 2004] presenta un funcionamiento similar a Slim-Tree, pero fue
el primero en proponer un relajo en la altura de las regiones del árbol con alta densidad de
datos para poder reducir aún más la sobreposición de nodos. Aunque generando árboles no
balanceados, esta aproximación logra reducir el número de cálculos de distancia sin afectar el
número de accesos a disco.
Ingeniería Informática - UCSP
44
CAPÍTULO 4. Métodos de Acceso Métrico
Actualmente existe una gran bibliografía sobre métodos de acceso, cada uno presentando
nuevas mejoras en la eficiencia de los algoritmos de búsqueda y construcción. Para la presente
investigación se han considerado las técnicas Slim-Tree y Omni-Secuencial, detalladas en las
siguientes secciones.
4.4. Slim-Tree
Slim-Tree [Caetano Traina et al., 2000] es un MAM dinámico. La estructura de datos básica de esta técnica es similar a la de otros árboles como el M-Tree [Ciaccia et al., 1997], donde
los datos son almacenados en las hojas y se construye una jerarquía de abajo hacia arriba.
Slim-Tree difiere de los demás Métodos de Acceso Métrico en los algoritmos de división e inserción que utiliza. El algoritmo de división es más rápido que otros algoritmos y sin sacrificar
el rendimiento de las consultas, además, el algoritmo de inserción hace un considerable mayor
uso del almacenamiento. El principal aporte es la introducción del algoritmo Slim-down, que
mantiene al árbol compacto y rápido en la etapa de post-procesamiento.
Slim-Tree es un árbol dinámico y balanceado que crece de las hojas a la raíz, organizando
los objetos en una estructura jerárquica y utilizando un nodo representativo como centro de cada
región que cubre a los objetos en un sub-árbol. Este árbol posee dos tipos de nodos: nodos dato
(hojas) y nodos índice, ambos con un tamaño de página predefinido que almacena un número
máximo de objetos.
4.4.1. Funcionamiento
En el algoritmo de construcción de Slim-Tree, cuando se agrega un nuevo objeto, primero
se busca al nodo que cubra a este objeto empezando desde la raíz. En caso de no encontrarse
un nodo que cumpla con esta condición, se selecciona un sub-árbol siguiendo uno de estos
tres métodos: 1) selección aleatoria de uno de los nodos, 2) selección del nodo cuyo centro
(también llamado centriode) posea la mínima distancia al objeto, o 3) selección del nodo que
tenga la mínima ocupación de entre los nodos calificados. Este proceso se aplica recursivamente
en todos los niveles del árbol.
Cuando un nodo se desborda se crea uno nuevo en el mismo nivel y se distribuyen los
objetos entre los nodos, insertándose en el nodo padre. Si el nodo raíz se divide se crea una
nueva raíz y el árbol crece un nivel.
Para la división de los nodos se proponen tres algoritmos:
Aleatorio , donde los dos nuevos centroides son seleccionados aleatoriamente y los objetos
existentes son distribuidos entre ellos, cada objeto es almacenado en el nuevo nodo cuyo
centro está más cerca.
minMax , donde se consideran todos los pares de objetos como representativos potenciales.
Ingeniería Informática - UCSP
45
4.4. Slim-Tree
(a) Nodo antes de la división.
(b) MST construido con los obje- (c) Nodos después de la división.
tos del nodo.
Figura 4.3: División de nodos con el algoritmo MST [Caetano Traina et al., 2000].
Para cada par, se asignan los objetos a un representativo por medio de un algoritmo lineal,
escogiendo el par que minimice el radio convergente.
Minimal Spanning Tree (MST) [Kruskal, 1956], donde se construye el MST de los objetos y se
desecha el arco más largo del árbol. Gracias al algoritmo de división basado en MST,
Slim-Tree logra una partición rápida de los nodos en dos grupos que posteriormente reducirán los tiempos de búsqueda.
El Algoritmo 2 [Caetano Traina et al., 2000] describe el funcionamiento de la división de
nodos usando MST. El algoritmo considera un grafo de C objetos y C(C − 1) aristas, donde
el peso de las aristas hacen referencia a la distancia entre los objetos conectados. La Figura 4.3
muestra de forma gráfica este proceso de división.
Algoritmo 2: Algoritmo de división MST
1: Construir el MST de los C objetos.
2: Eliminar la arista más larga.
3: Reportar los objetos conectados como dos grupos.
4: Escoger el objeto representativo de cada grupo, por ejemplo el objeto con la menor distancia
máxima a los demás objetos del grupo.
Adicionalmente, mediante la aplicación del algoritmo Slim-down, Slim-Tree logra producir árboles estrechos y con un reducido grado de sobreposición entre nodos (overlapping).
El Algoritmo 3 [Caetano Traina et al., 2000] describe el proceso del algoritmo Slim-down. La
Figura 4.4 muestra gráficamente el resultado obtenido por este algoritmo.
Algoritmo 3: Algoritmo Slim-down
1: Para cada nodo i en un nivel determinado del árbol, buscar el objeto c más lejano de
su centroide.
2: Buscar al nodo j hermano de i que también contenga al objeto c, si tal nodo existe,
quitar c del nodo i e insertarlo en el nodo j, corrigiendo los radios del nodo i.
Ingeniería Informática - UCSP
46
CAPÍTULO 4. Métodos de Acceso Métrico
(a) Nodos antes de aplicar el algo- (b) Nodos después de aplicar el
ritmo de Slim-down.
algoritmo de Slim-down.
Figura 4.4: Funcionamiento del algoritmo Slim-down [Caetano Traina et al., 2000].
3: Repetir los pasos 1 y 2 secuencialmente en todos los nodos de un nivel determinado
del árbol. Si en el proceso se produjo un movimiento de objetos de un nodo a otro,
repetir los pasos 1 y 2 de nuevo en todos los nodos del nivel.
Las regiones de los nodos pueden sobreponerse unas con otras, fenómenos conocido como
overlaping, incrementando el número de caminos a recorrer al realizar una consulta, y por
lo tanto incrementando el número de cálculos de distancia efectuados. Esta deficiencia se ve
claramente mejorada en el Slim-Tree.
4.5. Omni-Secuencial
La técnica Omni [Filho et al., 2001] hacen uso de un conjunto de puntos de referencia llamados “focos"para reducir el número de cálculos de distancia. Cada vez que se inserta un nuevo
elemento se calculan las distancias de este elemento hacia cada uno de los focos, información
que es luego utilizada en las consultas para reducir los cálculos de distancia haciendo uso de la
propiedad de la desigualdad triangular vista anteriormente.
Esta técnica introducen los conceptos de Omni-focos y Omni-coordenadas. Los Omnifocos son definidos como el conjunto F de distintos puntos que pertenecen al espacio métrico.
Las Omni-coordenadas son definidas como el conjunto de distancias calculadas entre cada punto del espacio métrico y cada elemento de F , por lo tanto la cardinalidad de la coordenada es
igual al número de focos. El costo adicional de calcular las Omni-coordenadas es compensado
por el ahorro obtenido en las consultas.
Uno de los puntos críticos en esta técnica es la selección del conjunto de focos F y su
cardinalidad. Con respecto a la cardinalidad, y como puede ser observado en la Figura 4.5, con
un mayor número de focos se puede reducir más el subconjunto de candidatos, acelerando el
proceso de búsqueda, pero se requiere mayor espacio y tiempo para procesarlos. Los autores
recomiendan una cardinalidad no mayor al doble de la dimensionalidad intrínseca de los datos
ya que a un mayor número de focos se obtiene un pequeño o ningún beneficio.
Ingeniería Informática - UCSP
47
4.6. Consideraciones finales
(a) Sin uso de focos (b) Usando un foco el (c) Subconjunto de
todo el conjunto de subconjunto de datos candidatos usando dos
datos es candidato.
candidatos (área som- focos.
breada) se reduce.
Figura 4.5: Selección de los candidatos para una consulta de rango con diferentes cardinalidades
de F [Filho et al., 2001].
Para la selección de los focos se recomienda seleccionar puntos lo más separado posible
y equidistantes. Se propone el algoritmo HF para esta tarea. Este algoritmo primero selecciona
un objeto aleatoriamente y luego selecciona como primer foco al objeto más alejado de este.
El segundo foco es el elemento más distante el primer foco. Por último se selecciona como
siguiente foco a aquel objeto con distancias más similares a los focos anteriores, este proceso
se repite hasta seleccionar todos los focos. El proceso completo está descrito en el Algoritmo 4
[Filho et al., 2001].
Algoritmo 4: Algoritmo HF
1: Seleccionar aleatoriamente un elemento s0 del conjunto de datos.
2: Encontrar el elemento f1 más lejano a s0 y seleccionarlo como foco.
3: Encontrar el elemento f2 más lejano a f1 y seleccionarlo como foco.
4: Encontrar el elemento f1 más lejano a si y seleccionarlo como foco.
5: Establecer edge = d(f1 , f2 ), variable usada para encontrar a los demás focos.
6: Mientras se necesiten encontrar más focos repetir los pasos 7 y 8.
7: Para cada punto si del conjunto de datos calcular:
P
errori = k k esf oco|edge − d(fk , si )|.
8: Seleccionar como foco al elemento si que posea el menor errori y que no haya sido seleccionado anteriormente como foco.
4.6. Consideraciones finales
Las búsquedas por similitud vienen siendo ampliamente usadas en muchas áreas de las
ciencias de la computación como minería de datos, bioinformática y compresión de vídeo para
citar sólo algunas. Los Métodos de Acceso Métrico han probado ser excelentes estructuras para
resolver este tipo de consultas específicas ya que han sido diseñados para trabajar sobre espacios
métricos reduciendo los costos de búsqueda.
Debido a que el cálculo de la función de distancia en sí puede tener un costo computaIngeniería Informática - UCSP
48
CAPÍTULO 4. Métodos de Acceso Métrico
cional alto, se asume que el desempeño de los MAMs depende principalmente del Número de
Cálculos de Distancia realizado durante los procesos de construcción y búsqueda. Trabajando
con grandes bases de datos, el número de accesos a disco es un factor que también debe ser
considerado.
La principal limitación de estos métodos es la falta de aprendizaje de las consultas anteriores [Cuadros-Vargas, 2004], es decir, no aprovechan el conocimiento generado por las consultas anteriores para reducir el tiempo de respuesta de consultas futuras.
En la literatura existente se pueden encontrar varios MAMs, pero Slim-Tree y los métodos
Omni presentan ciertas características que los destacan en relación a métodos anteriores.
Ingeniería Informática - UCSP
49
Capítulo 5
Técnica MAM-SOM para agrupamiento
de datos
5.1. Consideraciones iniciales
Como se vio en capítulos anteriores, el proceso de entrenamiento de los mapas autoorganizables se ve drásticamente perjudicado por a la búsqueda secuencial que realizan, siendo
esta una de las deficiencia más críticas al momento de trabajar con grandes conjuntos de datos.
Si adicionalmente consideramos la alta dimensionalidad de los datos y la complejidad de la
función de distancia, el uso de un entrenamiento secuencial en tareas de agrupamiento de datos
resultaría altamente costoso.
El creciente uso de grandes conjuntos de datos altamente complejos ha generado la necesidad de técnicas que optimicen considerablemente el procesamiento con redes neuronales. En
investigaciones recientes se han desarrollado la familia de técnicas MAM-SOM y SAM-SOM
[Cuadros-Vargas, 2004]. Estas técnicas proponen el uso de Métodos de Acceso Métrico (MAM)
y Métodos de Acceso Espacial (MAE), o en inglés Spatial Access Method (SAM), para mejorar el rendimiento de redes Self-Organizing Maps (SOM) [Bedregal and Cuadros-Vargas, 2006,
Ocsa et al., 2007].
La presente propuesta hará referencia a las técnicas MAM-SOM por el uso de Métodos de
Acceso Métrico, pero cabe destacar que la implementación y características permanecen iguales
a la familia SAM-SOM, es decir, usando Métodos de Acceso Espacial.
5.2. Trabajos Previos
El objetivo de utilizar métodos de acceso en el entrenamiento de las redes SOM es poder
remplazar la tradicional búsqueda secuencial de la neurona ganadora por una búsqueda más
rápida. Al reducir el número de comparaciones entre patrones presentados y neuronas en la
50
CAPÍTULO 5. Técnica MAM-SOM para agrupamiento de datos
red se obtiene, entre otras cosas, un entrenamiento menos costoso. Implementando una técnica
MAM-SOM es posible mejorar considerablemente la ejecución del proceso de entrenamiento
de la red y potenciar sus capacidades.
En el caso de las redes SOM, cada vez que un patrón es presentado, éste es comparado
con cada unidad en la red con el fin de determinar a la neurona cuyo vector de pesos sea el más
cercano al patrón. Considerando que este proceso se repite un determinado número de ciclos, el
total Número de Cálculos de Distancia (NCD) realizados durante el entrenamiento estaría dado
por la Ecuación 5.1, donde N U es el número de unidades, N P el número de patrones y N C el
número de ciclos de entrenamiento de la red.
N CD = N U × N P × N C
(5.1)
En el caso de SOMs constructivas el número de unidades de la red varía a través del
tiempo. En la mayoría de estas redes el crecimiento está determinado por medio del parámetro
λ o tasa de inserción. Este parámetro indica que, cada λ patrones presentados a la red, una nueva
unida será creada. Por ejemplo, si λ = 100 entonces cada vez que se presenten 100 patrones a
la red, se insertará una nueva neurona. El total de cálculos de distancia requeridos para construir
una red con n unidades está determinado por la Ecuación 5.2, donde N U0 es el número inicial
de unidades.
N DCCSOM = λ
n(n − 1) − N U0 (N U0 − 1)
2
(5.2)
Analicemos el caso específico de la red Growing Neural Gas (GNG) [Fritzke, 1995] utilizada en la propuesta. Esta red inicia su topología con dos unidades en posiciones aleatorias,
entonces, para el caso de λ = 1 el primer patrón será comparado con dos unidades, el segundo
con tres unidades, el tercero con cuatro y así sucesivamente de manera que, para encontrar la
unidad ganadora para el n-ésimo patrón, se realizarán n + 1 comparaciones. De acuerdo con
la Ecuación 5.2, el número total de cálculos de distancia para construir una red GNG con N
unidades estaría dado por la Ecuación 5.3 [Cuadros-Vargas, 2004].
N CDGN G
N2 − N − 2
=λ
2
(5.3)
De la Ecuación 5.3 se observa que el parámetro λ es un factor crítico para el número total
de comparaciones hechas por la red, entonces el caso que minimice la ecuación sería λ = 1.
Como fue señalado en el algoritmo de entrenamiento de GNG, cuando una nueva neurona es
creada, su vector de pesos y error local son interpolados a partir de las dos unidades con mayor
error acumulado. Por lo tanto, al trabajar con valores de λ pequeños la red no tiene el tiempo
suficiente para adaptar las nuevas unidades a la distribución de datos, y como es altamente
probable que estas unidades nunca resulten ganadoras, serían inútiles para la red, generando
redes deformadas como se observa en la Figura 5.1. Por otro lado, si se establece un valor muy
alto para λ el NCD se elevaría considerablemente y la red podría tardar demasiado en entrenar.
La Figura 5.1 muestra gráficamente el impacto de la variable λ en la red.
Ingeniería Informática - UCSP
51
5.3. Técnicas MAM-SOM
(a) 10000 patrones, λ = 500.
(b) 10000 patrones, λ = 100.
(c) 1000 patrones, λ = 10.
Figura 5.1: Impacto del valor λ en la red GNG [Cuadros-Vargas and Romero, 2005].
En agrupamiento de datos, donde se trabajan con grandes cantidades de datos multidimensionales, el tiempo de construcción de un clasificador de este tipo puede llegar a ser en exceso
lento. Con la finalidad de poder reducir el NCD realizados para el entrenamiento de redes SOM
se propone la técnica MAM-SOM descrita a continuación.
5.3. Técnicas MAM-SOM
Como se mencionó anteriormente, las técnicas MAM-SOM son producto de la incorporación de Métodos de Acceso Métrico (MAM) en redes SOM. El objetivo es aprovechar las
características de los métodos de acceso para optimizar la construcción de la red neuronal.
Además de la búsqueda secuencial de la neurona ganadora, otra limitación de las redes
SOM es la falta de capacidad para responder a consultas más precisas como la de k-vecinos
más cercanos o búsquedas por rango, consultas que resultarían costas de responder debido a
la constante modificación de las regiones descritas por la red [Cuadros-Vargas, 2004]. Por lo
tanto, al incorporar un Métodos de Acceso Métrico en la red, se provee de una estructura capaz
de responder eficientemente este tipo de consultas, facilitando de esta manera la recuperación
de información similar a un determinado patrón.
Dependiendo del grado de incorporación del método de acceso, dos familias de técnicas
MAM-SOM fueron propuestas por Cuadros-Vargas en [Cuadros-Vargas, 2004]: MAM-SOM
Híbrida y MAM-SOM*.
5.3.1. MAM-SOM Híbrida
La familia MAM-SOM Híbrida utiliza al MAM como una estructura independiente a la
red, remplazando la búsqueda secuencial de la unidad ganadora (propia de las redes SOM) por
una búsqueda más rápida y eficiente (proporcionada por el método de acceso). El MAM permite
Ingeniería Informática - UCSP
52
CAPÍTULO 5. Técnica MAM-SOM para agrupamiento de datos
además responder a consultas de proximidad con un menor costo.
Cada unidad es insertada o eliminada en la red y en el método de acceso para preservar
la correspondencia en ambas estructuras. La adaptación de pesos de las neuronas se realiza de
acuerdo al algoritmo de la red, actualizando adicionalmente las unidades correspondientes en
la estructura métrica para que cada unidad de la red sea exactamente reflejada en la estructura
métrica. Nótese que el costo adicional de construcción y actualización de datos en el método de
acceso es recuperado en la reducción en cálculos de distancia.
5.3.2. MAM-SOM*
En la familia MAM-SOM* el método de acceso ha sido incorporado completamente en la
red, generando una nueva familia de técnicas con interesantes propiedades. Para la construcción
de las técnicas MAM-SOM* se considera agregar una nueva unidad a la red por cada patrón que
sea presentado, conectándola además a un determinado número de vecinos como se muestra en
el Algoritmo 5. Debido a que el vector de pesos de la nueva unidad es igual al patrón presentado,
no existe proceso de actualización de pesos, entonces la auto-organización de la red se da en el
proceso de construcción, necesitándose sólo un ciclo de entrenamiento.
El dilema de estabilidad-plasticidad [Grossberg, 1972] es abordado por las técnicas MAMSOM*. La estabilidad se refiere a que ningún patrón presentado a la red cambie de categoría a
lo largo del proceso de entrenamiento de la red, es decir, que no active diferentes unidades de
salida en diferentes instantes de tiempo. La plasticidad por otro lado se refiere a la habilidad
de adaptarse a nuevos datos, incorporando nuevo conocimiento sin afectar el aprendido anteriormente. Para solucionar el problema de la estabilidad,cada patrón es asignado a una única
neurona, eliminando la necesidad de actualización de pesos sin sacrificar el rendimiento ni la
generalización.
El Algoritmo 5 fue propuesto en [Cuadros-Vargas and Romero, 2002] describe la construcción de la técnica MAM-SOM*. El algoritmo considera el parámetro N eighborhoodSize
(también representado por φ) que determina el número de vecinos más cercanos que serán
conectados con la nueva unidad.
Algoritmo 5: Algoritmo de entrenamiento MAM-SOM*
1: Inicializar la red vacía;
2: InvDistSum = 0;
3: Presentar el patrón ξi a la red;
4: Crear una nueva unidad para ξi y agregarla a la estructura métrica;
5: Para ξi , encontrar los φ-vecinos más cercanos (n1 , n2 , . . . , nφ ) usando la estructura métrica;
6: Conectar la unidad creada con ξi a nj , ∀j = 1, 2, . . . , φ;
1
7: InvDistSum+ = Distancia(ξ
;
i ,nφ )
i
8: T amanoRecomendado = InvDistSum ;
9: Si existen más patrones regresar al paso 3.
Ingeniería Informática - UCSP
53
5.4. Propiedades de las técnicas MAM-SOM
(a) Estructura antes del proceso de poda.
(b) Poda de conexiones con τ = 2,5.
Figura 5.2: Ejemplo del proceso de poda de conexiones de las técnicas MAM-SOM* con 5000
patrones y N eighborhoodSize = 3 [Cuadros-Vargas and Romero, 2002].
Debido a que inicialmente el método de acceso posee pocas unidades, es posible que en
esta etapa el Algoritmo 5 conecte unidades alejadas por ser consideradas vecinas. Es necesario
aplicar un proceso de poda para poder eliminar conexiones entre unidades muy distantes que no
aportan información valiosa a la estructura, ajustando así la red a la distribución de datos. En el
proceso de poda se eliminan las conexiones con longitud mayor a τ × T amanoRecomendado,
donde τ es un parámetro de refinamiento que permite controlar la longitud de las conexiones
que se podarán. El efecto de este proceso de poda puede apreciarse en la Figura 5.2.
Con el parámetro de control τ es posible encontrar agrupamientos dentro de la red. Esto
es, afinando el valor de τ se van podando las conexiones de la red para encontrar grupos de
unidades aisladas por similitud.
5.4. Propiedades de las técnicas MAM-SOM
La principal característica de las técnicas MAM-SOM Híbridas es la aceleración del proceso de selección de la unidad ganadora, brindando la posibilidad de trabajar con redes mucho
más grandes y bases de datos más complejas. Además, la recuperación de información por
consultas de similitud es soportada gracias al método de acceso.
Considerando el escenario de las técnicas MAM-SOM*, donde cada patrón es representado por una unidad, podemos observar las siguientes propiedades son [Cuadros-Vargas, 2004]:
Escalabilidad: mayor número de unidades pueden ser creadas en la red.
Menor costo computacional: incluso trabajando con más unidades, el costo computacional es considerablemente menor que las redes SOM.
Refleja la distribución de datos: el algoritmo genera unidades nuevas de acuerdo con la
distribución de datos y no por interpolación.
Mayor información de las conexiones: las conexiones pueden contener la información de
la distancia entre unidades.
Ingeniería Informática - UCSP
54
CAPÍTULO 5. Técnica MAM-SOM para agrupamiento de datos
Mayor información para detección de agrupamientos: considerando que la función de distancia representa la disimilitud entre elementos se podrían eliminar conexiones mayores,
generando dos grupos separados.
Mayor estabilidad-plasticidad: un patrón siempre es representado por la misma neurona,
además la inserción de nuevos patrones no provoca la pérdida del conocimiento adquirido.
Aprendizaje incremental: el modelo permite la inserción de nuevos elementos en cualquier
instante, sin la necesidad de reinicializar el proceso.
Independencia del orden: gracias al Métodos de Acceso Métrico la estructura generada
no depende del orden de inserción de datos.
5.5. Estructuras propuestas para la técnica MAM-SOM
Durante su entrenamiento, las redes SOM crean agrupamientos de patrones con características similares de forma natural. Para agrupamiento de datos con el modelo de Kohonen, el
establecer el número de grupos anticipadamente podría limitar la calidad de agrupamiento del
algoritmo, ya que, al ser una tarea de análisis exploratorio, no sabemos con precisión cuantos
grupos pueden contener los datos. Por lo tanto, se propone trabajar con la red neuronal constructiva Growing Neural Gas (GNG) [Fritzke, 1995] por ser una red constructiva representativa.
Por otra parte, en el campo de Métodos de Acceso Métrico, los algoritmos se enfocan
en reducir el número de cálculos de distancia (o por lo menos el tiempo de CPU), descartando
consideraciones de E/S [Chávez et al., 2001]. El MAM M-Tree [Ciaccia et al., 1997], destacó
por ser un árbol balanceado especialmente diseñado para trabajar en memoria secundaria. Una
mejora de M-Tree, Slim-Tree [Caetano Traina et al., 2000], introduce un algoritmo de división
de nodos más rápido, un nuevo algoritmo de inserción con mejor aprovechamiento del almacenamiento y el algoritmo Slim-down [Caetano Traina et al., 2000] que mantiene al árbol compacto; presentando un tiempo de consulta 35 % menor [Caetano Traina et al., 2000] que M-Tree.
La aplicación del Omni-concept [Filho et al., 2001] en los métodos de acceso de la familia Omni
[Filho et al., 2001] mejoraron hasta diez veces su desempeño en tiempo de respuesta y cálculos
de distancia, con una implementación simple. Se propone entonces trabajar con las técnicas
Slim-Tree y Omni-Secuencial.
El proceso de agrupamiento de datos utilizando las técnicas MAM-SOM Híbrida y MAMSOM* con las estructuras propuestas se detalla en la siguiente sección.
5.6. Agrupamiento con MAM-SOM
En la tarea de agrupamiento de datos se tiene un conjunto de elementos que desean ser
agrupados en base a la similitud existente entre ellos,
Ingeniería Informática - UCSP
55
5.6. Agrupamiento con MAM-SOM
Siguiendo el procedimiento descrito en la Figura 2.2 del Capítulo 2, inicialmente se tienen
un conjunto de datos a los que se aplican técnicas de extracción o selección de características
para encontrar la mejor forma de representar cada uno de los datos a través de un vector de características de tamaño n; este vector representa al objeto deseado en un espacio n-dimensional.
Los conjuntos de datos empleados en la investigación ya han pasado por este proceso de extracción de características.
Una vez obtenidos los vectores de características, es decir, el conjunto de patrones que
representan a los elementos, se debe seleccionar la métrica o medida de similitud que se utilizará
para la comparación de los patrones. El conocimiento que se tenga del dominio de datos es
un factor determinante en la selección de la métrica. En esta investigación se trabajará con la
Distancia Euclidiana para medir la disimilitud entre objetos.
Luego se entrena al clasificador con el conjunto de patrones obteniendo como salida un
los agrupamientos. Para esta investigación se utilizarán a las técnicas MAM-SOM como clasificadores del proceso de agrupamiento de datos. Para el caso específico de la técnica MAMSOM*, cada unidad de la red es asociada con un elemento de la estructura métrica, y el agrupamiento estará dado por la poda gradual de conexiones como se discutió en la Sección 5.3.2.
En el caso de la técnica MAM-SOM Híbrida usando la red Growing Neural Gas (GNG)
y la estructura métrica Slim-Tree, la clasificación es determinada por la red neuronal debido a
que el entrenamiento de la red sigue siendo el mismo. Para crear la relación entre el método
de acceso y la red neuronal se establece una correspondencia entre las neuronas de la red y
los datos almacenados en la estructura métrica. A medida que se va construyendo la red las
neuronas son indexadas y organizadas por el MAM, logrando que la búsqueda de la neurona
ganadora se haga a través de la estructura métrica y ya no de forma secuencial.
En el entrenamiento de la técnica MAM-SOM Híbrida, siguiendo el algoritmo de la red
GNG, cada vez que se presenta un patrón o señal de entrada, se buscan las dos unidades más cercanas al patrón efectuando una búsqueda de los 2-vecinos más cercanos a través de Slim-Tree.
Como inicialmente la red posee dos unidades, ambas son seleccionadas para la actualización.
Al actualizar los pesos de la neurona ganadora y de sus vecinas topológicas (las que posean una
conexión con la neurona ganadora), se debe reflejar también este movimiento de unidades en
el método de acceso, modificando o actualizando los elementos correspondientes dentro de la
estructura. A medida que se van presentando más señales de entrada se van insertando nuevas
unidades en base al parámetro λ debido a que GNG es una red constructiva. Adicionalmente esta inserción debe hacerse en Slim-Tree. Igualmente, la remoción de unidades de la red (aquellas
sin conexiones) debe realizarse en Slim-Tree para que durante todo el proceso de entrenamiento
las unidades de la red estén exactamente reflejadas en la estructura métrica. El proceso continúa
hasta que el criterio de parada establecido se haya satisfecho. El resultando es un agrupamiento
más rápido y, principalmente, escalable.
Como se señala en el algoritmo de construcción de técnicas MAM-SOM* (Algoritmo 5),
para cada señal de entrada se crea una nueva unidad que representa a dicha señal igualándola al
vector de pesos de la unidad. Esta nueva unidad es insertada en Slim-Tree, y debido a que cada
unidad representa a un único patrón, no hay necesidad de actualización de pesos ni de ciclos de
entrenamiento adicionales. Seguidamente se conecta la unidad con sus φ-vecinos más cercanos
Ingeniería Informática - UCSP
56
CAPÍTULO 5. Técnica MAM-SOM para agrupamiento de datos
en base al parámetro N eighborhoodSize (los vecinos son encontrados mediante el método de
acceso). Estas conexiones almacenan la distancia entre las unidades que conectan, información
sumamente útil para realizar consultas posteriores.
Durante el proceso, la variable T amanoRecomendado se actualiza para almacenar una
medida recomendada para el tamaño máximo de las conexiones en base a las distancias de cada
unidad a su vecinos más cercano. Esta variable, junto al parámetro τ , permite la poda de aristas
con distancias muy grandes como se ve en la Figura 5.2.
Después de haber construido la estructura MAM-SOM*, la poda gradual de conexiones
modificando el valor de τ permite encontrar agrupamientos basados en similitud.
5.7. Consideraciones finales
Las técnicas MAM-SOM [Cuadros-Vargas, 2004] fueron propuestas para optimizar el uso
de redes SOM, técnicas muy populares para tareas de agrupamiento de datos. Es entonces posible construir un clasificador en base a las técnicas MAM-SOM que resultaría útil para agrupamiento de grandes conjuntos de datos ya que tienen un mejor desempeño en comparación de
las redes SOM en su forma original.
La técnica MAM-SOM híbrida ofrece un entrenamiento más rápido que las técnicas
SOM. Al introducir métodos de acceso métrico en la red, se remplaza la búsqueda secuencial de
la neurona ganadora por una búsqueda más eficiente, además de permitir consultas específicas
como de k-vecinos más cercanos y de rango.
La técnica MAM-SOM* ofrece una estructura enriquecida con conexiones que almacenan
distancias entre elementos que, sumado a sus características especiales, provee de información
altamente útil para la formación de grupos.
Ingeniería Informática - UCSP
57
Capítulo 6
Experimentos
6.1. Consideraciones iniciales
En base a las ideas presentadas en esta investigación se realizaron nuevos experimentos
utilizando recientes métodos de acceso. Los experimentos se realizaron en una PC de escritorio
con procesador Intel Celeron 1.8 GHz y 512 MB de memoria RAM.
Los experimentos fueron divididos en tres grupos principales:
Comparación entre la técnica MAM-SOM Híbrida y GNG,
Comparación entre la técnica MAM-SOM* y GNG, y
Comparación entre las técnicas MAM-SOM*, MAM-SOM Híbrida y GNG,
En todos los experimentos el desempeño de cada técnica fue medido en términos del
Número de Cálculos de Distancia (NCD) realizados en el proceso de construcción como fue
discutido en el capítulo anterior.
6.2. Bases de datos
Se consideraron seis bases de datos de áreas representativas de aprendizaje de máquina:
IRAS: La base de datos de InfraRed Astronomy Satellite contiene 531 instancias 103-dimensionales de espectros en baja resolución obtenidas de un satélite de astronomía.
DIGITS: Esta base de datos de dígitos manuscritos creada para el reconocimiento de dígitos
fue obtenida de 44 escritores. Contiene 7494 instancias 16-dimensionales.
58
CAPÍTULO 6. Experimentos
SPAM: Base de datos de datos para la detección de correos electrónicos masivos. Contiene
4601 instancias 57-dimensionales.
NURSERY: Esta base de datos contiene 12960 instancias 8-dimensionales derivadas de un
modelo de decisiones jerárquico desarrollado para calificar solicitudes a escuelas de enfermería.
COVERT: Esta base de datos contiene registros de las características de terreno en diferentes
bosques en América. Se trabajará con un subconjunto de 50000 instancias 54-dimensionales del conjunto original de 581012 vectores.
IMAGES: Esta base de datos contiene 6000 instancias 1215-dimensionales de la base original
de 80000 vectores obtenida de la extracción de características de imágenes del Proyecto
Informedia de la Universidad Carnegie Mellon.
Las bases de datos IRAS, DIGITS, SPAM, NURSERY y COVERT fueron obtenidas del
Repositorio de bases de datos para el aprendizaje de máquina y teorías de dominio de la Universidad de Californa - Irvine 1 .
6.3. Primer grupo
En el primer grupo de experimento se utilizaron las bases de datos IRAS, DIGITS y SPAM
para comparar las técnicas MAM-SOM Híbrida GNG+Slim-Tree y la red GNG. Se consideró
el NCD acumulado en dos escenarios: en relación al número de agrupamientos obtenido y
en relación al número de patrones presentados a las redes. Los parámetros utilizados para el
entrenamiento de la red en ambas técnicas fueron: λ = 600, α = 0,5, β = 0,0005, am = 300,
µb = 0,05 y µn = 0,006.
6.3.1. Discusión en relación al número de agrupamientos
La Figura 6.1 muestra resultados obtenidos de este primer grupo de experimentos considerando la eficiencia de las técnicas en relación al número de unidades creadas a lo largo del
proceso de construcción de las redes para las tres bases de datos. Debe notarse que a mayor
número de unidades en la red es posible trabajar con bases de datos más grandes, pudiéndose
además obtener agrupamientos más compactos. Se distingue claramente la ventaja que presenta la técnica GNG+Slim-Tree sobre su contraparte secuencial debido a que la búsqueda de la
neurona ganadora se hace mediante la estructura de datos y ya no secuencialmente.
1
ftp://ftp.ics.uci.edu/pub/machine-learning-databases/
Ingeniería Informática - UCSP
59
6.3. Primer grupo
Numero de calculos de distancia
1400000
1200000
GNG secuencial
GNG con Slim-Tree
1000000
800000
600000
400000
200000
8
16
24
Numero de unidades
32
40
(a) NCD por unidad en la red en el proceso de construcción utilizando la base de datos IRAS (103-d).
Numero de calculos de distancia
7000000
6000000
GNG secuencial
GNG con Slim-Tree
5000000
4000000
3000000
2000000
1000000
10
20
30 40 50 60 70
Numero de unidades
80
90
100
(b) NCD por unidad en la red en el proceso de construcción utilizando la base de datos DIGITS (16-d).
Numero de calculos de distancia
20000000
18000000
GNG secuencial
GNG con Slim-Tree
16000000
14000000
12000000
10000000
8000000
6000000
4000000
2000000
10
20
30 40 50 60 70
Numero de unidades
80
90 100
(c) NCD por unidad en la red en el proceso de construcción utilizando la base de datos SPAM (57-d).
Figura 6.1: Comparación del Número de Cálculos de Distancia acumulado de la red Growing
Neural Gas y la técnica MAM-SOM GNG+Slim-Tree a lo largo del proceso de entrenamiento
de la red en relación al número de agrupamientos generados.
Ingeniería Informática - UCSP
60
CAPÍTULO 6. Experimentos
6.3.2. Discusión en relación al número de patrones
Dentro del primer grupo de experimentos también se evaluó el desempeño de las dos
técnicas en relación al número de patrones presentados a las redes, registrando la variación del
Número de Cálculos de Distancia a lo largo del proceso de entrenamiento. Un bajo NCD indica
la capacidad de escalabilidad de la técnica, es decir, es posible aplicarla en bases de datos más
grandes y complejas. La Figura 6.2 muestra los resultados obtenidos en estos experimentos. Una
vez más la técnica propuesta presentó un desempeño notablemente mejor que al red neuronal
original al aplicarse en las tres bases de datos.
6.4. Segundo grupo
En el segundo grupo de experimentos se compara la red GNG esta vez con la técnica
MAM-SOM* Slim-Tree. Nuevamente se considera al NCD como medida de eficiencia en los
siguientes escenarios: considerando el número de patrones presentados a la red y considerando
el número de conexiones creadas por la técnica. En este grupo de experimentos no se hace una
comparación en relación al número de unidades creadas ya que ambas estructuras tendrán el
mismo tamaño: una unidad por patrón presentado.
Las bases de datos utilizadas en este grupo de experimentos fueron las mimas del grupo
anterior: COVERT, DIGITS y SPAM. Para GNG los parámetros de entrenamiento de la red
también permanecieron constantes, a excepción del parámetro λ que fue establecido en 1 para
obtener el mismo comportamiento en ambas técnicas, ya que en MAM-SOM* cada patrón es
asignado a una única neurona. Para MAM-SOM* se estableció N eighborhoodSize = 3.
6.4.1. Discusión en relación al número de conexiones
En la Figura 6.3 se observan los resultados obtenidos para el primer escenario propuesto:
NCD acumulado en relación al número de conexiones creadas por las redes. Se considerará
el número de conexiones creadas ya que éstas proporcionarán la información necesaria para
el descubrimiento de agrupamientos: a mayor número de conexiones, habrá más información
de distancias entre objetos y una mejor detección de agrupamientos y respuesta a consultas de
similitud. Entonces, es notable la mejora que representan las técnicas MAM-SOM* frente a los
modelos clásicos de redes neuronales.
6.4.2. Discusión en relación al número de patrones
Adicionalmente, y de manera similar al primer grupo de experimentos, se midió el desempeño de las dos técnicas en base al Número de Cálculos de Distancia acumulado en relación al
número de patrones presentados. Los resultados fueron los esperados: un drásticamente menor
Ingeniería Informática - UCSP
61
6.4. Segundo grupo
Numero de calculos de distancia
600000
GNG secuencial
GNG con Slim-Tree
500000
400000
300000
200000
100000
3000
6000
9000
12000
Numero de patrones presentados
15000
(a) NCD por patrón presentado en el proceso de construcción utilizando la base de datos IRAS (103-d).
Numero de calculos de distancia
5000000
GNG secuencial
GNG con Slim-Tree
4000000
3000000
2000000
1000000
10000
20000
30000
40000
Numero de patrones presentados
50000
(b) NCD por patrón presentado en el proceso de construcción utilizando la base de datos DIGITS (16-d).
Numero de calculos de distancia
10000000
GNG secuencial
GNG con Slim-Tree
8000000
6000000
4000000
2000000
20000
40000
60000
80000
Numero de patrones presentados
100000
(c) NCD por patrón presentado en el proceso de construcción utilizando la base de datos SPAM (57-d).
Figura 6.2: Comparación del Número de Cálculos de Distancia acumulado de la red Growing
Neural Gas y la técnica MAM-SOM GNG+Slim-Tree a lo largo del proceso de entrenamiento
de la red en relación al número de patrones presentados.
Ingeniería Informática - UCSP
62
CAPÍTULO 6. Experimentos
Numero de conexiones creadas
1200
GNG secuencial
MAM-SOM* Slim-Tree
1000
800
600
400
200
80
160
240
Numero de unidades
320
400
(a) NCD por conexión creada utilizando la base de datos
IRAS (103-d).
Numero de conexiones creadas
25000
GNG secuencial
MAM-SOM* Slim-Tree
20000
15000
10000
5000
1400
2800
4200
Numero de unidades
5600
7000
(b) NCD por conexión creada utilizando la base de datos
DIGITS (16-d).
Numero de conexiones creadas
18000
GNG secuencial
MAM-SOM* Slim-Tree
15000
12000
9000
6000
3000
800
1600
2400
Numero de unidades
3200
4000
(c) NCD por conexión creada utilizando la base de datos
SPAM (57-d).
Figura 6.3: Comparación del Número de Cálculos de Distancia acumulado de la red Growing
Neural Gas y la técnica MAM-SOM* Slim-Tree en relación al número de conexiones creadas.
Ingeniería Informática - UCSP
63
6.5. Tercer grupo
NCD de la técnica MAM-SOM* Slim-Tree, indicador no sólo de su eficiencia si no de la capacidad de ser aplicada a bases de datos mucho más grandes y complejas. La Figura 6.4 muestra los
resultados obtenidos en estos experimentos.
6.5. Tercer grupo
Por último, el tercer grupo de experimentos hace una comparación de la eficiencia de las
técnicas considerando el número de patrones presentados usando las bases de datos COVERT,
IMAGES y NURSERY. Las técnicas utilizadas son GNG, MAM-SOM Híbrida GNG+SlimTree, MAM-SOM* Slim-Tree y MAM-SOM* Omni-Secuencial.
Para obtener una comparación más precisa entre las técnicas se estableció el valor de λ
en 1 para GNG y MAM-SOM Híbrida. De este modo se obtiene el mismo comportamiento en
todas las técnicas, ya que en MAM-SOM* cada patrón es asignado a una única neurona.
Las Figuras 6.5, 6.6 y 6.7 muestran los resultados obtenidos en términos del NCD acumulado de cada técnica. Es posible notar que al inicio del proceso la técnica MAM-SOM*
implementada con Omni-Secuencial posee un alto NCD debido al costo de construcción de la
matriz de Omni-coordenadas. Como se puede observar, en todos los casos la red GNG obtuvo
el mayor número NCD.
El Cuadro 6.1 registra los resultados obtenidos en el conjunto de datos COVERT, mostrando la eficiencia de hasta 85,46 % obtenida por las técnicas MAM-SOM Híbrida y MAM-SOM*
en comparación a la implementación secuencial de GNG.
Cuadro 6.1: Comparación de resultados para la base de datos COVERT (54-d)
Técnica
GNG secuencial
GNG+Slim-Tree
MAM-SOM* Slim-Tree
MAM-SOM* Omni-Secuencial
NCD Acumulado
1600159995
298019806
232737830
653171081
% ganado
81,38 %
85,46 %
59,18 %
El Cuadro 6.2 muestra los resultados obtenidos en el conjunto de datos IMAGES. Nuevamente la técnica GNG obtuvo el NCD más elevado. También puede observarse que las técnicas
MAM-SOM* mostraron una gran ventaja sobre ambas implementaciones de GNG con una
eficiencia mayor al 50 % con respecto a GNG secuencial y mayor al 30 % con respecto a la
implementación con Slim-Tree. Puede entonces inferirse el buen rendimiento de estas técnicas
en altas dimensiones.
El cuadro 6.3 muestra los resultados obtenidos en el conjunto de datos NURSERY. La
eficiencia de las técnicas MAM-SOM es significativamente mejor que la técnica GNG, incluso
en bajas dimensiones.
Ingeniería Informática - UCSP
64
CAPÍTULO 6. Experimentos
Numero de calculos de distancia
180000
160000
GNG secuencial
MAM-SOM* Slim-Tree
140000
120000
100000
80000
60000
40000
20000
80
160
240
Numero de unidades
320
400
(a) NCD por patrón presentado utilizando la base de
datos IRAS (103-d).
Numero de calculos de distancia
50000000
45000000
GNG secuencial
MAM-SOM* Slim-Tree
40000000
35000000
30000000
25000000
20000000
15000000
10000000
5000000
1400
2800
4200
Numero de unidades
5600
7000
(b) NCD por patrón presentado utilizando la base de
datos DIGITS (16-d).
Numero de calculos de distancia
18000000
16000000
GNG secuencial
MAM-SOM* Slim-Tree
14000000
12000000
10000000
8000000
6000000
4000000
2000000
800
1600
2400
Numero de unidades
3200
4000
(c) NCD por patrón presentado utilizando la base de
datos SPAM (57-d).
Figura 6.4: Comparación del Número de Cálculos de Distancia acumulado de la red Growing
Neural Gas y la técnica MAM-SOM* Slim-Tree en relación al número de patrones presentados.
Ingeniería Informática - UCSP
65
6.5. Tercer grupo
Numero de calculos de distancia
500000000
400000000
GNG secuencial
GNG con Slim-Tree
MAM-SOM* Slim-Tree
MAM-SOM* Omni-Secuencial
300000000
200000000
100000000
10000
20000
30000
40000
Numero de patrones
50000
Figura 6.5: Comparación del Número de Cálculos de Distancia acumulado por patrón presentado usando la base de datos COVERT (54-d)
GNG secuencial
GNG con Slim-Tree
MAM-SOM* Slim-Tree
MAM-SOM* Omni-Secuencial
Numero de calculos de distancia
30000000
24000000
18000000
12000000
6000000
1000
2000
3000
4000
Numero de patrones
5000
6000
Figura 6.6: Comparación del Número de Cálculos de Distancia acumulado por patrón presentado usando la base de datos IMAGES (1215-d)
Numero de calculos de distancia
34000000
GNG secuencial
GNG con Slim-Tree
MAM-SOM* Slim-Tree
MAM-SOM* Omni-Secuencial
26000000
18000000
10000000
2000000
1500 3000 4500 6000 7500 9000 10500 12000
Numero de patrones
Figura 6.7: Comparación del Número de Cálculos de Distancia acumulado por patrón presentado usando la base de datos NURSERY (8-d)
En el tercer grupo de experimentos, el rendimiento de la técnica MAM-SOM* OmniSecuencial se ve afectada por el cálculo de las omni-coordenadas y principalmente por la cardiIngeniería Informática - UCSP
66
CAPÍTULO 6. Experimentos
Cuadro 6.2: Comparación de resultados para la base de datos IMAGES (1215-d)
Técnica
GNG secuencial
GNG+Slim-Tree
MAM-SOM* Slim-Tree
MAM-SOM* Omni-Secuencial
NCD Acumulado
36023995
26600212
14682611
17717785
% ganado
26,16 %
59,24 %
50,82 %
Cuadro 6.3: Comparación de resultados para la base de datos NURSERY (8-d)
Técnica
GNG secuencial
GNG+Slim-Tree
MAM-SOM* Slim-Tree
MAM-SOM* Omni-Secuencial
NCD Acumulado
144047995
15165159
22266439
72522291
% ganado
89,47 %
84,54 %
49,65 %
nalidad del conjunto de focos. Como se vio en el Capítulo 4, para optimizar el rendimiento de
esta técnica se debe seleccionar un número adecuado de focos en relación a la dimensionalidad
de los datos. En todos los experimentos se trabajo con una cardinalidad igual al doble de la
dimensión del espacio.
6.6. Experimentos adicionales
6.6.1. Discusión con respecto a los agrupamientos
La poda gradual de conexiones es el proceso propuesto para el hallazgo de agrupamientos
en las técnicas MAM-SOM*. Debido a que en estas técnicas las conexiones almacenan la distancia entre objetos, los agrupamientos encontrados estarán basados en un criterio de similitud,
formando agrupamientos compactos y aislados.
La Figura 6.8 explica claramente el proceso de agrupamiento para un conjunto de puntos
en 2 dimensiones. Como se puede observar, el decremento del parámetro τ permite encontrar
agrupamientos cada vez más pequeños y compactos.
6.6.2. Discusión con respecto al tiempo consumido
Para reforzar la hipótesis, se hicieron pruebas adicionales en relación al tiempo consumido
al aplicar las técnicas sobre el conjunto de datos SPAM. Los parámetros de la red permanecieron
constantes a excepción del parámetro λ y la edad máxima de conexión, que fueron cambiados a
Ingeniería Informática - UCSP
67
6.6. Experimentos adicionales
(a) Estructura inicial antes de aplicar la poda.
(b) Poda de conexiones con τ = 10.
(c) Poda de conexiones con τ = 5.
(d) Poda de conexiones con τ = 2,5.
Figura 6.8: Reducción gradual del parámetro τ para encontrar agrupamientos en un conjunto
datos sintéticos de 1000 puntos en dos dimensiones. N eighborhoodSize = 3.
Ingeniería Informática - UCSP
68
CAPÍTULO 6. Experimentos
1500 y 1600 respectivamente para comprobar el impacto del incremento del parámetro λ en el
proceso de construcción de la red como se discutió en la Sección 5.2 del capítulo anterior.
La técnica Growing Neural Gas tardó 325.8 segundos en construir una red con 100
unidades, lo cual es considerablemente más costos que la técnica GNG+Slim-tree que
demoró 205.6 segundos para la construcción de la misma red también con 100 unidades.
Entonces, la técnica MAM-SOM Híbrida realizó la misma tarea en un tiempo 37 % menor
que GNG.
Por otro lado, la técnica MAM-SOM* Slim-Tree aplicada en el mismo conjunto de datos
demoró sólo 95.2 segundos para la construcción de una estructura de 4601 unidades. El
tiempo requerido para obtener una estructura de las mismas dimensiones por una red
GNG con el parámetro λ = 1 fue 4.5 veces mayor.
Ingeniería Informática - UCSP
69
Capítulo 7
Conclusiones y Trabajos Futuros
7.1. Conclusiones
Las características de organización de datos propia de los métodos de acceso y las propiedades de generalización y aprendizaje de las redes neuronales, hacen de las familias MAMSOM técnicas altamente eficientes en tareas de clasificación y recuperación de información.
Para la familia de técnicas MAM-SOM híbridas existen varias combinaciones posibles de
redes neuronales del tipo Self-Organizing Maps y Métodos de Acceso Métrico. Por lo tanto, es
posible aprovechar las características propias de dos estructuras al mismo tiempo, haciendo de
esta familia una herramienta versátil por su aplicación en casi cualquier dominio de datos. El
resultado obtenido de estas técnicas en tareas de agrupamiento es cualitativamente igual al de
la red neuronal utilizada independientemente.
La familia MAM-SOM* provee de una representación exacta de los datos con un costo
computacional mucho menor a las redes neuronales SOM sin sacrificar rendimiento ni generalización. En este caso es posible trabajar con una gran variedad de métodos de acceso buscando
seleccionar al mejor método para el dominio de datos. Las características de los métodos de
acceso permanecen inmutables, pero gracias a la alta conectividad existente en estas técnicas,
se agregan más beneficios a los ya heredados.
Las tareas de agrupamiento de datos utilizando técnicas MAM-SOM* se dan estrictamente en base al concepto de similitud. Debido a que las conexiones almacenan las distancias
entre patrones, la información de similitud está siempre disponible, información útil tanto para
la detección de grupos como para la rápida recuperación de información en consultas de proximidad.
Las técnicas MAM-SOM ofrecen una estructura que acelera el proceso de entrenamiento
de las redes SOM, acelerando también la construcción del clasificador en tareas de agrupamiento y brindando una estructura con la capacidad de responder a consultas de similitud de forma
más eficiente.
70
CAPÍTULO 7. Conclusiones y Trabajos Futuros
Gracias a las técnicas MAM-SOM, es ahora posible trabajar con grandes conjuntos de
datos sin perjudicarse con altos tiempos y costos de procesamiento, incluso trabajando en altas
dimensiones.
7.2. Contribuciones
En esta investigación se propuso el uso de las técnicas MAM-SOM para tareas de agrupamiento de datos. Al demostrarse la eficiencia de estas técnicas, constituyen una excelente
herramienta para tareas de agrupamiento de grandes conjuntos de datos.
Debido a que las redes SOM vienen siendo ampliamente utilizadas en tareas de agrupamiento de datos, el uso de las técnicas MAM-SOM beneficiará a comunidades científicas
como las de inteligencia artificial, reconocimiento de patrones, minería de datos y recuperación
de información.
7.3. Problemas encontrados
Al trabajar con dos estructuras relacionadas (la red neuronal y el método de acceso), la
complejidad de la implementación es mayor a el uso independiente de las mismas, debiéndose
considerar en todo momento la correspondencia de datos existente entre ambas estructuras.
Se debe considerar que para la mayoría de técnicas existe un proceso de afinamiento
previo a la aplicación para optimizar su rendimiento.
7.4. Recomendaciones
El conocimiento que se tenga sobre el dominio de datos es un factor influyente tanto en la
determinación de la técnica de agrupamiento, como en la representación de patrones, selección
de métricas y en especial en la evaluación de resultados.
Es recomendable realizar un análisis previo a la aplicación del proceso de agrupamiento
para determinar la viabilidad y/o beneficios que se pueden obtener.
7.5. Trabajo futuro
Esta investigación puede servir como referencia para la creación de nuevas variantes de
las familias MAM-SOM para su aplicación en tareas de agrupamiento de grandes conjuntos de
datos.
Ingeniería Informática - UCSP
71
7.5. Trabajo futuro
Debido a los beneficios de las técnicas MAM-SOM*, se plantean aplicar nuevas políticas
para el hallazgo de agrupamientos, así como realizar una evaluación cualitativa de los resultados.
Para un trabajo futuro se planea aplicar técnicas MAM-SOM en un problema específico
de agrupamiento de datos.
Ingeniería Informática - UCSP
72
Bibliografía
[Alahakoon et al., 1998] Alahakoon, D., Halgamuge, S. K., and Srinivasan, B. (1998). A structure adapting feature map for optimal cluster representation. In International Conference on
Neural Information Processing ICONIP98, pages 809–812.
[Arifin and Asano, 2006] Arifin, A. Z. and Asano, A. (2006). Image segmentation by histogram
thresholding using hierarchical cluster analysis. Pattern Recognition Letters, 27(13):1515–
1521.
[Baeza-Yates et al., 1994] Baeza-Yates, R. A., Cunto, W., Manber, U., and Wu, S. (1994). Proximity matching using fixed-queries trees. In Crochemore, M. and Gusfield, D., editors, Proceedings of the 5th Annual Symposium on Combinatorial Pattern Matching, pages 198–212,
Asilomar, CA. Springer-Verlag, Berlin.
[Bedregal and Cuadros-Vargas, 2006] Bedregal, C. and Cuadros-Vargas, E. (2006). Using large
databases and self-organizing maps without tears. In Proceedings of the International Joint
Conference on Neural Networks (IJCNN06). IEEE.
[Bentley, 1979] Bentley, J. L. (1979). Multidimensional Binary Search Trees in Database Applications. IEEE Transactions on Software Engineering, 5(4):333–340.
[Bishop, 1995] Bishop, C. M. (1995). Neural networks for pattern recognition. Oxford.
[Blackmore and Miikkulainen, 1993] Blackmore, J. and Miikkulainen, R. (1993). Incremental
grid growing: Encoding high-dimensional structure into a two-dimensional feature map. In
Proceedings of the International Conference on Neural Networks ICNN93,, volume I, pages
450–455, Piscataway, NJ. IEEE Service Center.
[Bozkaya and Ozsoyoglu, 1997] Bozkaya, T. and Ozsoyoglu, M. (1997). Distance-based indexing for high-dimensional metric spaces. In SIGMOD ’97: Proceedings of the 1997 ACM
SIGMOD International Conference on Management of data, pages 357–368, New York, NY,
USA. ACM Press.
[Breuel, 2001] Breuel, T. M. (2001). Classification by probabilistic clustering. In ICASSP ’01:
Proceedings of the Acoustics, Speech, and Signal Processing, 200. on IEEE International
Conference, pages 1333–1336, Washington, DC, USA. IEEE Computer Society.
[Brin, 1995] Brin, S. (1995). Near neighbor search in large metric spaces. In The VLDB Journal, pages 574–584.
73
BIBLIOGRAFÍA
[Burkhard and Keller, 1973] Burkhard, W. A. and Keller, R. M. (1973). Some approaches to
best-match file searching. Commun. ACM, 16(4):230–236.
[Caetano Traina et al., 2000] Caetano Traina, J., Traina, A. J. M., Seeger, B., and Faloutsos,
C. (2000). Slim-trees: High performance metric trees minimizing overlap between nodes.
In Proceedings of the 7th International Conference on Extending Database Technology
EDBT00, pages 51–65, London, UK. Springer-Verlag.
[Carpenter and Grossberg, 1988] Carpenter, G. A. and Grossberg, S. (1988). The art of adaptive pattern recognition by a self-organizing neural network. Computer, 21(3):77–88.
[Chávez et al., 2001] Chávez, E., Navarro, G., Baeza-Yates, R., and Marroquín, J. (2001).
Proximity searching in metric spaces. ACM Computing Surveys, 33(3):273–321.
[Ciaccia et al., 1997] Ciaccia, P., Patella, M., and Zezula, P. (1997). M-tree: An efficient access
method for similarity search in metric spaces. In The VLDB Journal, pages 426–435.
[Clarkson, 2006] Clarkson, K. L. (2006). Nearest-neighbor searching and metric space dimensions. In Shakhnarovich, G., Darrell, T., and Indyk, P., editors, Nearest-Neighbor Methods
for Learning and Vision: Theory and Practice, pages 15–59. MIT Press.
[Cuadros-Vargas, 2004] Cuadros-Vargas, E. (2004). Recuperação de informação por similaridade utilizando técnicas inteligentes. PhD thesis, Department of Computer Science - University of Sao Paulo. in portuguese.
[Cuadros-Vargas and Romero, 2005] Cuadros-Vargas, E. and Romero, R. A. F. (2005). Introduction to the SAM-SOM* and MAM-SOM* families. In Proceedings of the International
Joint Conference on Neural Networks (IJCNN05). IEEE.
[Cuadros-Vargas and Romero, 2002] Cuadros-Vargas, E. and Romero, R. F. (2002). The SAMSOM Family: Incorporating Spatial Access Methods into Constructive Self-Organizing
Maps. In Proceedings of the International Joint Conference on Neural Networks IJCNN02,
pages 1172–1177, Hawaii, HI. IEEE Press.
[Dittenbach et al., 2000] Dittenbach, M., Merkl, D., and Rauber, A. (2000). The Growing Hierarchical Self-Organizing Map. In Amari, S., Giles, C. L., Gori, M., and Puri, V., editors,
Proc of the International Joint Conference on Neural Networks (IJCNN 2000), volume VI,
pages 15 – 19, Como, Italy. IEEE Computer Society.
[Dohnal et al., 2003] Dohnal, V., Gennaro, C., Savino, P., and Zezula, P. (2003). D-index: Distance searching index for metric data sets. Multimedia Tools Appl., 21(1):9–33.
[Dubes, 1993] Dubes, R. C. (1993). Cluster analysis and related issues. pages 3–32.
[Duda et al., 2000] Duda, R. O., Hart, P. E., and Stork, D. G. (2000). Pattern Classification.
Wiley-Interscience Publication.
[Filho et al., 2001] Filho, R. F. S., Traina, A. J. M., Jr., C. T., and Faloutsos, C. (2001). Similarity search without tears: The OMNI family of all-purpose access methods. In International
Conference on Data Engineering ICDE01, pages 623–630.
Ingeniería Informática - UCSP
74
BIBLIOGRAFÍA
[Fritzke, 1995] Fritzke, B. (1995). A growing neural gas network learns topologies. In Tesauro,
G., Touretzky, D. S., and Leen, T. K., editors, Advances in Neural Information Processing
Systems 7, pages 625–632. MIT Press, Cambridge MA.
[Grossberg, 1972] Grossberg, S. (1972). Neural expectation: Cerebellar and retinal analogs of
cells fired by learnable or unlearned pattern classes. kyb, 10:49–57.
[Guttman, 1984] Guttman, A. (1984). R-Trees: A dynamic index structure for spatial searching. In Yormark, B., editor, Proceedings of Annual Meeting, Boston, Massachusetts SIGMOD84, June 18-21, 1984, pages 47–57. ACM Press.
[Hand et al., 2001] Hand, D. J., Smyth, P., and Mannila, H. (2001). Principles of data mining.
MIT Press, Cambridge, MA, USA.
[Haykin, 1994] Haykin, S. (1994). Neural networks: a comprehensive foundation. Prentice
Hall.
[Hjaltason and Samet, 2003] Hjaltason, G. R. and Samet, H. (2003). Index-driven similarity
search in metric spaces. ACM Trans. Database Syst., 28(4):517–580.
[Jain and Dubes, 1988] Jain, A. K. and Dubes, R. C. (1988). Algorithms for clustering data.
Prentice-Hall, Inc., Upper Saddle River, NJ, USA.
[Jain et al., 2000] Jain, A. K., Duin, R. P. W., and Mao, J. (2000). Statistical pattern recognition:
A review. IEEE Trans. Pattern Anal. Mach. Intell., 22(1):4–37.
[Jain et al., 1996] Jain, A. K., Mao, J., and Mohiuddin, K. M. (1996). Artificial neural networks: A tutorial. IEEE Computer, 29(3):31–44.
[Jain et al., 1999] Jain, A. K., Murty, M.Ñ., and Flynn, P. J. (1999). Data clustering: a review.
ACM Computing Surveys, 31(3):264–323.
[Kohonen, 1982] Kohonen, T. (1982). Self-organized formation of topologically correct feature
maps. Biological Cybernetics, 43:59–69.
[Kohonen, 1988] Kohonen, T. (1988). Self-organized formation of topologically correct feature
maps. pages 509–521.
[Kohonen, 1998] Kohonen, T. (1998). Self-organization of very large document collections:
State of the art. In Niklasson, L., Bodén, M., and Ziemke, T., editors, ICANN, volume 1,
pages 65–74, London. Springer.
[Kruskal, 1956] Kruskal, J. B. (1956). On the shortest spanning subtree of a graph and the
traveling salesman problem. Proceedings of the American Mathematical Society, 7:48–50.
[Lagus et al., 1999] Lagus, K., Honkela, T., Kaski, S., and Kohonen, T. (1999). Websom for
textual data mining. Artificial Intelligence Rev., 13(5-6):345–364.
[Lowe, 2001] Lowe, D. (2001). Local feature view clustering for 3d object recognition.
Ingeniería Informática - UCSP
75
BIBLIOGRAFÍA
[Marcos R. Viera and Traina, 2004] Marcos R. Viera, Caetano Traina Fr., F. J. T. C. and Traina,
A. J. (2004). DBM-tree: A dynamic metric access method sensitive to local density data.
Brazilian Symposium on Databases.
[Martinetz and Schulten, 1994] Martinetz, T. and Schulten, K. (1994). Topology representing
networks. Neural Networks, 7(3):507–522.
[Micó L., 1994] Micó L., Oncina J., V. E. (1994). A new version of the nearest-neighbour
approximating and eliminating search algorithm (AESA) with linear preprocessing time and
memory requirements. Pattern Recognition Letters, 15:9–17.
[Navarro, 2002] Navarro, G. (2002). Searching in metric spaces by spatial approximation. The
VLDB Journal, 11(1):28–46.
[Ocsa et al., 2007] Ocsa, A., Bedregal, C., and Cuadros-Vargas, E. (2007). DB-GNG: A constructive self-organizing map based on density. In Proceedings of the International Joint
Conference on Neural Networks (IJCNN07). IEEE.
[Prudent and Ennaji, 2005] Prudent, Y. and Ennaji, A. (2005). A k nearest classifier design.
ELCVIA, 5(2):58–71.
[Rueda and Qin, 2005] Rueda, L. and Qin, L. (2005). An unsupervised learning scheme for
dna microarray image spot detection.
[Ruiz, 1986] Ruiz, E. V. (1986). An algorithm for finding nearest neighbours in (approximately) constant average time. Pattern Recognition Letters, 4(3):145–157.
[Tombros et al., 2002] Tombros, A., Villa, R., and Rijsbergen, C. J. V. (2002). The effectiveness of query-specific hierarchic clustering in information retrieval. Inf. Process. Manage.,
38(4):559–582.
[Uhlmann, 1991] Uhlmann, J. K. (1991). Satisfying general proximity/similarity queries with
metric trees. Inf. Process. Lett., 40(4):175–179.
[Vesanto and Alhoniemi, 2000] Vesanto, J. and Alhoniemi, E. (2000). Clustering of the selforganizing map. IEEE-NN, 11(3):586.
[Waibel et al., 1990] Waibel, A., Hanazawa, T., Hinton, G., Shikano, K., and Lang, K. J. (1990).
Phoneme recognition using time-delay neural networks. pages 393–404.
[Watanabe, 1985] Watanabe, S. (1985). Pattern recognition: human and mechanical. John
Wiley & Sons, Inc., New York, NY, USA.
[White, 1992] White, R. H. (1992). Competitive hebbian learning: algorithm and demonstrations. Neural Networks, 5(2):261–275.
[Xu et al., 2006] Xu, L., Qian, B., Cheng, W., and Tang, Z. (2006). Research on automatic
speaker recognition based on speech clustering. In ICICIC ’06: Proceedings of the First
International Conference on Innovative Computing, Information and Control, pages 105–
108, Washington, DC, USA. IEEE Computer Society.
Ingeniería Informática - UCSP
76
BIBLIOGRAFÍA
[Zezula et al., 2006] Zezula, P., Amato, G., Dohnal, V., and Batko, M. (2006). Similarity Search
- The Metric Space Approach, volume 32. Springer.
Ingeniería Informática - UCSP
77
Descargar