Red neuronal recurrente

Visualización de una red neuronal recurrente totalmente conectada con 4 neuronas

En el ámbito de las redes neuronales artificiales, una red neuronal recurrente (RNN) es un tipo de red que contiene conexiones recurrentes, es decir, conexiones en las que la salida de una neurona en un instante se utiliza como entrada para otra neurona en el instante siguiente. Esto permite a las RNNs capturar dependencias temporales y patrones secuenciales.

Las diferencias entre una red neuronal recurrente y una red neuronal prealimentada (o feed-forward) se resumen en la siguiente tabla:

Red neuronal prealimentada Red neuronal recurrente
Los vectores de entrada producen vectores de salida Tratan datos secuenciales de forma eficiente
No mezclan información entre ejecuciones Recuerdan las salidas anteriores como entrada
Tratan una secuencia de datos de una sola vez Pueden tratar secuencias muy largas, elemento a elemento

Historia

Las redes neuronales recurrentes fueron basadas en el trabajo de David Rumelhart en 1986.[1]​ Las redes de Hopfield, un tipo especial de red recurrente, fueron descubiertas por John Hopfield en 1982. En 1993, un sistema compresor de historia neural resolvió una tarea "Very Deep Learning" que requirió desplegar más de 1000 capas de una red recurrente en un tiempo dado.[2]

Entrenamiento

El entrenamiento de una red neuronal recurrente (RNN) implica un proceso computacionalmente intensivo debido a su naturaleza secuencial. A diferencia de las redes feed-forward tradicionales, donde las operaciones se reducen principalmente a multiplicaciones de matrices y transformaciones mediante funciones de activación, las RNN procesan datos secuenciales manteniendo una memoria oculta (hidden state) que se actualiza en cada paso temporal.

Para entrenar una RNN, se aplica la técnica de "desenrollado" (unrolling), que convierte la red recurrente en una estructura equivalente a una red prealimentada con tantas capas como pasos temporales contenga la secuencia. Cada capa desenrollada comparte los mismos parámetros (pesos y sesgos), lo que reduce la complejidad computacional pero sigue requiriendo un alto consumo de memoria y tiempo de procesamiento para secuencias largas.

El ajuste de los pesos se realiza mediante backpropagation through time (BPTT), una adaptación del algoritmo de retropropagación para RNN. Sin embargo, este método enfrenta el problema de desvanecimiento del gradiente (vanishing gradient), donde los gradientes utilizados para actualizar los pesos se vuelven extremadamente pequeños al propagarse a través de muchas capas temporales, dificultando el aprendizaje de dependencias a largo plazo.

Para mitigar este problema, se emplean arquitecturas especializadas como:

  • Capas LSTM (Long Short-Term Memory): Introducen mecanismos de puertas (gate) que regulan el flujo de información, permitiendo preservar gradientes a lo largo de secuencias extensas.
  • Capas GRU (Gated Recurrent Unit): Una versión simplificada de LSTM con menos parámetros, pero igualmente efectiva en muchas tareas.

Estas variantes facilitan el aprendizaje de relaciones temporales distantes sin que el gradiente se diluya, mejorando el rendimiento en modelado de lenguaje o predicción de series temporales.

LSTM

Las memorias largas a corto plazo (LSTM) fueron inventadas por Hochreiter y Schmidhuber en 1997 y establecieron récords de eficiencia en distintos ámbitos de aplicación.[3]

Alrededor de 2007, las LSTM empezaron a revolucionar el reconocimiento del habla, superando ciertos modelos tradicionales en el campo.[4]​ En 2009, una red LSTM entrenada con Connectionist Temporal Classification (CTC) fue la primera RNN en ganar una competición de reconocimiento de patrones, ganando distintas competiciones en reconocimiento de lenguaje escrito[5]​ En 2014, la compañía china Baidu usó RNNs entrenadas con CTC para romper el dataset de reconocimiento del habla 2S09 Switchboard Hub5'00[6]​ sin emplear ningún método tradicional de reconocimiento de lenguaje hablado.[7]

Las LSTM también han mejorado el reconocimiento del habla con vocabulario extenso y síntesis de text-to-speech[8]​ y fueron utilizadas en Google Android.[9]​ En 2015, el reconocimiento de voz de Google experimentó una mejora en su rendimiento del 49%, de acuerdo con sus fuentes[cita requerida] gracias a una red LSTM CTC.[10]

Las LSTM rompieron records en traducción automática,[11]modelado de lenguaje,[12]​ y procesamiento de lenguaje multilingüe.[13]​ Una combinación de LSTM con redes neuronales convolucionales (CNNs) mejoró el subtitulado automático de imágenes.[14]

Referencias

  1. Williams, Ronald J.; Hinton, Geoffrey E.; Rumelhart, David E. (October 1986). «Learning representations by back-propagating errors». Nature 323 (6088): 533-536. Bibcode:1986Natur.323..533R. ISSN 1476-4687. S2CID 205001834. doi:10.1038/323533a0. 
  2. Schmidhuber, Jürgen (1993). Habilitation thesis: System modeling and optimization.  Página 150.
  3. Hochreiter, Sepp; Schmidhuber, Jürgen (1 de noviembre de 1997). «Long Short-Term Memory». Neural Computation 9 (8): 1735-1780. PMID 9377276. S2CID 1915014. doi:10.1162/neco.1997.9.8.1735. 
  4. Fernández, Santiago; Graves, Alex; Schmidhuber, Jürgen (2007). «An Application of Recurrent Neural Networks to Discriminative Keyword Spotting». Proceedings of the 17th International Conference on Artificial Neural Networks. ICANN'07 (Berlin, Heidelberg: Springer-Verlag). pp. 220-229. ISBN 978-3-540-74693-5. 
  5. Graves, Alex; Schmidhuber, Jürgen (2009). Bengio, Yoshua; Schuurmans, Dale; Lafferty, John; Williams, Chris editor-K. I.; Culotta, Aron, eds. Offline Handwriting Recognition with Multidimensional Recurrent Neural Networks. Neural Information Processing Systems (NIPS) Foundation. pp. 545-552. 
  6. Switchboard Hub5'00 speech recognition dataset
  7. Hannun, Awni; Case, Carl; Casper, Jared; Catanzaro, Bryan; Diamos, Greg; Elsen, Erich; Prenger, Ryan; Satheesh, Sanjeev et ál. (2014-12-17). «Deep Speech: Scaling up end-to-end speech recognition». arXiv:1412.5567  [cs.CL]. 
  8. Fan, Bo; Wang, Lijuan; Soong, Frank K.; Xie, Lei (2015) "Photo-Real Talking Head with Deep Bidirectional LSTM", in Proceedings of ICASSP 2015
  9. Zen, Heiga; Sak, Haşim (2015). «Unidirectional Long Short-Term Memory Recurrent Neural Network with Recurrent Output Layer for Low-Latency Speech Synthesis». Google.com. ICASSP. pp. 4470-4474. 
  10. Sak, Haşim; Senior, Andrew; Rao, Kanishka; Beaufays, Françoise; Schalkwyk, Johan (September 2015). «Google voice search: faster and more accurate». 
  11. Sutskever, Ilya; Vinyals, Oriol; Le, Quoc V. (2014). «Sequence to Sequence Learning with Neural Networks». Electronic Proceedings of the Neural Information Processing Systems Conference 27: 5346. Bibcode:2014arXiv1409.3215S. arXiv:1409.3215. 
  12. Jozefowicz, Rafal; Vinyals, Oriol; Schuster, Mike; Shazeer, Noam; Wu, Yonghui (2016-02-07). «Exploring the Limits of Language Modeling». arXiv:1602.02410  [cs.CL]. 
  13. Gillick, Dan; Brunk, Cliff; Vinyals, Oriol; Subramanya, Amarnag (2015-11-30). «Multilingual Language Processing From Bytes». arXiv:1512.00103  [cs.CL]. 
  14. Vinyals, Oriol; Toshev, Alexander; Bengio, Samy; Erhan, Dumitru (2014-11-17). «Show and Tell: A Neural Image Caption Generator». arXiv:1411.4555  [cs.CV]. 
Prefix: a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9

Portal di Ensiklopedia Dunia

Kembali kehalaman sebelumnya