Está en la página 1de 25

Capítulo 4

La Memoria de BAM/Hopfield
Uso de parte de la Información para recuperar el remanente
asociado

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 1


Memoria Asociativa
• Definición: Sean P pares de vectores {(x1,y1),..,
(xP,yP)} con xpRN e yp RK, conjunto llamado
muestra. Entonces la función
M: RNRK con N,K y P  N+ se llama una
Memoria Hetereoasociativa ssi:
– M(xp)=yp p=1,..,P
– M(x)=yp para todo x tal que ||x-xp||<|| x-xl||
l=1,..,P, lp

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 2


Memoria Asociativa
• Definición: Sean P pares de vectores {(x1,y1),..,
(xP,yP)} con xpRN e yp RK, conjunto llamado
muestra. Entonces la función
• M: RNRK se llama memoria asociativa
interpolativa ssi:
M ( x p )  yp p  1,.., P
d   e tal que M ( x p  d )  y p  e
d  N , e  K
ie, si x  x p entonces y  M ( x)  y p , p  1,.., P

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 3


Memoria Asociativa

La memoria asociativa interpolativa se puede


construir desde un conjunto ortonormal de
vectores {xp} , p=1,.. P. Entonces la función
M se define como
 P T 
 M ( x)    y p x p  x
 p 1 

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 4


Memoria Asociativa
• Definición:Sean un conjunto de P vectores
{x1,..,xP} con xpRN , N, PN+ conjunto llamado
muestra. Entonces la función M: RNRN se dice
que implementa una memoria autoasociativa
ssi:

M (xp )  xp p  1,.., P
M ( x)  x p x : || x  x p |||| x  xl || l  1,.., P l  p

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 5


La Arquitectura BAM
• BAM(Bidirectional Associative Memory):
Implementa una memoria asociativa
interpolativa y consiste en dos capas de
neuronas totalmente conectadas.

• La entrada y salida se pueden cambiar intercambiar ,


i.e., las direcciones de las flechas se invierten.

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 6


Estructura de una red BAM

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 7


La Arquitectura BAM
P
• Matriz de Pesos: W   yp xp
T

p 1
– {xp}p=1, P conjunto ortogonal.
• Salida de la red: y=W x
• Función de activación: f (x)=x
• Si {yp} es ortogonal, entonces la red es
reversible: x = Wt y
• La red puede ser usada como memoria
autoasociativa considerando
P
xy,
entonces: W  
p 1
x x
p p
T

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 8


Dinámica de la BAM
– En las ANN-BAM los pesos no son ajustados
durante el período de entrenamiento. Se calculan
desde la partida a partir de un conjunto de
vectores a ser almacenados: {xp,yp}p=1,..,P
– Se usan vectores bipolares (con valores -1 o 1)
pertenecientes al espacio de Hamming.
– x = 2x* -1 ( con valores “0” o “1”)
– A partir de {xp } e {yp } ortonormales  BAM
– El proceso de  trabaja en tiempo discreto.

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 9


Distancia de Hamming

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 10


Procedimiento
• En t=0, x= 0 es aplicado a la red y se calcula y(0)=W x(0)
• La salida de las capas x e y son propagadas hacia adelante y atrás hasta
que se alcanza un estado estable usando:

 1 si W (:, i )T y (t )  0

xi (t  1)  f (W (:, i ) y (t ))   xi (t ) si W (:, i )T y (t )  0, i  1,.., N
T


  1 si W (:, i ) T
y (t )  0
 1 si W ( j , :)T x(t  1)  0

y j (t  1)  f (W ( j , :) x(t  1))   y j (t ) si W ( j , :)T x(t  1)  0, j  1,.., K

  1 si W ( j , :) T
x(t  1)  0
forma matricial :
x (t  1)  sign(W T y (t )) | sign(W T y (t )) |c  x (t )
y (t  1)  sign(W T x(t  1)) | sign(W T x(t  1)) |c  y (t )
Condición estable : sign(W T y (t ))  sign(W T x (t  1))  0̂
Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 11
Procedimiento
– Cuando se trabaja en el proceso inverso y(0) es
aplicado a la red, x(0)=WT y(0) es calculado a
partir :
y (t  1)  sign(Wx (t )) | sign(Wx(t )) |C  y (t )

x(t  1)  sign(Wy (t  1))  | sign(Wy (t  1)) |C  x(t )

Condición estable : sign(W T x(t ))  sign(W T y (t  1))  0̂

– El sistema resultante es un sistema dinámico :


  Solución estable
– El proceso converge a la solución en tiempo finito

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 12


Función de Energia de la BAM
• Función de Energía de la BAM:
E(x,y)=-yt W x
• Teorema:La función de energía tiene las
siguientes propiedades:
i ) Et 1 ( x(t  1), y (t  1))  Et ( x(t ), y (t ))

ii ) Emin   | w ji |
j ,i

iii )E  Et 1  Et  

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 13


Función de Lyapunov

Obervaciones
• Se puede verificar que la función de Energia es una
función de Lyapunov y por lo tanto el sistema dinámico
posee una solución estable.
• En esencia la matriz de pesos determina una superficie con
valles ( depresiones atractivas ) y colinas similares al BPL
• BAM se parece a un sistema fisico disipativo, en el que la
función E, corresponde a la energía del sistema fisico
• Inicialmente los cambios de E(x,y) son grandes y a medida
que los vectores x e y , van alcanzando su estado estable el
valor de E tiene cambios más pequeños

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 14


•Proposición: Si el patrón de entrada xl es igual al guardado {xp}
entonces se obtiene yl

P
y  sign(Wx(t ))  sign( y p x x ) t
p l
p 1
DEM: P
sign( y p pl )  sign( yl )  yl
p 1

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 15


• Observación:
– El proceso de ejecución es convergente y la solución se
alcanza en tiempo finito.
– El numero máximo de vectores que pueden ser
guardados son 2N-1.
– Los vectores de Hamming son simétricos con respecto
a la notación 1. Por lo tanto el vector de Hamming
lleva la misma información que su complemento xc.
• Como xC = -x e yp= W xp,
se tiene: ypC = - yp = W xp = W(-xp) = W xpc
– La BAM guarda la dirección de los vectores de la
muestra y no sus valores.

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 16


El Algoritmo de la BAM
• Inicialización de la red: Calcular la matriz de pesos W.
• Red recursiva Forward:
– Dado x(0), calcular y(0) =W x(0)
– Calcular: x (t  1)  sign(W T
y (t )) | sign(W T y (t )) |c  x (t )

y (t  1)  sign(W T x (t  1))  | sign(W T x (t  1)) |c  y (t )


Hasta estabilizar la red
• Red recursiva Backward:
– Dado y(0), calcular x(0) = WT y(0)
– Calcular: y (t  1)  sign(Wx(t )) | sign(Wx(t )) |C  y (t )
x(t  1)  sign(Wy (t  1)) | sign(Wy (t  1)) |C  x(t )

Hasta estabilizar la red.

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 17


La Estructura de Memoria
Autoasociativa

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 18


Memoria de Hopfield Discreta

• Consiste en una memoria autoasociativa


con una capa totalmente conectada la que
adicionalmente recibe una señal de entrada
externa x.
P
W   yp yp
T

p 1

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 19


La Memoria de Hopfield

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 20


Memoria discreta de Hopfield
• Características:
– Trabaja con vectores binarios {0,1}.
– Matriz peso: P
W   (2 y p  1̂)(2 y p  1̂)T
p 1  K
 1 si  w ji yi  x j  t j
con la diagonal igual a 0.  i 1
– Función de actualización:  i j

 K
y j (t  1)   y j (t ) si  w ji yi  x j  t j
 i 1
i j

 K

0 si  w ji yi  x j  t j
donde {tj}j=1,K = t es el vector umbral 

i 1
i j

– Notación matricial:

A(t )  sign(Wy (t )  x  t )
1
y (t  1)  [ A(t )  1̂ | A(t ) |c ] | A(t ) |c  y (t )
2
Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 21
Función de Energía
• Función de energía de la memoria discreta de
Hopfield: 1 T T
E y Wy  y ( x  t )
2
• Teorema: Propiedades de la función de energía:
i ) Et 1[ y (t  1)]  Et [ y (t )]
1
ii ) Emin    | w ji |  K
2 j ,i

iii )E  Et 1  Et  
• El proceso de iteración converge en tiempo finito.

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 22


Memoria Continua de Hopfield

• Función de activación:
1  tanh(a )
f (a)  ( )   
2
 parámetro de ganancia

• Inversa de la función de activación:


( 1) 1 y
f ( y)  ln[ ]
2 1 y

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 23


Memoria de Hopfield Continua
• Ecuación diferencial que describe la evolución:
da j K
1
dt
 w
i 1
ji yi  x j 

t ja j
i j

Notación matricial :
da 1
 Wy  x  t a
dt 
• En aproximación de tiempo discreto, el
procedimiento de actualización:

 1 y (t ) 
y (t  1)  y (t )  Wy (t )  x  t  ln   y (t )  [1̂  y (t )]

  1̂  y ( t ) 
Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 24
Memoria de Hopfield Continua
• Función de Energía de la memoria de Hopfield:
yj
1 K K
1 K
E   j ji i 
2 i , j 1
y w y 
j 1
x j y j 

t 
j 1
j f ( 1)
( y ' ) dy '
0
i j

• Teorema: Propiedades de la función de energia:


– dE 1 K
i) ii ) E  
0 | w | Kmin
2
 ji
dt j ,i 1
j i

– El proceso iterativo es convergente.


 +, entonces se tiene el caso discreto
– 0, existe solo 1 estado estable y  1 1̂
2

Profesor: Dr. Héctor Allende Redes Neuronales Artificiales 25

También podría gustarte