Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más...

24
Redes Asociativas

Transcript of Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más...

Page 1: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Redes Asociativas

Page 2: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)
Page 3: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Redes Asociativas

• Redes que realizan una asociación de ideas memoria asociativa

• El modelo más representativo y conocido son las redes de Hopfield (1982)

• La redes feedforward:

- Estables.

- Comportamiento limitado.

• Hopfield intenta mejorar el comportamiento añadiendo elementos de memoria redes realimentadas o feedback.

• El problema de las redes realimentadas es la estabilidad.

Page 4: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

John J. Hopfield

Page 5: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Redes de Hopfield

• Normalmente las redes de Hopfield no son adaptativas, los pesos vienen dados por las matrices de entrada, y no “aprenden”. Existe un caso particular que si es adaptativo y los pesos pueden llegar a aprenderse..

• Por su comportamiento son redes hebbianas

•Pueden trabajar en binario y en bipolar. Hay modelos de entradas continuas

1x ix 1nx nx

. . .

1y iy 1ny ny

1 i n

0ii

i 1nn-1n1

Page 6: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Funcionamiento

)()1( jaj netfty

ji

jiijj xtywnet )(donde

• Trabajando en bipolar, la salida de cada neurona es:

jjj

jj

jj

j

netsity

netsi

netsi

ty

)(

1

1

)1(

Page 7: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Funcionamiento

• La señal inicial está entrando constantemente.

• El estado de la red corresponde al vector de salida en un momento dado:

),...,,( 21 nyyyy

• Los cambios de estado son:

- Discretos en tiempos aleatorios (asincrónicamente).

Page 8: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Funcionamiento

• La visualización es sencilla. Suponer un sistema con 3 neuronas, con dos vectores que se quieren aprender: (101) y (000).

000

001 010

111

101 110

011

Page 9: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Estabilidad

• Un vértice estable viene determinado por:

- Los pesos.

- Las entradas.

- El valor del umbral.

• Se supone la existencia de una función que decrece cuando la red cambia de estado y que se para al alcanzar un mínimo:

- Red estable.

- La función es una función de Liapunov.

iw

ww

ii

jiij

0W es estable

• Para garantizar la estabilidad:

- El sistema es asíncrono, la matriz ha de ser simétrica y la diagonal igual a cero:

Page 10: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Función de Liapunov

• V(x) es una función de Liapunov en un entorno si se cumple:

1.- V(x) es continua en .

2.- V(x) tiene un mínimo en .

3.- Toda trayectoria continua en , V(x) es decreciente.

• Esta función V(x) se denomina E (energía) para las redes de Hopfield.

• Se trata de encontrar la función E para cada caso concreto.

• La forma de la función E es:

i j

jjj j

jjjiij yyxyywE )2

1(

donde yj es la salida de la neurona j, xj es la entrada externa de la neurona j y j es el umbral de la neurona j.

Page 11: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Función de Liapunov• El dE producido por un cambio en la neurona j es:

donde netj es la entrada neta a la neurona j.

ijjiji

jjiij dynetdyxywdE ][])([

• En función de la relación entre netj y j : Con la función de

activación definida

- Si netj >j [netj -j]>0 yi o cte dyi0 dE0 E .

- Si netj <j dyi0 dE0 E .

- Si netj =j dE=0. La energía se reduce o se mantiene por cambios en el estado de la

red estabilidad.

• Utilizando esta función, la energía disminuyen en cualquier

trayectoria independientemente de cómo varíe la yj.

Page 12: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Cálculo de pesos• Calculados a priori, no se adaptan.

jisiw

jisiww

ij

m

p

pijij

0

1

• Para almacenar m patrones:

• La matriz de pesos W es de dimensiones nxn, donde n es el número de neuronas, o sea el número de componentes de los vectores.

jisiw

jisixxwpij

Tipip

pij

0

)(

• Para cada patrón a almacenar:

Page 13: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Ejemplo

011

101

110

111

1

1

1

1W

)1,1,1(1 x

• Se almacena el patrón

011

101

110

111

1

1

1

2W

)1,1,1(2 x

• Se almacena un segundo patrón

Page 14: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Ejemplo

002

000

200

21 WWW

• La matriz que almacena los dos patrones es:

• Para pasar los valores de entrada de binario a bipolar se cambia:

binariox

bipolary=2x-1

Page 15: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Algortimo1.- Inicializar los pesos para almacenar los vectores de entrada.

b) Para cada neurona i hacer una actualización en orden aleatorio:

• Actualizar y enviar yi (t+1) a todas las neuronas.

3.- Test de convergencia.

• Si no, ir a 2.

2.- Para cada vector de entrada x

a) Calcular nixy ii ,...,1)0(

ij

iijji xwtynet ))((

iii

ii

ii

i

netsity

netsi

netsi

ty

)(

1

1

)1(

• Si no hay cambios en (t+1) con respecto a (t) la red ha convergidoy

y

Page 16: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Ejemplo

• Dado el vector de entrada (1,1,1,-1) ver si la red también converge para el vector erróneo (-1,1,1,-1).

1.-

2.- )1,1,1,1()0( xy

0111

1011

1101

1110

1W

Page 17: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Ejemplo

3.- Secuencia de actualización: 4, 3, 1,2.

211)0,1,1,1()1,1,1,1(1444 i

iixyxnet

)1,1,1,1()1(1)1(0 44 yynet

211)1,0,1,1()1,1,1,1(1333 i

iixyxnet

)1,1,1,1()1(1)1(0 33 yynet

431)1,1,0,1()1,1,1,1(1222 i

iixyxnet

)1,1,1,1()1(1)1(0 22 yynet

• Se puede ver como la red converge y corrige el error.

• Si el vector de entrada fuese (-1,-1, 1,-1) la red no converge, es incapaz de corregir los 2 errores

231)1,1,1,0()1,1,1,1(1111 i

iixyxnet

)1,1,1,1()1(1)1(0 11 yynet

Page 18: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Sistemas Continuos

• Se utiliza como función de activación una función continua:

)1(

1)(

netenetf

Page 19: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Capacidad de la Red

• Existen 2n posibles estados.

• Hopfield determinó experimentalmente el límite 0.15n, donde n es el número de neuronas.

• Mejora utilizando:

- Patrones simétricos: #{-1} #{+1}

- Patrones ortogonales: Pi Pj xi•xj=0

• La red puede caer en mínimos locales:

- Utilizar métodos estadísticos para solucionarlo.

- Métodos lentos pero funcionan.

Page 20: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Aplicaciones: Optimización

• El problema es encontrar una función de Liapunov adecuada, considerando dos restricciones:

- Fuertes: “Cada ciudad es visitada sólo una vez”

- Débiles: “El camino ha de ser mínimo”

• Se busca la solución de menor coste Minimizar el camino.

“El problema del viajante”

• Problema NP-completo.

• Al igual que Kohonen , las redes de Hopfield solucionan este problema; da una buena solución, aunque no la óptima.

n

n

2

!• Dadas n ciudades caminos.

Page 21: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Aplicaciones: Optimización“El problema del viajante”

• Hopfield da una solución, que minimiza la energía:

x xy iyyxxy

x ix

x i xyyx

x i ijxx

iii

i

ii

ji

yyydD

nyC

yyB

yyA

E

)(2

)(2

2

2

11

2

donde el primer término será 0 si no se repiten ciudades, el segundo si no se repite el orden y el tercero si son exactamente n ciudades. El último término corresponde al camino más corto.

Page 22: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Redes BAM (Bidirectional Associative Memory)

X

Y

Z

• Muy relacionadas con Hopfield.

•Como memoria asociativa permiten recuperar información incompleta o errónea.

Page 23: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Redes BAM (Bidirectional Associative Memory)

•Normalmente heteroasociativas.

1x

1y

•Dada una entrada , se calcula utilizando la matriz de pesos W.

1z

• Se calcula utilizando la matriz de pesos WT.

...322111 TTT WWWWWW yzyzyx

• La calculada realimenta la entrada, y así sucesivamente:1z

• Se termina cuando y sean estables.y

z

• El vector sólo entra la primera vez.1x

Page 24: Redes Asociativas. Redes que realizan una asociación de ideas memoria asociativa El modelo más representativo y conocido son las redes de Hopfield (1982)

Capacidad de Memoria

• No muy buenos resultados cuando se han de almacenar muchos patrones.

• Funcionan bien para pocos patrones.

• Mejor si los patrones son simétricos: #{-1} #{+1}

• Los mejores casos son aquellos en que se hace un pre-tratamiento de la información; se conoce muy bien lo que se ha de reconocer (Ex: matrículas).

• Muy robusta a la aparición de ruido.