Sei sulla pagina 1di 23

REDES NEURONALES ARTIFICIALES

Modulo IX

MODULO IX:
Redes Neuronales de Base Radial

Universidad de Guadalajara

Mquinas de Vector Soporte

Centro Universitario de Ciencias


Exactas e Ingenieras

Redes Neuronales Recurrentes

M.C. Jorge Daniel Ros Arraaga


1

Redes Neuronales Recurrentes


Por su conexin las redes neuronales de dividen en:
Prealimentadas (Feedforward neural networks): La informacin solo va en una direccin. De los
nodos de entrada a los node de las capas escondidas (si existen) y a los nodos de salida.

Perceptron, Adaline, Perceptron Multicapa, Redes de Base Radial,

Recurrentes (RNN, por sus siglas en ingls, Recurrent Neural Networks): Tiene conexiones

entre sus nodos que pueden formar ciclos. Estos ciclos crean un estado interno que les
permite mostrar un comportamiento dinmico.

Hopfield, Echo State, Long Short Term Memory Network, Redes Neuronales Recurrentes de
Segundo orden, Redes Neuronales Recurrentes de Alto Orden,

Notas
Sistema: es un conjunto de elementos interdependientes, es decir ligados entre s por

relaciones tales que si una es modificada, las otras tambin lo son y que, en consecuencia,
todo el conjunto es modificado.

Sistema Dinmico: es un sistema en los que determinados parmetros (Por ejemplo: la


velocidad, posicin, temperatura) evolucionan con el transcurso del tiempo.

Retroalimentacin (Feedback): Es un mecanismo por el cual cierta proporcin de la

salida de un sistema se redirige a la entrada, con objeto de controlar su comportamiento.


Existe en un sistema dinmico cada vez que un elemento de la salida influye en parte de la
entrada aplicada.
3

Redes Neuronales Recurrentes

Ejemplos de redes
neuronales recurrentes

Ejemplos de neuronas con


conexiones recurrentes

Hopfield

Red Recurrente de 2dn Oden

Red Echo-State

Long short term memory

Redes Neuronales Recurrentes


A diferencia de las redes prealimentadas, las Redes Neuronales Recurrentes son descritas por
ecuaciones diferenciales (caso continuo) o en diferencias (caso discreto) que definen la
exacta evolucin del modelo en funcin del tiempo.

Las RNNs pueden realizar tareas que no le son posibles realizar a las redes estticas.
Prediccin no lineal
Modelado
Control
Representacin en espacio de estados
5

Notas
Estado: Conjunto mnimo de variables que describe el comportamiento de la salida del
sistema.

Espacio de estados: Modelo matemtico de un sistema descrito mediante un conjunto de


entradas, salidas y variables de estado relacionadas por ecuaciones diferenciales o en
diferencias. Provee un modo compacto de modelar y analizar sistemas con mltiples
entradas y salidas.

Redes Neuronales Recurrentes


Las conexiones recurrentes que le dan comportamiento dinmico a las RNNs facilitan el
tratamiento de informacin temporal o patrones dinmicos.

Un patrn dinmico es aquel que depende del tiempo, el valor del patrn en un instante de
tiempo depende de sus valores anteriores.

Las conexiones recurrentes implican un aumento en el nmero de pesos, lo cual permite que
aumente la capacidad de representacin.

El aumento de pesos, y sobre todo la inclusin de estos de manera recurrente complica el


aprendizaje.

Redes Neuronales Recurrentes


La activacin de una neurona ahora depende de las activaciones de las

neuronas capa anterior, de cualquier neurona de la red conectada a ella e


incluso de su propia activacin.

Ahora es necesario incluir en la activacin o estado de la neurona el tiempo.


+ 1 =

donde representa al conjunto de todas las neuronas conectadas a la neurona .


8

Poder Computacional de las Redes Neuronales


Recurrentes
En 1967 Minsky declaro en su libro Computation: Finite and Infinite Machines
Cada mquina de estados finitos es equivalente a, y puede ser simuladas por alguna red neuronal.
Esto es, dada una mquina de estados finitos , podemos construir una red neuronal que
considerada una caja negra , se comportar exactamente igual a

En 1995 Kremer prueba formalmente que una RNN simple tiene un poder computacional
tan grande como el de cualquier mquina de estados finitos.

Notas
Mquina de estados: es modelo de comportamiento de un sistema con entradas y
salidas, definido como un conjunto de estados que sirve de intermediario en la
relacin de entradas y salidas, haciendo que el historial de seales de entrada
determine, para cada instante, un estado para la mquina, de forma tal que la salida
depende nicamente del estado y las entradas actuales.

Mquina de estados finitos: es una mquina de estados donde el conjunto de

estados es finito.
Este es el nico tipo de mquinas de estados que se pueden modelar en una computadora en
la actualidad.*

10

Redes Neuronales Parcialmente Recurrentes


Son redes multicapa en la que se introducen slo unas pocas conexiones recurrentes.
Las conexiones recurrentes le permiten recordar el estado de ciertas neuronas de la red en
un pasado reciente.

Generalmente, existe un grupo de nodos especiales en la capa de entrada llamados nodos de


contexto o nodos de estado, que son los receptores de las conexiones recurrentes.

Concatenando los nodos de entrada y los de contexto este tipo de red se puede ver como
una red multicapa esttica.

El clculo de las activaciones de las neuronas de la red se realiza como en un red multicapa
sin recurrencias.

11

Redes Neuronales Parcialmente Recurrentes


Las conexiones recurrentes en las redes parcialmente recurrentes suele ser conexiones uno a

uno y con parmetros fijos, por lo cual no estn sometidos a aprendizaje, lo cual permite que
el aprendizaje se pueda llevar a cabo utilizando el algoritmo de retropropagacin.
Nodos
de entrada

Nodos
de contexto
12

Redes Neuronales Totalmente Recurrentes


No existe restriccin en la conectividad.
La activacin de una neurona depende de la activacin de las dems neuronas y de la suya.
Los parmetros de las conexiones no son fijos, estn sometidos aun proceso de adaptacin o
aprendizaje.

Aumenta la capacidad de representacin de la red y se complica el algoritmo de aprendizaje.


El algoritmo de retropropagacin tradicional no puede aplicarse directamente, debido a que
los pesos de la red presentan una configuracin diferente.

13

Entrenamiento de una Red Recurrente


Se tienen dos modos de entrenamiento de RNNs:
1. Entrenamiento por pocas
2. Entrenamiento continuo

14

Entrenamiento de una Red Recurrente


Entrenamiento por pocas

Para una poca, la RNN utiliza una secuencia temporal de pares entrada-salida e inicia desde un estado

inicial hasta que alcanza otro estado, en ese punto se detiene el entrenamiento y la RNN se reinicia a un
estado inicial para la siguiente poca.

El estado inicial no tiene que ser el mismo para cada poca. Lo que importa es que el estado inicial
para la nueva poca sea diferente del estado alcanzado por la RNN al final de la poca anterior.

Por ejemplo, en el uso de RNN para emular la operacin de una mquina de estados finitos. En esta
situacin, es razonable usar entrenamiento por pocas debido a que se tiene un nmero distinto de
estados iniciales y un conjunto distinto de estados finales.

Cada poca es una cadena consecutiva temporal de pares entrada salida.


15

Entrenamiento de una Red Recurrente


Entrenamiento continuo

Este entrenamiento es adecuado para situaciones donde no hay estados a reiniciar o se requiere un

entrenamiento online. La diferencia principal es que la red aprende mientras se realiza el procesamiento
de la seal.

El proceso de entrenamiento nunca se detiene. (Para cuando se finaliza el programa)


Por ejemplo, el uso de una RNN para modelar un proceso no estacionario como una seal de voz. En
esta situacin, la operacin de la red no ofrece tiempos convenientes para parar el entrenamiento y
reiniciar con valores diferentes para los parmetros libres de la red.

16

Entrenamiento de una Red Recurrente


Los principales algoritmos de entrenamiento de redes recurrentes son:
El algoritmo de retropropagacin a travs del tiempo (BPTT, por sus siglas en ingls, Back-Propagation

Through Time): opera bajo la premisa que la operacin temporal de una RNN puede ser desdoblada en el
tiempo en un perceptrn multicapa. Esto lleva a la aplicacin del algoritmo estndar de retropropagacin. El
algoritmo BPTT puede ser implementado por pocas o continuo (tiempo real) o en una combinacin.

El algoritmo de aprendizaje recurrente en tiempo real (RTRL, pro sus siglas en ingls, Real-Time Recurrent

Learning): Este algoritmo calcula las derivadas de los estados y las salidas con respecto a todos los pesos de la
red mientras la red procesa la secuencia, esto es durante el paso hacia adelante. No es necesario el proceso de
desdoblamiento en el tiempo. Se deriva a partir del siguiente modelo.

+1 = +
=

Donde , y son matrices de dimenciones , , ,


respectivamente. : .
17

Entrenamiento de una Red Recurrente


Ambos algoritmos involucran la propagacin de derivadas, un direccin hacia atrs y en
direccin hacia adelante.

BPTT requiere menos clculos que RTRL, pero RTRL requiere menos espacio en memoria.
BPTT es mejor para entrenamiento fuera de lnea y RTRL es mejor para entrenamiento en
lnea.

Ambos mtodos se basan el gradiente descendiente, donde el valor instantneo de la funcin


de costo es minimizado con respecto a los pesos sinpticos de la red.

Son relativamente simples de implementar, pero pueden tener baja convergencia.


18

Entrenando RNN con Algoritmo de


Retropropagacin en el Tiempo
Desdoblamiento en el tiempo (Unfolding)
Sea la RNN a aprender una tarea temporal, desde el tiempo 0 hasta . la red

feedforward que resulta se desdoblar la RNN . La red se relaciona a la original en:

Para cada instante de tiempo en el intervalo (0 , ]. La red tiene una capa con , donde es
el nmero de neuronas que tiene la red .

En cada capa de , existe una copia de cada neurona en la red .

Para cada instante de tiempo (0 , ], la conexin sinptica de la neurona en la capa a la

neurona en la capa + 1 de la red es una copia de la conexin sinptica de la neurona a la


neurona en la red .

19

Entrenando RNN con Algoritmo de


Retropropagacin en el Tiempo

20

Entrenando RNN con Algoritmo de


Retropropagacin en el Tiempo

21

Arquitecturas de Redes Recurrentes


Por nombrar algunas:

Redes Recurrentes Totalmente Conectadas


Red de Hopfield
Red de Elman
Red de Jordan
Red Echo-State
Long Short Term Memory (LSTM)
Red Neuronal Recurrente Bidireccional

Red Neuronal Recurrente Continua


Red Neuronal Recurrente Jerrquica
Perceptrn multicapa recurrente
Red Neuronal Recurrente de Segundo
Orden

Maquinas de Turing neuronales


Memoria Asociativa Bidireccional (BAM)

Redes secuenciales en cascada de Pollack


22

Actividad 9
1. Describe con tus palabras la diferencia entre Redes Prealimentadas (Feedforward)
y Redes Recurrentes?

2. Cul es la ventaja de la recurrencia en las Redes Neuronales Recurrentes?


3. Cules son los mtodos de entrenamiento ms usados para entrenar Redes
Neuronales Recurrentes y en que consisten?

4. Describe en que consiste el desdoblamiento de una Red Neuronal Recurrente


5. Explica brevemente en que consisten tres arquitecturas de Redes Neuronales
Recurrentes.*

23

Potrebbero piacerti anche