Está en la página 1de 19

Redes Neuronales Recurrentes

Dr. Erik Zamora

Contenido

Qu es?
Para qu sirve?
Estructuras Generales
Aprendizaje Supervisado (Problema del
gradiente)
Mejores Redes Recurrentes
LSTM
Maquinas Neuronales de Turing
Redes de Memoria
Clockwork RNN
Redes con LSTM
Arquitectura
Variantes
Libreras
Tarea

Qu es una RNN?

Propiedades
Datos secuenciales
Memoria
Aprende dependencias con el
pasado o futuro
Aproxima programas arbitrarios
[Hinton et al. 2015]

= 1 +
= ( )
Mas poder de computo. En principio, cualquier problema resuelto por una red feedforward, puede ser
resuelta por una RNN. Pero no es cierto lo converso.

Para qu sirven las RNN?


Predictor del
siguiente
carcter

Modelos de Lenguaje

Generador de Texto: aprende la sintaxis y la gramtica

Wikipedia
Shakespeare
[Karpathys blog 2015]

[Karpathys blog 2015]

Para qu sirven las RNN?


Modelos de Lenguaje
Generador de Texto: aprende la sintaxis y la gramtica

(con pocos errores de sintaxis)

[Karpathys blog 2015]

Texto en Latex

Cdigo fuente en C

[Karpathys blog 2015]

Para qu sirven las RNN?


Traduccin de Idiomas

Reconocimiento de Voz

[Curso Stanford cs224d]

[Graves, et al. 2014]

Generacin de Descripciones verbales para imgenes

[Karpathy & Fei 2015]

Ms ejemplos http://cs.stanford.edu/people/karpathy/deepimagesent/
[Karpathy & Fei 2015]

Para qu sirven las RNN?

Ejecutar programas

Quin lo escribi? Generador de texto manuscrito

[Graves2013]

[Zaremban & Sutskever 2014]

Dibujar: Generacin de imgenes


Generacin de imgenes con atencin visual

[Gregor, et al. 2015]


[Kelvin Xu, et al. 2015]

Para qu sirven las RNN?


Prediccin de video (Graves, et al. 2015)

Aproximar programas arbitrarios (a partir de ejemplos)


[Graves, et al. 2014]

https://youtu.be/-yX1SYeDHbg?t=49m29s

[Wikipedia]

[Graves, et al. 2014]

Estructuras Generales

Bidireccionales

Bidireccionales Multicapa

[Britzs blog 2015]

[Britzs blog 2015]

Aprendizaje Supervisado

Problema del Gradiente


[Explicacin en pizarrn]

Las RNN convencionales NO pueden aprender dependencias de largo plazo:

Las nubes estn en el _______

Corto plazo

Yo crec en Mxico.[texto].Hablo _______ fluido

Largo plazo

Mejores Redes Recurrentes


Maquinas Neuronales de Turing

RNN con Reloj de Trabajo


(Clockwork RNN)

Redes con Gran Memoria


de Corto Plazo (LSTM)

[Graves, et al. 2014]

Redes de Memoria

[Vinyals, et al. 2015]

[Sukhbaatar, et al. 2015]

[Koutnk, et al. 2014]

Redes con LSTM

Fueron introducidas por Hochreiter & Schmidbuber en 1997


(Long Short-Term Memory)
[Explicacion en pizarron]

Redes con LSTM

Fueron introducidas por Hochreiter & Schmidbuber en 1997 (Long Short-Term Memory)
[Explicacion en pizarron]

RNN Convencional

= 1 +
[Olahs blog 2015]

LSTM

[Olahs blog 2015]

= 1 , +
= 1 , +
= 1 , +
= 1 +
= 1 , +
=

Redes con LSTM: Variantes

Depth-Gated RN

Conexiones Peephole

[Olahs blog 2015]

Olvido y Escritura acopladas

[Olahs blog 2015]

Gated Recurrent Unit (GRU)

[Olahs blog 2015]

[Yao, et al. 2015]

Redes con LSTM: Variantes

Grid LSTM

[Kalchbenner, et al. 2015]

[Kalchbenner, et al. 2015]

Redes con LSTM: Cules de ests variantes son las mejores?


LSTM: A Search Space Odyssey, Greff, et al. 2015

Ninguna variante supera a la LSTM estndar de manera significativa (sin incluir Grid LSTM)
Algunas simplificaciones no daan el desempeo significativamente, por ejemplo: el acoplamiento
de las compuertas de entrada y olvido, o quitar las conexiones peephole(mirilla).
El uso de compuerta de olvido mejora consistentemente el desempeo de la red.
La funcin de activacin de salida es necesaria si el estado de la clula es no acotado.
El uso de momento en el aprendizaje no fue importante.
El tamao de la red y el ndice de aprendizaje son los hiperparametros ms crticos, pero pueden
ser ajustados de manera independiente.

An Empirical exploration of RN arquitecture, Jozefowics, et al. 2015

No encuentra una variante que supere a la LSTM estndar de manera significativa (sin incluir
Grid LSTM)
Aadiendo el sesgo de 1 a la compuerta de olvido en la LSTM se iguala el desempeo de LSTM con GRU. As
que lo recomienda.
Tambin el uso del dropout mejora el desempeo de la LSTM, a veces superando a la GRU.

Libreras

Caffe (C++ con interfaces para Matlab y Python) Es la ms popular


http://caffe.berkeleyvision.org/

Theano (Python) http://deeplearning.net/software/theano/

Torch (C y Lua) usado por Facebook Research, Google Deepmind y Twitter


http://torch.ch/docs/cvpr15.html

PyBrain http://www.pybrain.org/ Jrgen Schmidhuber (LSTM, RNN)

Deep Learning Libraries by Language


http://www.teglor.com/b/deep-learning-libraries-language-cm569/
Quora - Is there a recurrent neural networks toolkit?
https://www.quora.com/Is-there-a-recurrent-neural-networks-toolkit
Reddit - What is the simplest LSTM Library to Use?
https://www.reddit.com/r/MachineLearning/comments/2zxfma/what_is_the_simplest_lstm_library_to_use/

Tarea

Resumen

Qu es?
Para qu sirve?
Estructuras Generales
Aprendizaje Supervisado (Problema del
gradiente)
Mejores Redes Recurrentes
LSTM
Maquinas Neuronales de Turing
Redes de Memoria
Clockwork RNN
Redes con LSTM
Arquitectura
Variantes
Libreras
Tarea

Las RNN son Grandiosas!!

También podría gustarte