Sei sulla pagina 1di 6

El modelo de Kohonen

T. Kohonen present en 1982 un sistema con un comportamiento semejante al


del cerebro. Se trataba de un modelo de red neuronal con capacidad para
formar mapas de caractersticas de manera similar a como ocurre en el
cerebro. En ste hay neuronas que se organizan en muchas zonas, de forma
que las informaciones captadas del entorno a travs de los rganos sensoriales
se representan internamente en forma de mapas bidimensionales.

Este modelo tiene dos variantes, denominadas LVQ (Learning Vector


Quantization) y TPM (Topology-Preserving Map). Ambas forman mapas
topolgicos para establecer caractersticas comunes entre las informaciones de
entrada.

Arquitectura
La versin original (LVQ) consta de dos capas con N neuronas de entrada y M
de salida. Cada una de las N neuronas de entrada se conecta a las M de salida
a travs de conexiones hacia adelante (feedforward).

Entre las neuronas de la capa de salida existen conexiones laterales de


inhibicin (peso negativo) implcitas. Cada una de estas neuronas va a tener
cierta influencia sobre sus vecinas. El valor que se asigne a los pesos de las
conexiones feedforward entre las capas de entrada y salida durante el proceso
de aprendizaje de la red va a depender precisamente de esta interaccin
lateral.

La influencia que una neurona ejerce sobre las dems es funcin de la


distancia entre ellas, siendo muy pequea cuando estn muy alejadas.
Funcionamiento
El funcionamiento es relativamente simple. Cuando se presenta a la entrada
una informacin Ek, cada una de las M neuronas de la capa de salida la recibe
a travs de la conexiones feedforward con pesos wji.Tambin estas neuronas
reciben las correspondientes entradas debidas a las conexiones laterales con el
resto de las neuronas de salida y cuya influencia depender de la distancia a la
que se encuentren.

Se trata de una red de tipo competitivo, ya que al presentar una entrada E k la


red evoluciona a una situacin estable en la que se activa una neurona de
salida, la vencedora. La formulacin matemtica de su funcionamiento viene
dada por la expresin

1 si MIN | Ek - Wj | = MIN ( R2(SumNi=1(ei(k) - wij )2 ))


sj =
0 resto
donde R2 es la raiz cuadrada y Sum es la sumatoria para i=1 hasta N

que representa cul de las M neuronas se activara al introducir dicha


informacin de entrada Ek.

En la fase de funcionamiento, lo que se pretende es encontrar el dato


aprendido ms parecido al de entrada para, en consecuencia, averiguar qu
neurona se activar y sobre todo, en qu zona del espacio bidimensional de
salida se encuentra.

Lo que hace la red en definitiva es realizar una tarea de clasificacin, ya que la


neurona de salida activada ante una entrada representa la clase a la que
pertenece dicha informacin de entrada. Adems, como ante otra entrada
parecida se activa la misma neurona de salida, u otra cercana, debido a la
semejanza entre las clases, se garantiza que las neuronas topolgicamente
prximas sean sensibles a entradas fsicamente similares. Por tanto, esta red es
especialmente til para establecer relaciones entre conjuntos de datos.

Aprendizaje
Es de tipo OFF LINE, por lo que se distingue una etapa de aprendizaje y otra
de funcionamiento. Tambin utiliza un aprendizaje no supervisado de tipo
competitivo. Slo una neurona de la capa de salida se activa ante la entrada,
ajustndose los pesos de las conexiones en funcin de la neurona que ha
resultado vencedora.

Durante la etapa de entrenamiento, se presenta a la red un conjunto de


informaciones de entrada para que sta establezca, en funcin de la semejanza
entre los datos, las diferentes categoras (una por neurona de salida) que
servirn durante la fase de funcionamiento para realizar clasificaciones de
nuevos datos que se presenten a la red. Los valores finales de los pesos de las
conexiones entre cada neurona de la capa de salida con las de entrada se
correspondern con los valores de los componentes del vector de aprendizaje
que consigue activar la neurona correspondiente.

El aprendizaje no concluye despus de presentarle una vez todos los patrones


de entrada, sino que habr que repetir el proceso varias veces para refinar el
mapa topolgico de salida, de tal forma que cuantas ms veces se presenten
los datos, tanto ms se reducirn las zonas de neuronas que se deben activar
ante entradas parecidas, consiguiendo que la red pueda realizar una
clasificacin ms selectiva.

Algoritmo

Sea N el nmero de neuronas de entrada y M el nmero de neuronas de salida.

Objetivo: establecer los valores de los pesos de las conexiones.

1. Inicializar los pesos, wji, con valores aleatorios pequeos, fijando la


zona inicial de vecindad entre las neuronas de salida.

2. Presentar a la red una informacin de entrada en forma de vector Ek =


(e1, ..., eN), cuyas componentes, ei, sean valores contnuos.

3. Determinar la neurona vencedora de la capa de salida: ser aquella


cuyo vector de pesos, Wj, sea el ms parecido a la informacin de
entrada Ek. Recordemos que las componentes de Wj son los valores de
los pesos de las conexiones entre esa neurona, j, y cada una de las
neuronas de entrada. Para ello se calcula las distancias entre los
vectores Ek y Wj para cada neurona de salida. La expresin matemtica
sera la siguiente:

dj = Sum i=1..N (ei - wji)2 para 1 <= j <= M

4. Una vez localizada la neurona vencedora, j*, se actualizan los pesos de


sus conexiones de entrada y tambin los de las neuronas vecinas (las
que pertenecen a su zona de vecindad, Zonaj). Lo que se consigue es
asociar la informacin de entrada con una cierta zona de la capa de
salida.

wji(t+1) = wji(t) + (t) [ei(k) - wj*i(t)]

para j perteneciente a Zonaj*(t)


El trmino (t) es un parmetro de gananacia o coeficiente de aprendizaje, con
un valor entre 0 y 1 que decrece con el nmero de iteraciones del proceso de
entrenamiento. Puede utilizarse la expresin (t) = 1/t

5. El proceso se debe repetir, volviendo a presentar todo el juego de


patrones de aprendizaje E1, E2, .., un mnimo de 500 veces (t = 500).

Ejemplo

Se trata de utilizar una red con 2 neuronas de entrada, coordenadas X e Y de


los puntos a clasificar, y 4 neuronas de salida, por lo que la red establecer
cuatro regiones o categoras de puntos en funcin de su situacin en el plano.
Los valores de entrada pertenecern al intervalo [0,1] y no se va a establecer
ninguna zona de vecindad.

En la red existirn por tanto 2x4 = 8 conexiones entre la capa de entrada y


salida con sus correspondientes pesos. Para entender el significado espacial de
estos pesos se van a agrupar por parejas, vector Wj de dos componentes,
correspondiendo la primera componente del vector a la conexin de la
neurona de salida j con la neurona de entrada X e idem para la segunda
componente y la neurona Y de entrada. Tendremos entonces cuatro vectores
de pesos de la forma :

Wj = [wjx, wjy]

Elegimos los valores para los pesos, situndolos en la zona central del plano
XY.

W1 = [0.4, 0.5], W2 = [0.4, 0.6], W3 = [0.5, 0.6], W4 = [0.5, 0.5]

Tambin elegimos (t) = 1/t.

El conjunto de patrones de entrenamiento va a estar formado por 20 puntos de


componentes (px, py):

A continuacin aplicamos los pasos del algoritmo para obtener los nuevos
valores de los pesos cuyas componentes se obtienen de las siguientes
expresiones :

Wjx(t+1) = wjx(t) + 1/t [px wjx(t)]

Wjy(t+1) = wjy(t) + 1/t [py wjy(t)]


La evolucin de los pesos durante la fase de aprendizaje de los 20 puntos es la
siguiente.

Puede comprobarse que despus de la iteracin 126, los valores de los pesos
permanecen estables. Los valores finales representan los centroides o centros
de gravedad de los puntos que la red ha considerado pertencientes a cada una
de las 4 clases que ha establecido. Adems, las lneas que establecen las
fronteras entre las regiones son perpendiculares a las lneas que unen los
centroides Wj.

Despus del aprendizaje se pasara a la fase de funcionamiento de la red,


durante la cual se pueden presentar nuevos puntos P(p x, py) para que la red los
relacione con alguna de las cuatro clases establecidas. Esto se har en funcin,
como ya se ha comentado, de la distancia al representante (centroide) de cada
clase, almacenado en el vector Wj correspondiente. La red calculara la
distancia dj = (px-wjx)2 + (py wjy)2 a cada vector de pesos [wjx, wjy]. Se
obtendran entonces d1, d2, d3 y d4. La menor dj indicara que el punto de
entrada P, pertenece a la clase j. Si por ejemplo tratamos de clasificar el punto
P=[0.2,0.5] nos dara como resultado la activacin de la neurona de salida
nmero 3, por lo que el punto pertenece a la clase 3.
Aplicaciones
El modelo de Kohonen es uno de los ms tiles en computacin neuronal, a
pesar de sus limitaciones en cuanto a la duracin del proceso de aprendizaje y
a la imposibilidad de aprender nuevos datos sin tener que volver a repetir
completamente el proceso de aprendizaje con todos los patrones.

Como aplicaciones, destacan las relacionadas con el reconocimiento de


patrones (voz, texto, imgenes, seales, etc), codificacin de
datos, compresin de imgenes y resolucin de problemas de optimizacin.
Tambin se ha utilizado en robtica, comprobndose su utilidad en el diseo
de sistemas para controlar el movimiento de un brazo mecnico en un espacio
tridimensional. Se utiliza aqu la red para aprender las magnitudes tensoriales
necesarias para moverse en un entorno real, considerando los efectos del
desgaste que pueden alterar la dinmica del brazo con el transcurso del
tiempo.

Bibliografia
http://thales.cica.es/rd/Recursos/rd98/TecInfo/07/capitulo6.html

Potrebbero piacerti anche