Sei sulla pagina 1di 5

1

PRÁCTICA 3. APLICACIÓN DE REDES


AUTO-ORGANIZATIVOS DE KOHONEN
Lorena Castro, Laudy Mora, Jhon Rodríguez
{u1801580, u1802341, u1802053}@unimilitar.edu.co


Resumen—En la práctica se realizó el diseño de un software
basado en los mapas auto-organizativos de Kohonen que III. MARCO TEÓRICO
permite a un robot diferencial moverse a través de una
trayectoria de forma autónoma, utilizando la red neuronal
previamente entrenada y trazando la trayectoria del robot A. CLUSTER ANALISIS
móvil por medio del reconocimiento de los caracteres en la
pista. El analisis de agrupamiento o Cluster Analisis es un estudio de
Abstract— In the practice a software was designed based on algoritmos y metodos para agrupar o clasificar informacion.
the Kohonen self-organizing maps that allows a differential Cualquier objeto es descrito por alguna caracteristica o
robot move automatically, using the neural networks that was relacion de si mismo con otros objetos.[1]
already trained and tracing the path of the differential robot by
the characters recognition in the track. Este analisis no utiliza ningun tipo de etiqueta para la
identificacion de objetos, sino que aplica un analisis
Índice de Términos—Kohonen, trayectoria, auto- discriminante. El objetivo es encontrar una forma de organizar
la informacion de tal manera que no se establezcan reglas sino
organizativo, no supervisado.
que se haga el agrupamiento por su clase, categoria o
caracteristica especifica.[2]
I. INTRODUCCIÓN
La base de muchos análisis o practicas científicas utilizan la B. SISTEMAS AUTO-ORGANIZADOS
agrupación de objetos de acuerda a una característica que los
identifique. Esta agrupación es un modo de aprender y Los sistemas auto-organizados se idearon partiendo de la auto-
entender, y al analizarlo desarrollan algoritmos y métodos para organización de células nerviosas de la corteza cerebral
esta agrupación o clasificación de datos. El objetivo de esto es conocido también como el aprendizaje competitivo.
encontrar una forma conveniente de organizar la información
en categorías. Utilizando las redes auto-organizativas de También se propuso un cognitron es en sí es una red
Kohonen se simula el proceso de aprendizaje competitivo multicapa competitiva y auto-organizada donde se trabajó
donde detecta caracteres para trazar una trayectoria y sobre la conexión neuronal y la clasificación adaptativa de
recorrerla. patrones.[3]

II. OBJETIVOS C. MAPAS AUTO-ORGANIZADOS DE KOHONEN


A. OBJETIVO GENERAL (KSOM)
Realizar una red neuronal mediante mapa de kohonen, con la
cual se trazará una trayectoria. Estos sistemas también conocidos como redes auto-
organizadas de kohonen, mapas características de kohonen o
paras de topología preservada son redes basadas en
B. OBJETIVOS ESPECIFICOS competitividad para el agrupamiento de información.
Reconocer varios caracteres con la red back propagation, para
obtener las posiciones sobre la pista y generar una trayectoria La red Kohonen es una red de aprendizaje no supervisado
con estas coordenadas. donde las neuronas se organizan como nodos de una red con
uno o dos (o a veces 3) dimensiones. Los KSOM permiten
Implementar la trayectoria con un robot móvil el cual debe observar la información de alta dimensión en una red de baja
pasar por los caracteres identificados. dimensionalidad manteniendo la topología de la información
general. Donde se realiza una proyección no lineal de las
entradas donde la dimensión es la misma de la red.
2

Los KSOM utilizan funciones llamadas funciones de vecindad la corteza cerebral y este es el que utiliza el KSOM y
para simular el comportamiento biológico del cual se basan.[4] otras redes no supervisadas.[4]

Características topológicas: Caracteristicas de funcionamiento:


1) Solo posee una capa de neuronas, la de salida
a) Tiene una realimentación general que es de firma Es el aprendizaje es las redes de Kohonen tienen 3 fases:
indirecta.  Competitivo
b) La capa de salida tiene K neuronas.  Cooperativo
c) Puede ser unidimensional o multidimensional (K o  Adaptativo
KxK).
2) La capa de entrada se distribuye a la capa de salida El algoritmo de aprendizaje organiza las neuronas vecinas
a) Consiste de N neuronas, que es la dimensión de la como una clasificación dependiendo de las características de
entrada. entrada, todas las neuronas compiten por activarse y solo las
b) No hay ningún tipo de procesamiento. vecinas actualizan su peso. Al final todas las neuronas están
c) Todas las entradas se encentran conectadas a cada agrupadas correspondiendo a sus características (Patrones).
neurona de la red.
d) Las neuronas que se manejan no son de tipo Se deben asignar valores aleatorios para los pesos de las
perceptrón. neuronas, y estas 3 fases deben hacerse secuencialmente.
Estructura de la red:
Proceso competitivo:
En la siguiente figura se muestra una red auto-organizada de
Kohonen simple con 2 entradas y 49 salidas. [5] Se tiene una entrada:
𝑋(𝑡) = [𝑥1 (𝑡), … … … 𝑥𝑛 (𝑡)] (1)

Luego se calcula la distancia entre X(t) y cada uno de los


nodos de salida. Las neuronas tienen un tipo de “competencia”
y la ganadora será la que tenga el vector de pesos más
parecido al vector de entrada. Esto se comprueba utilizando un
criterio de distancia, generalmente se utiliza distancia
Euclidiana.
𝑛

𝐷𝑗 (𝑘) = ∑[𝑥𝑖 (𝑘) − 𝑊𝑗𝑖 (𝑘)]2 (2)


Figura 1. Red auto-organizada de Kohonen con 2 entradas y 49 salidas y el
𝑖−1
tamaño de la vecindad alrededor de la neurona ganadora en cada iteración.
Donde
𝒙𝒊 (𝒌): es el componente de i del vector de entrada en la época
Preservación topológica
t.
KSOM son redes TRN (Topologic Representation Network),
𝑾𝒋𝒊 (𝒌): es el peso entre el nodo de entrada (j) y el nodo de
esto quiere decir que si dos patrones de entrenamiento
cualquiera están cerca uno del otro, también estarán cerca del salida (i) en la época k.
KSOM ya entrenado.
Proceso cooperativo:
Las TRNs tienen su razón biológica, por ejemplo el mapa
retino tópico entre la retina y la corteza, o el mapa somato Cuando se tiene la neurona ganadora, a su alrededor se define
sensorial.[4] una “vecindad” topológica cooperativa que se define como
función de vecindad que es generalmente de tipo Gaussiana:
Aprendizaje adaptativo:
𝑑2
−( )
ℎ(𝑘) = 𝑒 2𝜎 2
(3)
 Aprendizaje competitivo fuerte: este consiste Dónde
esencialmente en que el ganador se lleva todo, es d: es la distancia entre la neurona ganadora y sus neuronas
decir, que la neurona ganadora es la única que recibe vecinas.
alguna acción de entrenamiento, similar al Generalmente 𝜎 varia con respecto a las iteraciones como se
entrenamiento supervisado. muestra en la siguiente ecuación:
 Aprendizaje competitivo suave: este consiste
esencialmente en “compartir con los vecinos”, quiere −(
𝑘
)
𝜎(𝑘) = 𝜎0 ∗ 𝑒 𝜏1 (4)
decir que no solo la neurona ganadora sino sus
neuronas “vecinas” reciben la acción del
entrenamiento. Es lo más cercano al modelo real en Dónde:
𝜎0 : Valor de inicio.
3

1000
𝜏1 : Constante de inicio ; 𝜏1 = (5)
log(𝜎0 )

Figura 2.Funcion de vecindad tipo “sombrero mexicano”. Figura 4. Pista número 2.

Proceso adaptativo:

Hay que tener en cuenta los pesos que se utilizan en la función


de vecindad de la neurona ganadora. Esos pesos se actualizan
con la siguiente función vectorial:

𝜔𝑗 (𝑘 + 1) = 𝜔𝑗 (𝑘) + 𝜇(𝑘) ∗ ℎ(𝑘) (𝑥 − 𝜔𝑗 (𝑘)) (6)

El tamaño de la vecindad y el factor de aprendizaje µ


disminuyen con cada iteración.
𝑘 Figura 5. Pista número 3.
−( )
𝜇(𝑘) = 𝜇0 ∗ 𝑒 𝜏2 (7)
La interfaz gráfica se ve de la siguiente manera:

El algoritmo termina cuando 𝑘 = 𝑘𝑚𝑎𝑥 o cuando los pesos


dejen de variar.
Generalmente se utilizan los siguientes valores para el factor
de aprendizaje:
𝜇0 = 0.1 𝜏2 = 1000

IV. PROCEDIMIENTO
Red de Kohonen

Se procede a implementar los mapas auto-organizativos de Figura 6. Interfaz gráfica.


Kohonen para la detección de los patrones en una pista que se
diseñó con los caracteres previamente entrenados. En ella se selecciona cual pista se desea seleccionar. Posterior
a esto se selecciona el carácter que se quiere reconocer, este
carácter está definido por el vector de salida del entrenamiento
adquirido en la práctica anterior donde se enuncia la posición
de ese carácter dentro del vector.

Figura 3. Pista número 1.


4

Figura 9. Calculo de funciones de Kohonen.


Figura 7. Selección del caracter.

Posterior a esto se realiza la binarización de la imagen para


que el programa detecte los caracteres, luego de hacer la
detección del carácter seleccionado calcula la salida de la
primera capa con los pesos aleatorios y de la segunda capa
que es la de salida.

Figura 10. Calculo de funciones de Kohonen.

Figura 8. Calculo de las capas de la red.

Después se calcula el centroide del cuadro que encierra el Figura 11. Calculo de funciones de Kohonen.
carácter y se grafica esa posición, guardando las coordenadas.

En el cuadro de coordenadas de la interfaz se muestra la


ubicación de cada punto en la pista y se fijan los puntos inicial
y final para que el algoritmo trace la trayectoria.

Por ultimo de ejecuta el algoritmo de Kohonen utilizando las V. CONCLUSIONES


formulas (2), (3), (4), (5) y (7). Al tener los puntos inicial y Se identificaron por completo las diferentes combinaciones de
final procede a calcular los pesos aleatorios de los otros puntos caracteres sobre la pista.
y desde la primera iteración busca la neurona con menor
distancia (la ganadora) y va guardando la posición mientras se El algoritmo fue capaz de identificar todos los parámetros para
va actualizando. Después de esto se procede a calcular los calcular sus centroides y calcular las coordenadas de entrada al
pesos de las neuronas aleatorias utilizando la formula (6). mapa de kohonen.
5

El mapa auto organizado funciona correctamente se evidencia


que entre más neuronas posea el mapa minimiza el error entre REFERENCIAS
las letras.
[1] E. B.S., Unsolved Problems in Cluster Analysis, Vol
Se probó el mapa con pocas neuronas y evidenciamos que no 35. 1979.
lograba llegar a algunos caracteres, pero a medida que se iba [2] A. K. Jain and R. C. Dubes, Algorithms for Clustering
subiendo el número de neuronas este error iba disminuyendo. Data. New Jersey: Prentice Hall, 1995.
[3] A. S. Pandya, Pattern Recognition with Neural
La mejora mecánica del carro permitió que este hiciera la Networks in C++. IEEE Press, 1995.
trayectoria indicada sin problema alguno. [4] T. Kohonen, “KSOM - Kohonen Self-Organization
Map,” Inf. Sci., 1984.
[5] J. Shing and R. Shang, Neuro-Fuzzy and Soft
Computing. Massachusetts: Prentice Hall.

Potrebbero piacerti anche