REDES NEURONALES COMPETITIVAS HAMMING

58
Edmundo R. Durán C. 1.2 REDES COMPETITIVAS 1.2.1 RED DE HAMMING, 1.2.2 CAPA COMPETITIVAS, 1.2.3 MAPAS AUTO-ORGANIZATIVOS (Trabajo de Investigación), 1.2.4 CUANTIZACIÓN DEL VECTOR DE APRENDIZAJE

description

1.2.1 RED DE HAMMING, 1.2.2 CAPA COMPETITIVAS, 1.2.3 MAPAS AUTO-ORGANIZATIVOS 1.2.4 CUANTIZACIÓN DEL VECTOR DE APRENDIZAJE

Transcript of REDES NEURONALES COMPETITIVAS HAMMING

Page 1: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

1.2 REDES COMPETITIVAS

1.2.1 RED DE HAMMING,

1.2.2 CAPA COMPETITIVAS,

1.2.3 MAPAS AUTO-ORGANIZATIVOS (Trabajo de Investigación),

1.2.4 CUANTIZACIÓN DEL VECTOR DE APRENDIZAJE

Page 2: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

INTRODUCCIÓN

La red de Hamming es el ejemplo más simple de una red competitiva.

Las neuronas en la capa de salida de una red de Hamming compiten entre sí para determinar cual es la ganadora.

La ganadora indica cual patrón prototipo es el más representativo de los patrones de entrada.

Page 3: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Introducción La competencia es efectuada por

inhibición lateral (un conjunto de conexiones

negativas entre las neuronas en la capa de salida).

Existen redes auto-organizativas (no supervisadas), las cuales combinan la característica de competencia y diversas reglas de aprendizaje asociativo.

Page 4: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

En 1973, Christoph von der Malsburg.-– Regla de aprendizaje auto-organizativa, la

cual permitía a una red clasificar entradas de tal manera que las neuronas vecinas respondían a entradas semejantes.

• Su desventaja era que se tenía que realizar un cálculo no local para asegurar que los pesos estuvieran normalizados.

Introducción

Page 5: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

En 1965, la regla instar fue presentada por Nils Nilsson en su libro “maquinas que aprenden”.

Grossberg modificó el trabajo de “von der Malsburg al re-descubrir la regla instar.

Grossberg demostró que la regla instar elimina la necesidad de re-normalizar los pesos.

Introducción

Page 6: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

También influenciaron fuertemente en las redes competitivas las investigaciones de Teuvo Kohonen. Aunque él enfatizó en las aplicaciones de ingeniería.

En 1970, Kohonen desarrolla una versión simple de la regla instar y encuentra una forma eficiente para incorporar topología en una red competitiva.

Introducción

Page 7: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

1.2.1 Red de Hamming

La red de Hamming consiste de dos capas. La primera realiza una correlación entre el vector de pesos y los vectores prototipo; y la segunda realiza una competencia para determinar cual de los vectores prototipos es el más cercano al vector de entrada.

Page 8: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

La primer capa de una red Hamming esta compuesta de muchas instar.

Recordando, la regla instar simple puede clasificar solamente UN patrón de entrada.

Para tomar en cuenta varios patrones de entrada a ser clasificados se tendrán múltiples instar, lo cual se realiza en la red de Hamming.

Capa 1 (Correlación)

Page 9: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Capa 1 (Correlación)

p1 p2 pQ

Si se quiere que la red reconozca el siguiente vector prototipo:

W 1

w T1

w T2

w TS

p 1T

p 2T

p QT

= = b1

R

R

R

=

Entonces en la capa 1, la matriz de pesos y el vector de umbral serán:

Donde cada fila de W1 representa un vector prototipo, el cual se quiere reconocer, y cada elemento de b1 es igual al número de elementos en cada vector de entrada (R).

Page 10: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Capa 1 (Correlación)

La salida de la primera capa es:

El prototipomás cercano al vector de entrada produce

la respuesta más grande.

a1

W 1 p b 1+

p 1T p R+

p 2T p R+

pQT p R+

= =

•Las salidas de la capa 1 son iguales al producto de los vectores prototipo y la entrada, mas R.

Dicho producto indica que tan cerca está cada uno de los patrones prototipos del vector de entrada.

Page 11: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Capa 2 (Competición)

a20 a1

=

a2t 1+ pos lin W2a2

t =

w ij2 1 if i j=

– otherwise

= 0 1S 1–------------

La segunda capa es inicializada con la salida de la primera capa.

Entonces la salida de la segunda capa se actualizará de acuerdo a la siguiente relación recurrente:

La matriz de pesos de la segunda capa, W2 será tal que los elementos de la diagonal son 1 y los restantes tendrán un valor negativo pequeño:

Page 12: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Capa 2 (Competición)

ai2

t 1+ poslin ai2

t a j2

t j i–

=La neurona con la

condición inicial más grande ganará la

competencia.

La matriz W2 produce una inhibición lateral, en la cual la salida de cada neurona tiene un efecto inhibitorio sobre todas las demás neuronas.

Para una neurona de una entrada se tendrá:

Page 13: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

En cada iteración, la salida de la neurona se disminuirá en proporción a la suma de las salidas de las restantes neuronas (con una salida

mínima de 0).

La salida de las neurona con la condición inicial mayor disminuirá más lentamente que las salidas de las otras neuronas.

Capa 2 (Competición)

Page 14: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Eventualmente, dicha neurona será la única con una salida positiva. Al mismo tiempo la red ha alcanzado la estabilidad.

El índice de la neurona en la segunda capa con una salida positiva estable será el índice del vector prototipo que mejor reproduce la entrada.

Lo anterior se conoce como: competencia del ganador toma todo. Debido a que solo una neurona tendrá su respuesta distinta de cero.

Capa 2 (Competición)

Page 15: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Red de Hamming

Page 16: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Capa FeedforwardReconocedor de Banana/manzana

W1 p1T

p2T

1– 1 1–1 1 1–

= =

b1 R

R

3

3= =

a1 W1p b1+

p1T

p2T

p 3

3+

p1Tp 3+

p2Tp 3+

= = =

S 2=

Page 17: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Capa Recurrente

W2 1 –

– 1= 1

S 1–------------

a2 t 1+ posl in 1 –

– 1a2 t

posl ina1

2t a 2

2t –

a22

t a 12

t –

= =

Page 18: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Operación de Hamming

p1–1–

1–

=

Entrada (Próxima a Banana)

a1 1– 1 1–1 1 1–

1–1–

1–

33

+ 1 3+ 1– 3+

42

= = =

Primera Capa

Page 19: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

a2 1 p osl in W2a2 0

posl in 1 0.5–0.5– 1

42

poslin 3

0 3

0=

= =

a2 2 p osl in W2a2 1

posl in 1 0.5–0.5– 1

30

posl in 3

1.5– 3

0=

= =

Segunda Capa

Operación de Hamming

Page 20: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Interpretación

En cada iteración, la salida de cada neurona disminuirá proporcionalmente a la suma de las salidas de las otras neuronas (mínimo de cero).

La salida de la neurona con la condición inicial más alta disminuirá más lentamente que las salidas de las otras neuronas.

Page 21: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Interpretación

Con el tiempo dicha neurona será la única que tenga una salida positiva.

Cuando esto sucede se dice que la red ha alcanzado su estado estable.

El índice de la neurona de la segunda capa con una salida positiva y estable es el índice del vector prototipo que mejor reproduce la entrada.

Page 22: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Resumen

La red de Hamming: † Red Competitiva† Primera Capa – Unión de patrones

(Producto Punto)† Segunda Capa – Competencia (El ganador

toma todo)† # de neuronas = # Patrones prototipos

Page 23: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

1.2.2 CAPA COMPETITIVA

INTRODUCCIÓN,

APRENDIZAJE COMPETITIVO.

Page 24: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

INTRODUCCIÓN

• Auto-organización consiste en la modificación de la red completa para llevar a cabo un objetivo específico.

• Generalización es la facultad de las redes de responder adecuadamente cuando se les presentan datos o situaciones a las que nunca había sido expuesta anteriormente.

Page 25: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Reconocimiento de Imágenes.

Transmisión de señales.

Reconocimiento de patrones.

APLICACIONES DE LAS REDES COMPETITIVAS

Introducción

Page 26: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

APRENDIZAJE COMPETITIVOLas neuronas compiten unas con otras para llevar a cabo una tarea dada.

La competición entre neuronas se realiza en todas las capas de la red.

Tienen conexiones recurrentes de auto excitación y de inhibición por parte de neuronas vecinas.

Introducción

Page 27: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

APRENDIZAJE COMPETITIVO

Este aprendizaje, realiza la categorización de los datos introducidos en la red.

Las clases o categorías deben ser creadas por la propia red.

Estas neuronas tienen asignado un peso total, que es la suma de todos los pesos que tienen a su entrada.

Introducción

Page 28: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

REDES AUTOORGANIZATIVAS

•Aprenden a detectar regularidades y

correlaciones en sus entradas.

•Adaptan sus respuestas futuras

conforme a sus entradas.

Introducción

Page 29: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Introducción: Funciones en el MATLAB

•Capas Competitivasinitc , simuc , trainc

•Mapas Autoorganizativosinitsm , simusm , trainsm

•Matriz de relación de Vecindad.nbgrid , nbdist , nbman

Page 30: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Introducción: APRENDIZAJE COMPETITIVOARQUITECTURA

Page 31: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Introducción: INICIALIZACION

La función initc toma una matriz de vectores de entrada P y un número de neuronas S y regresa pesos para una capa competitiva sin bias.

W = initc ( P , S )

Page 32: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Introducción: EJEMPLO DE INICIALIZACIÓN

Capa competitiva de 5 neuronas con 2 entradas en un intervalo de [ 0 , 10 ] y [ -3 , +3] :

W = initc ( [ 0 10 ; -3 3] , 5 ) ;

Page 33: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Introducción: ENTRENAMIENTO

• La red puede ser entrenada con vectores de entrada utilizando distintas reglas de aprendizaje (learnis , learnk).

• Cada neurona compite para responder a un vector de entrada p.

• La neurona que gana la competencia es la que presenta un vector de pesos que está más cerca de, p, y se le asigna un valor de 1.

Page 34: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Introducción: ENTRENAMIENTO

• La neurona ganadora actualiza su vector de pesos con el fin de ser igual al vector de entrada.• La neurona ganadora tiene mayor probabilidad de ganar la siguiente vez.

a = simuc ( p , W );

dw = learnis ( p , a , lr , W );

W = W + dW ;

Page 35: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Introducción: ENTRENAMIENTO

Función trainc

[ W , b ] = trainc ( W , P , tp ) ;

TP = [ disp_freq max_pres lr bc ] ;

Page 36: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Introducción: ENTRENAMIENTOSyntax net = nnt2c(pr,w,klr,clr) Descripción NNT2C(PR,W,KLR,CLR) Toma estos argumentos, PR - Rx2 matrix of min and max values for R input elements. W - SxR weight matrix. KLR - Kohonen learning rate, default = 0.01. CLR - Conscience learning rate, default = 0.001. y regresa una capa competitiva. Una vez que la red ha sido actualizada se puede simular,

inicializar, adaptar, o entrenar con SIM, INIT, ADAPT, y TRAIN.

Ver NEWC.

Page 37: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Introducción: ENTRENAMIENTO

help newc NEWC Create a competitive layer. Syntax net = newc(PR,S,KLR,CLR) Description Competitive layers are used to solve classification problems. NET = NEWC(PR,S,KLR,CLR) takes these inputs, PR - Rx2 matrix of min and max values for R input elements. S - Number of neurons. KLR - Kohonen learning rate, default = 0.01. CLR - Conscience learning rate, default = 0.001. Returns a new competitive layer.

Page 38: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

CAPA COMPETITIVA

En la red de Hamming las neuronas de la segunda capa están en competencia ya que cada neurona se auto excita e inhibe a todas las demás.

Una función de transferencia que realiza el trabajo de una capa competitiva recurrente es:

a compet n =

Page 39: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Capa Competitiva La función compet encuentra el índice

i* de la neurona que tiene la entrada neta más grande, y manda su salida a 1. Todas las otras salidas son mandadas a cero.

ai1 i i=

0 i i

= ni ni i i i ni ni=, y,

Page 40: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Capa Competitiva

Al igual que en la capa competitiva de Hamming, el vector prototipo se almacena en las filas de W.

Compet:

a = 1 ;

para la neurona con una n mayor.

a = 0;

para todas las otras neuronas.

Page 41: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Capa Competitiva

La entrada neta n calcula la distancia entre el vector de entrada p y cada vector prototipo i w (asumiendo que los vectores tienen

una longitud normalizada de L).

n W p

w1

T

w2T

wS

T

p

w1

T p

w2T p

w

ST p

L2

1

cos

L2

2

cos

L2

S

cos

= = = =

Page 42: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Capa Competitiva La entrada neta ni de cada neurona i es

proporcional al ángulo i entre p y el vector prototipo i w.

La función de transferencia competitiva asigna una salida de 1 a la neurona cuyo vector de pesos apunte en la dirección más cercana al vector de entrada.

a= compet (Wp).

Page 43: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

REGLA DE APRENDIZAJE COMPETITIVO

Una regla de aprendizaje que puede utilizarse para entrenar una red competitiva, sin conocer el vector prototipo es la regla instar:

En una red competitiva, a es diferente de cero para la neurona ganadora (i=i*). Lo anterior se puede logra al utilizar la regla de Kohonen:

wi q wi q 1– ai q p q wi q 1– – +=

wi q w

i q 1– p q wi q 1– – +=

Page 44: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Aprendizaje Competitivo

wi q wi q 1– = i i

wi q 1 – w

i q 1– p q +=Regla Kohonen

La fila de la matriz de pesos más cercana al vector de entrada se moverá hacia el vector de entra.

Page 45: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Representación Gráfica

wi q w

i q 1– p q wi q 1– – +=

wi q 1 – w

i q 1– p q +=

Page 46: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Ejercicio En la figura A se presentan seis

vectores. Utilice dichos vectores y demuestre como una capa competitiva aprende a clasificar los vectores. Los vectores son:

.5812.0

8137.0,

8137.0

5812.0,

1961.0

9806.0

,1961.0

9806.0,

9806.0

1961.0,

9806.0

1961.0

654

321

ppp

ppp

Page 47: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Ejemplo

Figura A

Page 48: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Ejercicio

La red competitiva tendrá 3 neuronas, y por lo tanto puede clasificar vectores en tres clases distintas.

Los pesos aleatorios iniciales son:

.

w

w

w

W,0000.0

0000.1w,

7071.0

7071.0w,

7071.0

7071.0w

3

2

1

321

T

T

T

Page 49: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Ejercicio

Si se presentará el vector de entrada p2 a la red:

0

1

0

0.1961-

0.8321

0.5547-

compet

9806.0

1961.0

0000.0000.1

7071.07071.0

7071.07071.0

competWpcompet 2a

Page 50: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Ejercicio

El vector de pesos de la segunda neurona es el más cercano a p2, así es que es el que gana la competencia (i* = 2).

Por lo tanto se aplicará la regla de aprendizaje de Kohonen a la neurona ganadora, tomando en cuanta una razón de aprendizaje de = 0.5:

Page 51: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Ejercicio

La regla de Kohonen mueve a 2w acercándolo a p2 .

8438.0

4516.0

7071.0

7071.0

9806.0

1961.05.0

7071.0

7071.0

wpαww 2222oldoldnew

Page 52: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Ejercicio: Al continuar presentando aleatoriamente los

vectores de entrada a la red, en cada iteración los vectores de pesos se aproximarán a los vectores de entrada al mover hacia ellos el vector de peso.

Después de un tiempo, los vectores de pesos apuntará a un agrupamiento (cluster) diferente de vectores de entrada.

Page 53: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Ejercicio

Cada vector de peso se convierte en un prototipo para un agrupamiento diferente.

Pesos Finales en el ejemplo.

Page 54: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

EjercicioUna vez que la red aprende a agrupar los vectores de entrada, clasificará nuevos vectores.

La capa competitiva asignará a cada vector de entrada p a alguna clase existente al producir una salida de 1 para la neurona cuyo vector de peso este más cercano a p.

Page 55: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

PROBLEMAS CON LAS CAPAS COMPETITIVAS

Razón de aprendizaje (0; 1)

y estabilidad en el vector de peso; Agrupamientos cercanos;Neurona Muerta.

Page 56: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Convergencia Típica (Clustering)

Antes del Entrenamiento Después del Entrenamiento

Pesos

Vectores de entrada

Page 57: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Unidades MuertasUn problema con el aprendizaje competitivo es que las neuronas con pesos iniciales lejos del valor de cualquier entrada casi nunca ganan.

Solución:Agregar un Umbral negativo a cadaneurona,e incrementarla magnitud delumbral hasta quela neurona gane.

Con lo cual la ganadora será más fuerte. A esto se le conoce por “conciencia” (conscience)

Unidad Muerta

Page 58: REDES NEURONALES COMPETITIVAS HAMMING

Edmundo R. Durán C.

Estabilidad

1w(0)

2w(0)

p1

p3

p2

p5

p6

p7

p4

p8

1w(8)

2w(8)

p1

p3

p2

p5

p6

p7

p4

p8

Si los vectores de entrada no caen en clusters adecuados, entoncespara rangos de aprendizaje grandes la presentación de cada vector

de entrada modificará la configuración de tal manera que el sistema presentará una evolución continua.