Redes Neuronales Recurrentes -...

Post on 21-Sep-2018

250 views 2 download

Transcript of Redes Neuronales Recurrentes -...

Inteligencia Computacional II

Redes Recurrentes

Dra. Ma. del Pilar Gómez Gil Ciencias Computacionales,

INAOE pgomez@inaoep.mx Versión: 8-Junio-2015

Presentan retro-alimentación, esto es, la salida de un neurón se usa como entrada a sí mismo, o a otro que eventualmente se conecta a sí mismo.

La salida de la neurona tiene que calcularse usando valores de entrada y salida obtenidos en tiempos anteriores

Presentan características similares a la memoria humana

La operación de estas redes y de los algoritmos que se usan para entrenarlas se caracterizan a través de ecuaciones diferenciales o en diferencia

Redes Neuronales Recurrentes

2

(C) P. Gómez Gil. INAOE 2015

Neurodinámica

Se refiere al estudio de RNA vistas como sistemas dinámicos

no lineales, dando énfasis en el problema de estabilidad.

La presencia de estabilidad siempre implica alguna forma de

coordinación entre las partes individuales de un sistema.

La estabilidad en redes con retroalimentación global (redes

recurrentes) es difícil de alcanzar.

Fundamentalmente, las redes recurrentes pueden usarse

como memorias asociativas, o como sistemas de entrada-

salida.

[Haykin 2009]

(C) P. Gómez Gil. INAOE 2015 3

Sistemas dinámicos

Un sistema dinámico es aquel que cambia con

el tiempo

Un sistema dinámico se puede definir con un

modelo en el espacio de estados a través de un

sistema de ecuaciones diferenciales del tipo:

(C) P. Gómez Gil. INAOE 2015 4

))(()( ttdt

dj xFx

(C) P. Gómez Gil. INAOE 2015 5

Redes recurrentes inspiradas en

Física Estadística

Unidades de cómputo (neurones) no lineales.

Conexiones sinápticas (pesos) simétricas.

Uso abundante de retro-alimentación.

(C) P. Gómez Gil. INAOE 2015 6

Las Redes de Hopfield

Hopfield conceptualizó las redes neuronales como sistemas dinámicos con energía y mostró su semejanza con ciertos modelos físicos.

Hopfield propuso varios modelos de redes recurrentes. En este tipo de redes, la salida de cada neurón se calcula y se retro-alimenta como entrada, calculándose otra vez, hasta que se llega a un punto de estabilidad.

Supuestamente los cambios en las salidas van siendo cada vez mas pequeños, hasta llegar a cero.

Puede ser que una red recurrente nunca llegue a un punto estable.

Dr. John Hopfield

(C) P. Gómez Gil. INAOE 2015 7

Dinámica de las Redes

Recurrentes de Hopfield (1/2) Dada una red recurrente de N neurones con

acoplamiento simétrico, esto es wij = wji, donde wij es la

conexión de i a j, la salida del neurón j está dada por la

ecuación:

donde es la no-linealidad de tipo sigmoide del neurón

j.

son funciones en el tiempo.

jjjX

jX

j

j

j

(C) P. Gómez Gil. INAOE 2015 8

Dinámica de las Redes Recurrentes de

Hopfield (2/2)

Está dada por el conjunto de ecuaciones diferenciales no lineales acopladas del tipo:

Para j = 1,2, ... N

Controla el cambio del potencial (efecto capacitivo).

Pérdidas debido a resistencia en la entrada al elemento j.

j

j

j

jj

N

jii

ji

j

jR

vvW

t

vC

,1

umbralj

jC tv j

jR

(C) P. Gómez Gil. INAOE 2015 9

Configuración de la Red

Se utiliza principalmente con entradas binarias.

Se puede utilizar como una memoria asociativa, o para resolver problemas de optimización.

Una memoria asociativa o dirigida por contenido es aquella que se puede accesar teniendo una parte de un patrón de entrada, y obteniendo como resultado el patrón completo.

Hopfield también utilizó sus redes para resolver un problema de optimización: El agente viajero. Además construyó una red con circuitos integrados que convierte señales analógicas en digitales.

(C) P. Gómez Gil. INAOE 2015 10

Modelo Básico de Hopfield

n es el número de nodos en la red.

Las entradas Xo, X1 ... Xn-1 se aplican a la red en el tiempo

t = 0. Pueden tomar valores de +1 ó -1.

Las salidas Uo, U1... Un-1 se van calculando y recalculando, hasta que sus valores ya no cambian. Cuando esto sucede, se tiene la salida de la red, y X’i = Ui para i= 1.. n-1

(C) P. Gómez Gil. INAOE 2015 11

Algoritmo de Entrenamiento de la red Hopfield

Paso único: Calcule los valores de los pesos que conectan a los nodos,

utilizando la siguiente fórmula:

donde es el peso que va del neurón i al neurón j, y es el valor del i-ésimo elemento de la s-ésima clase; m es el número de clases que se desean aprender. En notación matricial:

Lo que se conoce como el producto externo (outer product) de un vector renglón consigo mismo.

0

1

0

jisi

jisixxt

m

s

jsisij

ijtisx

0 t, ii i

i

T

i XXT

Algoritmo de evaluación de la red Hopfield

(1/2)

Paso 1. Inicialice la red con un patrón de entrada:

donde n es el número de nodos en la red

(C) P. Gómez Gil. INAOE 2015 12

1ni0XU ii )0(

(C) P. Gómez Gil. INAOE 2015 13

Algoritmo de evaluación de la red

Hopfield (2/2)

Paso 3. Itere hasta converger siguiendo la siguiente fórmula:

donde F es una función escalón definida como:

Cuando la red converge, su salida representa al patrón que más se parece al

patrón de entrada dado.

cambio)(sin 0 si )(

0 si 1

0 si 1

)(

xtU

x

x

xF

j

1nj0tUtFtUn

i

iijj

))(()1(1

0

(C) P. Gómez Gil. INAOE 2015 14

Ejemplo

Almacenar en una Red Hopfield los siguientes patrones:

1111

1111

1111

1111

1111

1

1

1

1

1111

1111

1111

1111

1111

1

1

1

1

)1 ,1,1,1(

)1 ,1 ,1 ,1(

22

11

2

1

xx

xx

x

x

T

T

(C) P. Gómez Gil. INAOE 2015 15

Ejemplo (cont.)

T

diagonalhaciendo

xxxxTTT

0222

2022

2202

2220

0_

,

2222

2222

2222

2222

2211

(C) P. Gómez Gil. INAOE 2015 16

Ejemplo (cont.) Supongamos que deseamos recuperar el patrón mas cercano a:

En este punto U(1), es igual al U(0), por lo que el sistema ya está estable y el proceso termina.

El patrón mas parecido a A es (1 1 1 -1)

1111 A

AU 0

1111)0(1

6666

0222

2022

2202

2220

1111)0(

TUFU

TU

(C) P. Gómez Gil. INAOE 2015 17

Ejemplo (cont.)

!12 11112

6666

0222

2022

2202

2220

11111

!01 111101

6222

0222

2022

2202

2220

11110

FINUUU

TU

UUTUFU

TU

2) Ahora hallaremos el patrón mas parecido a 1111 A

(C) P. Gómez Gil. INAOE 2015 18

Representación del sistema

dinámico de Hopfield

[Zurada 92]

(C) P. Gómez Gil. INAOE 2015 19

EJEMPLO DE APRENDIZAJE CON HOPFIELD

La siguiente figura, publicada en (Lippman 87), muestra el

resultado obtenido al construir una memoria asociativa utilizando

una red de Hopfield con 120 nodos.

La red fue entrenada con los patrones mostrados en la parte

superior de la figura. Después de entrenada, se le mostró a la

red el número "3", distorsionado de manera aleatoria,

Cambiando cada bit con una probabilidad de 0.25. Este patrón

se aplicó en el tiempo t = 0. Las salidas obtenidas en t = 0 y en

las primeras 7 iteraciones se muestran en la parte posterior de la

figura.

(C) P. Gómez Gil. INAOE 2015 20

Ejemplo del comportamiento de la

red Hopfield [Lippman 87]

(C) P. Gómez Gil. INAOE 2015 21

VENTAJAS Y DESVENTAJAS DE LAS REDES DE

HOPFIELD

- Prácticamente no existe tiempo de entrenamiento, ya que este no

es un proceso adaptativo, sino simplemente el cálculo de una matriz

(T).

- Las redes de Hopfield son bastante tolerantes al ruido, cuando

funcionan como memorias asociativas.

- El número de patrones a almacenar (o aprender) es bastante

limitado comparado con el número de nodos en la red. Según

Hopfield, el número de clases a aprender no puede ser mayor de

0.15 veces el número de nodos en la red.

- La red se vuelve inestable si los patrones se parecen entre sí.

A Hopfield net at hardware

(C) P. Gómez Gil. INAOE 2015

[Zurada 1992]

22

(C) P. Gómez Gil. INAOE 2015 23

Redes con retrasos

Incluyen memoria introduciendo retrasos de tiempo en

la estructura sináptica de la red y ajustando sus valores

durante el entrenamiento. (Se sabe que en el cerebro

se manejan señales retrasadas).

Un ejemplo de esta metodología es la red "Time Delay

Neural Network" (TDNN) descrita por Lang y Hinton en

1988 y por Waibel en 1989.

Es una red hacia delante de varios niveles cuyos

neurones escondidos y de salida se repiten a través

del tiempo.

Una red totalmente Recurrente

(c) INAOE 2015

I1

I2 w02

w10

w21

w1

w20

w11

w22

w12

w01 w00

I3

24

(C) P. Gómez Gil. INAOE 2015 25

Características de un modelo de

red recurrente

El cálculo de la salida yi, de cada neurón i, esta dado por:

donde: Xi representa la entrada total al i-ésimo neurón que viene de otros

neurones,

Ii es la entrada externa al neurón i,

Wji es la conexión del neurón i al neurón j y

es un función diferenciable cualquiera, normalmente una sigmoide:

iiii Ixyt

y

)(

j

jjii ywx

(C) P. Gómez Gil. INAOE 2015 26

Dinámica del neurón La dinámica del neurón puede expresarse usando

ecuaciones de recurrencia:

Hay varias soluciones a la minimización de E, (por ejemplo, ver

Pearlmutter B.A. "Learning State Space Trayectories in Recurrent

Neural Networks" Neural Computation, Vol. 1 pp. 263-269, 1989).

iiiii Ixty

t

tytty

)()(

)()(

])()([)()( iiiii Ixtyttytty

))()(()()( iiiii Ixtyttytty

(C) P. Gómez Gil. INAOE 2015 27

Entrenamiento de Redes

Recurrentes Hay dos metodologías básicas de entrenamiento de

redes recurrentes:

Retropropagación a través del tiempo. Creada originalmente en

la tesis de P. Werbos (1974), (1990). Redescubierta

independientemente por Rumelhart et al. (1986) y una variación

propuesta por Williams y Peng (1990).

Aprendizaje Recurrente al Tiempo Real (Real Time Recurrent

Learning). Descrito por Williams y Zipsen (1989), los orígenes

del algoritmo fueron dados por McBride y Nardendra (1965)

BPTT

(C) P. Gómez Gil.

INAOE 2015

Backpropagation through time (BPTT) is

an algorithm that attempts to minimize the

error obtained over a period of time

between the output of a neuron and the

desired value of such output.

It was originally proposed by Werbos

(1990).

28

ERROR

(C) P. Gómez Gil.

INAOE 2015

The total error in an output neuron is

represented by:

29

OUTPUT NUERONS

(C) P. Gómez Gil.

INAOE 2015

In a discrete form:

30

LEARNING

(C) P. Gómez Gil.

INAOE 2015

Pearlmutter (1989) found that the

modification to the weights (learning) can

be described by the equation:

31

LEARNING (2)

(C) P. Gómez Gil.

INAOE 2015

Using a discrete notation:

32

(c) INAOE 2015 33

PEARLMUTTER’S ALGORITHM (1/5)

(C) P. Gómez Gil.

INAOE 2015

Gómez-Gil, 1989

34

PEARLMUTTER’S ALGORITHM (2/5)

(C) P. Gómez Gil.

INAOE 2015 35

PEARLMUTTER’S ALGORITHM (3/5)

(C) P. Gómez Gil.

INAOE 2015 36

PEARLMUTTER’S ALGORITHM (4/5)

(C) P. Gómez Gil.

INAOE 2015 37

PEARLMUTTER’S ALGORITHM (5/5)

(C) P. Gómez Gil.

INAOE 2015 38

ALGORITHM TO PREDICT A

TRAJECTORY

(C) P. Gómez Gil.

INAOE 2015 39

Redes NARX

(C) P. Gómez Gil. INAOE 2015 40

REFERENCES

(C) P. Gómez Gil.

INAOE 2015

Gómez-Gil, P. “The effect of non-linear Dynamic Invariant in the Recurrent Neural Networks for Prediction of Electrocardiograms.” María del Pilar Gómez Gil. PhD dissertation in Computer Science, Texas Tech University. December 1998.

Gómez-Gil P, Ramírez-Cortés JM, Pomares Hernández SE, Alarcón-Aquino V. “A Neural Network Scheme for Long-term Forecasting of Chaotic Time Series” Neural Proceesing Letters. Vol.33, No. 3, June 2011. pp 215-233. Published online: March 8, 2011. DOI: 10.1007/s11063-011-9174-0 (cited at JCR Science Edition—2009). (preliminary PDF)

Pearlmutter, B. (1990). Dynamic Recurrent Neural Networks. Technical Report CMU-CS-90-196. School of Computer Science, Carnegie Mellon University, Pittsburgh MA.

Werbos, P. (1990). Backpropagation Through Time: What it Does and How to Do it”. P IEEE , 74 (10), 1550-1560.

41