Download - Curso 2006 Sesion 1 Kohonen
Mapas Autoorganizados o Mapas de Kohonen
Miguel BARRETOInvestigador
MINISTERIO DE AGRICULTURA Y
DESARROLLO RURAL
asocaña
Plan
Nuestro proyectoDescripciónVisualización inteligente
Mecanismos de Aprendizajesupervisadono supervisado
La inspiración biológicaCartas topológicasCartas retinotópicasInformaciones MultidimensionalesAutoorganización
Mapas autoorganizadosArquitectura SOMAlgoritmo de aprendizajeEjemplo práctico
Nuestro proyecto
Proyecto: Agricultura de precisión y la construcción de modelos campo-cultivo para especies de frutas tropicales.
Objetivo general: Contribuir a la competitividad de pequeños cultivadores de frutales nativos en la región tropical de América Latina y al sector azucarero con el desarrollo e integración de técnicas computacionales bioinspiradas e información y procedimientos agrobiológicos.
Investigación COCH (“triple I”)
Incremental modeling
Integration ofheterogeneous data
Intelligent visualization
4th dimension: model validation (usefulness & biological response) model exploitation
Nuestro proyecto
Visualización Inteligente y mapas autoorganizados
Los mapas auto organizados son una herramienta para la visualización de datos en altas dimensiones.
Básicamente SOM produce un grafico de similitud de los datos de entrada.
Convierte las relaciones estadísticas no lineales entre datos de alta dimensionalidad en simples relaciones geométricas en puntos de una imagen en una visualización de baja dimensionalidad
En contraste con los métodos clásicos, los SOM proporcionan una fácil visualización, tomando pocas suposiciones y restricciones además es capaz de manejar grandes grupos de datos y aislar patrones y estructuras de los datos.
Por estas razones los mapas autoorganizados han empezado a ser de gran interés para en exploración y análisis de datos, data mining y ahora también en procesos agro-ecológicos.
Nuestro proyecto
Mecanismos de Aprendizaje
Aprendizaje supervisado
Se le suministra a la red un conjunto de datos de entrada y la respuesta esperada.
Se comparan los datos obtenidos por el sistema con los datos de entrada aportados, con la respuesta esperada y se modifican los pesos en función del error obtenido.
El conjunto de datos utilizados en el proceso de aprendizaje se denomina conjunto de entrenamiento (training set).
Si los vectores de entrada utilizados no contienen la información idónea la red puede llegar a no aprender.
Mecanismos de aprendizaje
Aprendizaje no supervisado
Sólo se aplica a la red neuronal los datos de entrada, sin indicarle la salida esperada.
La red neuronal es capaz de reconocer algún tipo de estructura en el conjunto de datos de entrada (normalmente redundancia de datos) y de esta forma se produce auto-aprendizaje.
Durante el proceso de aprendizaje la red autoorganizada debe descubrir por sí misma rasgos comunes, regularidades, correlaciones o categorías en los datos de entrada, incorporarlos a su estructura interna de conexiones.
Se dice, por tanto, que las neuronas deben auto-organizarse en función de los estímulos (datos) procedentes del exterior.
Mecanismos de aprendizaje
La inspiración biológica
W. Penfield
Los experimentos de Penfield
La inspiración biológica
Cartas topológicas
La inspiración biológica
Humunculus, el hombrecito dentro del cerebro
La inspiración biológica
Humunculus, el hombrecito dentro del cerebro
La inspiración biológica
Cartas retinotópicas
Hubel & Wiesel
La inspiración biológica
Cartas retinotópicas
La inspiración biológica
Informaciones Multidimensionales
La inspiración biológica
Sinestesia
La inspiración biológica
Sinestesia
La inspiración biológica
Proceso biológico
Si algunas regiones del espacio de entrada son mas usadas que otras y reciben una rica variedad de estímulos estas se mapearan mejor. (ej. Las manos de un pianista o un cirujano)
La inspiración biológica
Autoorganización
Cada nodo de la red tiene conexiones exicitatorias laterales con su vecinos mas próximos pero conexiones laterales inhibitorias con sus vecinos mas distantes.
En el mapa topográfico cortical estas regiones crecerán , mientras que las regiones que no son usadas se harán mas pequeñas.
La inspiración biológica
El “sombrero mejicano”
Respuesta Positiva(Excitación)
Respuesta Negativa(Inhibición)
+
-
La inspiración biológica
El “sombrero mejicano”
La inspiración biológica
Tomando la inspiración biológica
Red de Neuronas
Proceso de aprendizajepor competición
Bio
ins
pir
ado
Bio
lóg
ico
Ejemplos
Estímulos del espacio de entrada
La inspiración biológica
Mapas Autoorganizados
Al final del aprendizajeneuronas con características similares se ubican cerca unas de otras.
Mapas autoorganizados
Mapas autoorganizados
Mapas de Kohonen
Self Organizing Maps (SOM)
“Generación de una taxonomía de datos sin conocimientos previos”
Bondades de los mapas autoorganizados
Clustering: Actuar como clasificadores, encontrando patrones en los datos de entrada y clasificándolos en grupos según estos patrones.
Reducción de dimensión: Representar datos multidimensionales en espacios de mucha menor dimensión, normalmente una o dos dimensiones, preservando la topología de la entrada.
Esto es muy útil cuando se trabaja con espacios multidimensionales (más de tres dimensiones) que el ser humano no es capaz de representar, como por ejemplo en problemas agro-ecológicos en los que intervienen numerosas variables como temperatura, precipitación, humedad relativa, etc.
Pre-tratamiento de datos: SOM trabaja con ausencia de datos
Análisis y comprensión de datos: SOM permite una presentación visual sobre las relaciones entre variables
Mapas autoorganizados
Creando el modelo bioinspiradoInspirándose en estos comportamientos biológicos se desarrollaron los mapas autoorganizados.
Los Mapas Autoorganizados o SOM (Self-Organizing Maps) fueron creados por Teuvo Kohonen entre los años 1982 y 1990
La idea se basa en un funcionamiento biológico de aprendizaje por competición, de forma que cuando un conjunto de datos de entrada se presenta a la red, los pesos de las neuronas se adaptan de forma que la clasificación presente en el espacio de entrada se preserva en la salida.
Mapas autoorganizados
Arquitectura SOM
Capa de entrada Una por cada variable de entrada
Capa de salida y competiciónNo existe capa oculta
…n
…
…
n
m
Mapas autoorganizados
Un ejemplo de la arquitectura SOM
Capa de entrada de tres dimensiones (x,y,z)
Capa de salida y competición de 9 neuronas
Mapas autoorganizados
Capa de entrada
Tabla con ejemplos
Estímulos del espacio de entrada.
Una neurona por cada dimensión, en este ejemplo 3.
x y z
R3
Mapas autoorganizados/ Un ejemplo de la arquitectura SOM
x y z
R3
Cada neurona de la capa de entrada esta conectada a todas las neuronas de la capa de salida.
Capa de entrada
Mapas autoorganizados/ Un ejemplo de la arquitectura SOM
Capa de entrada
x y z
R3
18.91 22.13 27.40
Cada ejemplo es presentado a las neuronas de la capa de salida.
Así se buscan las neuronas mas parecidas al vector de entrada mediante un proceso de competición.
Finalmente se crean grupos con características similares.
Mapas autoorganizados/ Un ejemplo de la arquitectura SOM
Capa de salida y competición
Mapas autoorganizados/ Un ejemplo de la arquitectura SOM
Entre las neuronas de la capa de salida, puede decirse que existen conexiones laterales de excitación e inhibición implícitas, pues aunque no estén conectadas, cada una de estas neuronas va a tener cierta influencia sobre sus vecinas.
Capa de salida y competición
01
2
01
2
Mapas autoorganizados/ Un ejemplo de la arquitectura SOM
La influencia sobre vecinos se consigue a través de un proceso de competición entre las neuronas y de la aplicación de una función denominada de vecindad.
Cuadrada
Hexagonal
Resumen
Mapas autoorganizados/ Un ejemplo de la arquitectura SOM
Algoritmo de aprendizaje
Mapas autoorganizados/ Algoritmo de aprendizaje
1.Determinar la topología del mapa
Mapas autoorganizados/ Algoritmo de aprendizaje
2. Determinar el tamaño del mapa
Mapas autoorganizados/ Algoritmo de aprendizaje
3. Escoger el tipo de vecindario
Mapas autoorganizados/ Algoritmo de aprendizaje
0
1
2
01
2
4. Inicializar los pesos de las neuronas
x y
R2
Mapas autoorganizados/ Algoritmo de aprendizaje
Concepto de peso
w2
w1
w
w1w2
w
w2
w1
w3
ww1w2w3
w
w1w2w3…wn
w
Dos Dimensiones
Dos Dimensiones
Dos Dimensiones
Capa de Salida
Dos Dimensiones(x,y)
Tres Dimensiones(x,y,z)
n Dimensiones(x,y,z, …, n)
Capa de Entrada
Mapas autoorganizados/ Algoritmo de aprendizaje
Inicializar los pesos de las neuronas
x y
R2
t = 0
Mapas autoorganizados/ Algoritmo de aprendizaje
Inicializar los pesos de las neuronas
x y
R2
t = 0
Mapas autoorganizados/ Algoritmo de aprendizaje
0.2 0.3
Inicializar los pesos de las neuronas
t = 0
0.2 0.3 0.4 0.8 0.9 0.3 0.5 0.7 0.7 0.3 0.6 0.1
0.6 0.7 0.2 0.7 0.9 0.4 0.6 0.7 0.5 0.3 0.2 0.3
0.4 0.7 0.9 0.2 0.1 0.3 0.8 0.3 0.5 0.8 0.3 0.3
0.2 0.6 0.6 0.6 0.7 0.4 0.5 0.5 0.5 0.6 0.6 0.3
0.2 0.7 0.7 0.8 0.7 0.8 0.8 0.6 0.6 0.7 0.2 0.3
0.2 0.7 0.2 0.3 0.9 0.3 0.9 0.7 0.2 0.3 0.7 0.8
Mapas autoorganizados/ Algoritmo de aprendizaje
Inicializar los pesos de las neuronas
x y
R2
t = 0
0.2 0.3
0.4 0.8
0.9 0.3
0.5 0.7
0.7 0.3
0.6 0.1
0.6 0.7
0.2 0.7
0.9 0.4
0.6 0.7
0.5 0.3
0.2 0.3
0.4 0.7
0.9 0.2
0.1 0.3
0.8 0.3
0.5 0.8
0.3 0.3
0.2 0.6
0.6 0.6
0.7 0.4
0.5 0.5
0.5 0.6
0.6 0.3
0.2 0.7
0.7 0.8
0.7 0.8
0.8 0.6
0.6 0.7
0.2 0.3
0.2 0.7
0.2 0.3
0.9 0.3
0.9 0.7
0.2 0.3
0.7 0.8
Mapas autoorganizados/ Algoritmo de aprendizaje
Inicializar los pesos de las neuronas
x y
R2
0.2 0.3
0.4 0.8
0.9 0.3
0.5 0.7
0.7 0.3
0.6 0.1
0.6 0.7
0.2 0.7
0.9 0.4
0.6 0.7
0.5 0.3
0.2 0.3
0.4 0.7
0.9 0.2
0.1 0.3
0.8 0.3
0.5 0.8
0.3 0.3
0.2 0.6
0.6 0.6
0.7 0.4
0.5 0.5
0.5 0.6
0.6 0.3
0.2 0.7
0.7 0.8
0.7 0.8
0.8 0.6
0.6 0.7
0.2 0.3
0.2 0.7
0.2 0.3
0.9 0.3
0.9 0.7
0.2 0.3
0.7 0.8
Mapas autoorganizados/ Algoritmo de aprendizaje
Inicializar los pesos de las neuronas
x y
R2
0.2 0.3
0.4 0.8
0.9 0.3
0.5 0.7
0.7 0.3
0.6 0.1
0.6 0.7
0.2 0.7
0.9 0.4
0.6 0.7
0.5 0.3
0.2 0.3
0.4 0.7
0.9 0.2
0.1 0.3
0.8 0.3
0.5 0.8
0.3 0.3
0.2 0.6
0.6 0.6
0.7 0.4
0.5 0.5
0.5 0.6
0.6 0.3
0.2 0.7
0.7 0.8
0.7 0.8
0.8 0.6
0.6 0.7
0.2 0.3
0.2 0.7
0.2 0.3
0.9 0.3
0.9 0.7
0.2 0.3
0.7 0.8
Mapas autoorganizados/ Algoritmo de aprendizaje
1
w2
w10 1
5. Presentar una entrada a la red
x y
R2
0.2 0.3
0.4 0.8
0.9 0.3
0.5 0.7
0.7 0.3
0.6 0.1
0.6 0.7
0.2 0.7
0.9 0.4
0.6 0.7
0.5 0.3
0.2 0.3
0.4 0.7
0.9 0.2
0.1 0.3
0.8 0.3
0.5 0.8
0.3 0.3
0.2 0.6
0.6 0.6
0.7 0.4
0.5 0.5
0.5 0.6
0.6 0.3
0.2 0.7
0.7 0.8
0.7 0.8
0.8 0.6
0.6 0.7
0.2 0.3
0.2 0.7
0.2 0.3
0.9 0.3
0.9 0.7
0.2 0.3
0.7 0.8
0.14 0.77
1
1
w2
w10
Mapas autoorganizados/ Algoritmo de aprendizaje
Presentar una entrada a la red
1
1
w2
w10x y
R2
0.2 0.3
0.4 0.8
0.9 0.3
0.5 0.7
0.7 0.3
0.6 0.1
0.6 0.7
0.2 0.7
0.9 0.4
0.6 0.7
0.5 0.3
0.2 0.3
0.4 0.7
0.9 0.2
0.1 0.3
0.8 0.3
0.5 0.8
0.3 0.3
0.2 0.6
0.6 0.6
0.7 0.4
0.5 0.5
0.5 0.6
0.6 0.3
0.2 0.7
0.7 0.8
0.7 0.8
0.8 0.6
0.6 0.7
0.2 0.3
0.2 0.7
0.2 0.3
0.9 0.3
0.9 0.7
0.2 0.3
0.7 0.8
0.14 0.77
Mapas autoorganizados/ Algoritmo de aprendizaje
Concepto de distancia
Mapas autoorganizados/ Algoritmo de aprendizaje
Recordemos que cuando se presenta un patrón de entrenamiento, se debe identificar la neurona de salida vencedora, esto es, la neurona cuyo vector de pesos sea el más parecido al patrón presentado. De acuerdo con este criterio, dos vectores serán más similares cuanto menor sea su distancia. Un criterio de similitud muy utilizado es la distancia euclidiana que viene dado por la siguiente expresión:
De acuerdo con este criterio, dos vectores serán más similares cuanto menor sea su distancia.
Concepto de distancia
Mapas autoorganizados/ Algoritmo de aprendizaje
Una medida de similitud alternativa más simple que la euclidiana, es la correlación o producto escalar:
según la cual, dos vectores serán más similares cuanto mayor sea su correlación.
6. Encontrar la neurona ganadora
x y
R2
0.2 0.3
0.4 0.8
0.9 0.3
0.5 0.7
0.7 0.3
0.6 0.1
0.6 0.7
0.2 0.7
0.9 0.4
0.6 0.7
0.5 0.3
0.2 0.3
0.4 0.7
0.9 0.2
0.1 0.3
0.8 0.3
0.5 0.8
0.3 0.3
0.2 0.6
0.6 0.6
0.7 0.4
0.5 0.5
0.5 0.6
0.6 0.3
0.2 0.7
0.7 0.8
0.7 0.8
0.8 0.6
0.6 0.7
0.2 0.3
0.2 0.7
0.2 0.3
0.9 0.3
0.9 0.7
0.2 0.3
0.7 0.8
0.14 0.77
Mapas autoorganizados/ Algoritmo de aprendizaje
Ajustar los pesos de la neurona ganadoraAjustar los pesos de la neurona ganadora en la dirección del punto presente en la entrada.
ΔW = α(t) (X – W) , también los pesos de las neuronas de la vecindad de la neurona ganadora.
Pero con una tasa de aprendizaje reducida (Sombrero Mejicano) de manera que se especialice menos que la neurona ganadora.
Mapas autoorganizados/ Algoritmo de aprendizaje
7. Presentar otro ejemplo
x y
R2
0.2 0.3
0.4 0.8
0.9 0.3
0.5 0.7
0.7 0.3
0.6 0.1
0.6 0.7
0.2 0.7
0.9 0.4
0.6 0.7
0.5 0.3
0.2 0.3
0.4 0.7
0.9 0.2
0.1 0.3
0.8 0.3
0.5 0.8
0.3 0.3
0.2 0.6
0.6 0.6
0.7 0.4
0.5 0.5
0.5 0.6
0.6 0.3
0.2 0.7
0.7 0.8
0.7 0.8
0.8 0.6
0.6 0.7
0.2 0.3
0.2 0.7
0.2 0.3
0.9 0.3
0.9 0.7
0.2 0.3
0.7 0.8
0.09 0.71
Mapas autoorganizados/ Algoritmo de aprendizaje
Presentar otro ejemplo
x y
R2
0.2 0.3
0.4 0.8
0.9 0.3
0.5 0.7
0.7 0.3
0.6 0.1
0.6 0.7
0.2 0.7
0.9 0.4
0.6 0.7
0.5 0.3
0.2 0.3
0.4 0.7
0.9 0.2
0.1 0.3
0.8 0.3
0.5 0.8
0.3 0.3
0.2 0.6
0.6 0.6
0.7 0.4
0.5 0.5
0.5 0.6
0.6 0.3
0.2 0.7
0.7 0.8
0.7 0.8
0.8 0.6
0.6 0.7
0.2 0.3
0.2 0.7
0.2 0.3
0.9 0.3
0.9 0.7
0.2 0.3
0.7 0.8
0.09 0.71
Mapas autoorganizados/ Algoritmo de aprendizaje
BMU (Best match unit)
Mapas autoorganizados/ Algoritmo de aprendizaje
Repetir
Mapas autoorganizados/ Algoritmo de aprendizaje
Reducir la vecindad de las neuronas y repetir 2 a 4 veces para todos los puntos por un cierto numero de iteraciones
Visualización y funcionamiento del mapa
x y
R2
0.2 0.3
0.4 0.8
0.9 0.3
0.5 0.7
0.7 0.3
0.6 0.1
0.6 0.7
0.2 0.7
0.9 0.4
0.6 0.7
0.5 0.3
0.2 0.3
0.4 0.7
0.9 0.2
0.1 0.3
0.8 0.3
0.5 0.8
0.3 0.3
0.2 0.6
0.6 0.6
0.7 0.4
0.5 0.5
0.5 0.6
0.6 0.3
0.2 0.7
0.7 0.8
0.7 0.8
0.8 0.6
0.6 0.7
0.2 0.3
0.2 0.7
0.2 0.3
0.9 0.3
0.9 0.7
0.2 0.3
0.7 0.8
Mapas autoorganizados/ Algoritmo de aprendizaje
Visualización y funcionamiento del mapa
Una vez seleccionado el mapa óptimo, podemos pasar a la fase de visualizaciónobservando en qué coordenadas del mapa se encuentra la neurona asociada a cada patrón de entrenamiento.
Esto nos permite proyectar el espacio multidimensional de entrada en un mapa bidimensional y, en virtud de la similitud entre las neuronas vecinas, observar los clusters o agrupaciones de datos organizados por la propia red.
Por este motivo, el modelo de mapa autoorganizado es especialmente útil para establecer relaciones, desconocidas previamente, entre conjuntos de datos.
En la fase de funcionamiento, la red puede actuar como un clasificador de patrones ya que la neurona de salida activada ante una entrada nueva representa la clase a la que pertenece dicha información de entrada.
.
Visualización y funcionamiento del mapa
x y
R2
Mapas autoorganizados/ Algoritmo de aprendizaje
Evaluación del ajuste del mapa
Los mapas tienen dos formas de medir su calidad:
Exactitud de la representación de los datos
Exactitud de la representación de la topología de los datos
Para ajustar el mapa se debe jugar un poco con el manejo de las vecindades y la tasa de aprendizaje.
También se deben hacer varios mapas para así escoger el que presente menos error.
El compromiso entre los dos errores debe ser evaluado por el experto
Dos dimensiones
Mapas autoorganizados/ Algoritmo de aprendizaje
Tres dimensiones
Mapas autoorganizados/ Algoritmo de aprendizaje
Ejemplo practico
Mapas autoorganizados/ Algoritmo de aprendizaje
Ejemplo práctico
En el proceso general de aprendizaje suelen considerarse dos fases.
En la primera fase, se pretende organizar los vectores de pesos en el mapa.
Para ello, se comienza con una tasa de aprendizaje y un tamaño de vecindad grandes, para luego ir reduciendo su valor a medida que avanza el aprendizaje.
En la segunda fase, se persigue el ajuste fino del mapa, de modo que los vectores de pesos se ajusten más a los vectores de entrenamiento. El proceso es similar al anterior aunque suele ser más largo, tomando la tasa de aprendizaje constante e igual a un pequeño valor y un radio de vecindad constante.