De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

Una red neuronal recurrente ( RNN ) es una clase de redes neuronales artificiales donde las conexiones entre nodos forman un gráfico dirigido a lo largo de una secuencia temporal. Esto le permite exhibir un comportamiento dinámico temporal. Derivados de redes neuronales de alimentación directa , los RNN pueden usar su estado interno (memoria) para procesar secuencias de entradas de longitud variable. [1] [2] [3] Esto los hace aplicables a tareas como el reconocimiento de escritura conectado no segmentado [4] o el reconocimiento de voz . [5] [6]

El término “red neuronal recurrente” se usa indiscriminadamente para referirse a dos amplias clases de redes con una estructura general similar, donde una es impulso finito y la otra es impulso infinito . Ambas clases de redes exhiben un comportamiento dinámico temporal . [7] Una red recurrente de impulso finito es un gráfico acíclico dirigido que se puede desenrollar y reemplazar con una red neuronal estrictamente feedforward, mientras que una red recurrente de impulso infinito es un gráfico cíclico dirigido que no se puede desenrollar.

Tanto las redes recurrentes de impulso finito como las de impulso infinito pueden tener estados almacenados adicionales, y el almacenamiento puede estar bajo el control directo de la red neuronal. El almacenamiento también se puede reemplazar por otra red o gráfico, si eso incorpora retrasos de tiempo o tiene bucles de retroalimentación. Dichos estados controlados se denominan estado de compuerta o memoria de compuerta , y son parte de redes de memoria a corto plazo (LSTM) y unidades recurrentes de compuerta . Esto también se llama Red neuronal de retroalimentación (FNN).

Historia [ editar ]

Las redes neuronales recurrentes se basaron en el trabajo de David Rumelhart en 1986. [8] Las redes Hopfield , un tipo especial de RNN, fueron descubiertas por John Hopfield en 1982. En 1993, un sistema compresor de historia neuronal resolvió una tarea de "aprendizaje muy profundo". que requirió más de 1000 capas subsiguientes en un RNN desplegado en el tiempo. [9]

LSTM [ editar ]

Las redes de memoria a largo plazo a corto plazo (LSTM) fueron inventadas por Hochreiter y Schmidhuber en 1997 y establecieron récords de precisión en múltiples dominios de aplicaciones. [10]

Alrededor de 2007, LSTM comenzó a revolucionar el reconocimiento de voz , superando a los modelos tradicionales en ciertas aplicaciones de voz. [11] En 2009, una red LSTM capacitada en Clasificación Temporal Connectionista (CTC) fue la primera RNN en ganar concursos de reconocimiento de patrones cuando ganó varios concursos en reconocimiento de escritura conectada . [12] [13] En 2014, la empresa china Baidu utilizó RNN capacitados en CTC para romper el punto de referencia del conjunto de datos de reconocimiento de voz Switchboard Hub5'00 sin utilizar ningún método tradicional de procesamiento de voz. [14]

LSTM también mejoró el reconocimiento de voz de vocabulario extenso [5] [6] y la síntesis de texto a voz [15] y se usó en Google Android . [12] [16] En 2015, el reconocimiento de voz de Google supuestamente experimentó un aumento dramático en el rendimiento del 49% [ cita requerida ] a través de LSTM entrenado por CTC. [17]

LSTM batió récords de traducción automática mejorada , [18] Modelado de idiomas [19] y Procesamiento de idiomas multilingües. [20] LSTM combinado con redes neuronales convolucionales (CNN) mejoró la subtitulación automática de imágenes . [21] Dada la sobrecarga de cálculo y memoria de ejecutar LSTM, se han realizado esfuerzos para acelerar LSTM utilizando aceleradores de hardware. [22]

Arquitecturas [ editar ]

Los RNN vienen en muchas variantes.

Completamente recurrente [ editar ]

Red neuronal recurrente básica desplegada

Las redes neuronales completamente recurrentes (FRNN) conectan las salidas de todas las neuronas a las entradas de todas las neuronas. Esta es la topología de red neuronal más general porque todas las demás topologías se pueden representar estableciendo algunos pesos de conexión en cero para simular la falta de conexiones entre esas neuronas. La ilustración de la derecha puede ser engañosa para muchos porque las topologías prácticas de redes neuronales se organizan con frecuencia en "capas" y el dibujo da esa apariencia. Sin embargo, lo que parecen ser capas son, de hecho, diferentes pasos en el tiempo de la misma red neuronal completamente recurrente. El elemento más a la izquierda en la ilustración muestra las conexiones recurrentes como el arco etiquetado como 'v'. Se "desdobla" a tiempo para producir la apariencia de capas .

Redes de Elman y redes de Jordania [ editar ]

La red Elman

Una red de Elman es una red de tres capas (dispuesta horizontalmente como x , y , z en la ilustración) con la adición de un conjunto de unidades de contexto ( u en la ilustración). La capa intermedia (oculta) está conectada a estas unidades de contexto fijadas con un peso de uno. [23] En cada paso de tiempo, la entrada se adelanta y una regla de aprendizajeEstá aplicado. Las conexiones traseras fijas guardan una copia de los valores anteriores de las unidades ocultas en las unidades de contexto (ya que se propagan a través de las conexiones antes de que se aplique la regla de aprendizaje). Por lo tanto, la red puede mantener una especie de estado, lo que le permite realizar tareas como la predicción de secuencias que están más allá del poder de un perceptrón multicapa estándar .

Las redes de Jordan son similares a las redes de Elman. Las unidades de contexto se alimentan de la capa de salida en lugar de la capa oculta. Las unidades de contexto en una red de Jordania también se conocen como la capa de estado. Tienen una conexión recurrente con ellos mismos. [23]

Las redes de Elman y Jordan también se conocen como "redes recurrentes simples" (SRN).

Red de Elman [24]
Red de Jordania [25]

Variables y funciones

  • : vector de entrada
  • : vector de capa oculta
  • : vector de salida
  • , y : matrices de parámetros y vector
  • y : Funciones de activación

Hopfield [ editar ]

La red Hopfield es una RNN en la que todas las conexiones entre capas tienen el mismo tamaño. Requiere entradas estacionarias y, por lo tanto, no es un RNN general, ya que no procesa secuencias de patrones. Sin embargo, garantiza que convergerá. Si las conexiones se entrenan utilizando el aprendizaje de Hebbian , la red Hopfield puede funcionar como una memoria robusta de contenido direccionable , resistente a la alteración de la conexión.

Memoria asociativa bidireccional [ editar ]

Introducida por Bart Kosko, [26] una red de memoria asociativa bidireccional (BAM) es una variante de una red Hopfield que almacena datos asociativos como un vector. La bidireccionalidad proviene de pasar información a través de una matriz y su transposición . Normalmente, se prefiere la codificación bipolar a la codificación binaria de los pares asociativos. Recientemente, los modelos estocásticos de BAM que utilizan el paso de Markov se optimizaron para aumentar la estabilidad de la red y su relevancia para las aplicaciones del mundo real. [27]

Una red BAM tiene dos capas, cualquiera de las cuales puede manejarse como entrada para recuperar una asociación y producir una salida en la otra capa. [28]

Estado de eco [ editar ]

La red de estado de eco (ESN) tiene una capa oculta aleatoria escasamente conectada. Los pesos de las neuronas de salida son la única parte de la red que puede cambiar (entrenarse). Los ESN son buenos para reproducir ciertas series de tiempo . [29] Una variante para aumentar las neuronas se conoce como máquina de estado líquido . [30]

Independientemente RNN (IndRNN) [ editar ]

La red neuronal independiente recurrente (IndRNN) [31] aborda los problemas de explosión y desaparición de gradientes en la RNN tradicional completamente conectada. Cada neurona en una capa solo recibe su propio estado pasado como información de contexto (en lugar de conectividad total con todas las demás neuronas en esta capa) y, por lo tanto, las neuronas son independientes de la historia de las demás. La propagación hacia atrás del gradiente se puede regular para evitar que el gradiente se desvanezca y explote con el fin de mantener la memoria a corto o largo plazo. La información entre neuronas se explora en las siguientes capas. IndRNN se puede entrenar de forma robusta con funciones no lineales no saturadas como ReLU. Mediante el uso de conexiones de salto, se pueden entrenar redes profundas.

Recursivo [ editar ]

Una red neuronal recursiva [32] se crea aplicando el mismo conjunto de pesos de forma recursiva sobre una estructura similar a un gráfico diferenciable atravesando la estructura en orden topológico . Por lo general, estas redes también se entrenan mediante el modo inverso de diferenciación automática . [33] [34] Pueden procesar representaciones distribuidas de estructura, como términos lógicos . Un caso especial de redes neuronales recursivas es el RNN cuya estructura corresponde a una cadena lineal. Las redes neuronales recursivas se han aplicado al procesamiento del lenguaje natural . [35]La red de tensor neuronal recursivo utiliza una función de composición basada en tensor para todos los nodos del árbol. [36]

Compresor de historia neuronal [ editar ]

El compresor de historial neuronal es una pila no supervisada de RNN. [37] En el nivel de entrada, aprende a predecir su próxima entrada a partir de las entradas anteriores. Solo las entradas impredecibles de algunos RNN en la jerarquía se convierten en entradas para el siguiente RNN de nivel superior, que por lo tanto vuelve a calcular su estado interno solo en raras ocasiones. Por tanto, cada RNN de nivel superior estudia una representación comprimida de la información en el RNN a continuación. Esto se hace de manera que la secuencia de entrada se pueda reconstruir con precisión a partir de la representación en el nivel más alto.

El sistema minimiza efectivamente la longitud de la descripción o el logaritmo negativo de la probabilidad de los datos. [38] Dada una gran cantidad de predictibilidad que se puede aprender en la secuencia de datos entrantes, el RNN de nivel más alto puede usar el aprendizaje supervisado para clasificar fácilmente incluso secuencias profundas con intervalos largos entre eventos importantes.

Es posible destilar la jerarquía RNN en dos RNN: el fragmento "consciente" (nivel superior) y el automatizador "subconsciente" (nivel inferior). [37] Una vez que el chunker ha aprendido a predecir y comprimir entradas que son impredecibles por el automatizador, entonces el automatizador puede ser forzado en la siguiente fase de aprendizaje a predecir o imitar a través de unidades adicionales las unidades ocultas del chunker que cambia más lentamente. Esto facilita que el automatizador aprenda los recuerdos apropiados, que rara vez cambian, a lo largo de largos intervalos. A su vez, esto ayuda al automatizador a hacer predecibles muchas de sus entradas que alguna vez fueron impredecibles, de modo que el chunker pueda enfocarse en los eventos impredecibles restantes. [37]

Un modelo generativo superó parcialmente el problema del gradiente de desaparición [39] de diferenciación automática o retropropagación en redes neuronales en 1992. En 1993, dicho sistema resolvió una tarea de "aprendizaje muy profundo" que requería más de 1000 capas posteriores en una RNN desarrollada en el tiempo. . [9]

RNN de segundo orden [ editar ]

Los RNN de segundo orden utilizan ponderaciones de orden superior en lugar de las ponderaciones estándar , y los estados pueden ser un producto. Esto permite un mapeo directo a una máquina de estados finitos tanto en entrenamiento, estabilidad y representación. [40] [41] La memoria a corto plazo es un ejemplo de esto, pero no tiene asignaciones formales ni prueba de estabilidad.

Memoria a corto plazo [ editar ]

Unidad de memoria a corto plazo

La memoria a corto plazo (LSTM) es un sistema de aprendizaje profundo que evita el problema del gradiente que desaparece . LSTM normalmente se aumenta con puertas recurrentes llamadas "puertas de olvido". [42] LSTM evita que los errores retropropagados desaparezcan o exploten. [39] En cambio, los errores pueden fluir hacia atrás a través de un número ilimitado de capas virtuales desplegadas en el espacio. Es decir, LSTM puede aprender tareas [12] que requieren recuerdos de eventos que ocurrieron miles o incluso millones de pasos de tiempo discretos antes. Se pueden desarrollar topologías similares a LSTM específicas de problemas. [43] LSTM funciona incluso con retrasos prolongados entre eventos importantes y puede manejar señales que mezclan componentes de baja y alta frecuencia.

Muchas aplicaciones usan pilas de LSTM RNNs [44] y las entrenan mediante la Clasificación Temporal Connectionista (CTC) [45] para encontrar una matriz de peso RNN que maximice la probabilidad de las secuencias de etiquetas en un conjunto de entrenamiento, dadas las correspondientes secuencias de entrada. CTC logra tanto la alineación como el reconocimiento.

LSTM puede aprender a reconocer lenguajes sensibles al contexto a diferencia de los modelos anteriores basados ​​en modelos ocultos de Markov (HMM) y conceptos similares. [46]

Unidad recurrente cerrada [ editar ]

Unidad recurrente cerrada

Las unidades recurrentes cerradas (GRU) son un mecanismo de compuerta en las redes neuronales recurrentes introducidas en 2014. Se utilizan en su forma completa y en varias variantes simplificadas. [47] [48] Se encontró que su desempeño en el modelado de música polifónica y el modelado de señales de voz era similar al de la memoria a corto plazo. [49] Tienen menos parámetros que LSTM, ya que carecen de una puerta de salida. [50]

Bidireccional [ editar ]

Los RNN bidireccionales utilizan una secuencia finita para predecir o etiquetar cada elemento de la secuencia en función de los contextos pasados ​​y futuros del elemento. Esto se hace concatenando las salidas de dos RNN, uno procesando la secuencia de izquierda a derecha y el otro de derecha a izquierda. Los resultados combinados son las predicciones de las señales objetivo dadas por el profesor. Se ha demostrado que esta técnica es especialmente útil cuando se combina con LSTM RNN. [51] [52]

Tiempo continuo [ editar ]

Una red neuronal recurrente de tiempo continuo (CTRNN) utiliza un sistema de ecuaciones diferenciales ordinarias para modelar los efectos en una neurona del tren de picos entrante.

Para una neurona en la red con activación , la tasa de cambio de activación viene dada por:

Dónde:

  •  : Constante de tiempo del nodo postsináptico
  •  : Activación del nodo postsináptico
  •  : Tasa de cambio de activación del nodo postsináptico
  •  : Peso de la conexión desde el nodo pre al postsináptico
  •  : Sigmoide de x ej .
  •  : Activación del nodo presináptico
  •  : Sesgo del nódulo presináptico
  •  : Entrada (si corresponde) al nodo

Las CTRNN se han aplicado a la robótica evolutiva donde se han utilizado para abordar la visión, [53] la cooperación, [54] y el comportamiento cognitivo mínimo. [55]

Tenga en cuenta que, según el teorema de muestreo de Shannon , las redes neuronales recurrentes en tiempo discreto pueden verse como redes neuronales recurrentes en tiempo continuo en las que las ecuaciones diferenciales se han transformado en ecuaciones en diferencias equivalentes . [56] Se puede pensar que esta transformación ocurre después de que las funciones de activación del nodo postsináptico hayan sido filtradas de paso bajo pero antes del muestreo.

Jerárquico [ editar ]

Los RNN jerárquicos conectan sus neuronas de diversas formas para descomponer el comportamiento jerárquico en subprogramas útiles. [37] [57] Tales estructuras jerárquicas de cognición están presentes en las teorías de la memoria presentadas por el filósofo Henri Bergson , cuyas opiniones filosóficas han inspirado modelos jerárquicos. [58]

Red de perceptrones multicapa recurrente [ editar ]

Generalmente, una red de perceptrones multicapa recurrente (RMLP) consta de subredes en cascada, cada una de las cuales contiene múltiples capas de nodos. Cada una de estas subredes es de retroalimentación excepto la última capa, que puede tener conexiones de retroalimentación. Cada una de estas subredes está conectada solo mediante conexiones de alimentación directa. [59]

Modelo de múltiples escalas de tiempo [ editar ]

Una red neuronal recurrente de múltiples escalas de tiempo (MTRNN) es un modelo computacional basado en neuronas que puede simular la jerarquía funcional del cerebro a través de la autoorganización que depende de la conexión espacial entre neuronas y de distintos tipos de actividades neuronales, cada una con distintas propiedades temporales. [60] [61] Con actividades neuronales tan variadas, las secuencias continuas de cualquier conjunto de comportamientos se segmentan en primitivas reutilizables, que a su vez se integran de manera flexible en diversos comportamientos secuenciales. La aprobación biológica de tal tipo de jerarquía fue discutida en la teoría de predicción de la memoria de la función cerebral de Hawkins en su libro On Intelligence . [ cita requerida ]Esta jerarquía también concuerda con las teorías de la memoria planteadas por el filósofo Henri Bergson , que se han incorporado a un modelo MTRNN. [62] [63]

Máquinas neurales de Turing [ editar ]

Las máquinas de Turing neuronales (NTM) son un método para extender redes neuronales recurrentes acoplándolas a recursos de memoria externa con los que pueden interactuar mediante procesos de atención . El sistema combinado es análogo a una máquina de Turing o arquitectura de Von Neumann, pero es diferenciable de un extremo a otro, lo que permite entrenarlo de manera eficiente con el descenso de gradiente . [64]

Computadora neuronal diferenciable [ editar ]

Las computadoras neuronales diferenciables (DNC) son una extensión de las máquinas de Turing neuronales, lo que permite el uso de cantidades difusas de cada dirección de memoria y un registro cronológico.

Autómatas pushdown de redes neuronales [ editar ]

Los autómatas pushdown de redes neuronales (NNPDA) son similares a los NTM, pero las cintas se reemplazan por pilas analógicas diferenciables y entrenadas. De esta manera, son similares en complejidad a los reconocedores de gramáticas libres de contexto (CFG). [sesenta y cinco]

Memristive Networks [ editar ]

Greg Snider de HP Labs describe un sistema de computación cortical con nanodispositivos memristivos. [66] Los memristores (resistencias de memoria) se implementan mediante materiales de película delgada en los que la resistencia se sintoniza eléctricamente mediante el transporte de iones o vacantes de oxígeno dentro de la película. El proyecto SyNAPSE de DARPA ha financiado IBM Research y HP Labs, en colaboración con el Departamento de Sistemas Cognitivos y Neurales (CNS) de la Universidad de Boston, para desarrollar arquitecturas neuromórficas que pueden estar basadas en sistemas memristivos. Las redes memristivas son un tipo particular de red neuronal físicaque tienen propiedades muy similares a las redes de (Little-) Hopfield, ya que tienen una dinámica continua, tienen una capacidad de memoria limitada y se relajan naturalmente a través de la minimización de una función que es asintótica al modelo de Ising. En este sentido, la dinámica de un circuito memristivo tiene la ventaja frente a una red Resistor-Condensador de tener un comportamiento no lineal más interesante. Desde este punto de vista, la ingeniería de redes memristivas analógicas da cuenta de un tipo peculiar de ingeniería neuromórfica en la que el comportamiento del dispositivo depende del cableado del circuito o de la topología.[67] [68]

Entrenamiento [ editar ]

Descenso de gradiente [ editar ]

El descenso de gradiente es un algoritmo de optimización iterativo de primer orden para encontrar el mínimo de una función. En redes neuronales, se puede utilizar para minimizar el término de error cambiando cada peso en proporción a la derivada del error con respecto a ese peso, siempre que las funciones de activación no lineales sean diferenciables . Werbos , Williams , Robinson , Schmidhuber , Hochreiter , Pearlmutter y otros desarrollaron varios métodos para hacerlo .

El método estándar se llama " retropropagación a través del tiempo " o BPTT, y es una generalización de la retropropagación para redes de retroalimentación. [69] [70] Como ese método, es una instancia de diferenciación automática en el modo de acumulación inversa del principio mínimo de Pontryagin . Una variante en línea más costosa desde el punto de vista computacional se llama "Aprendizaje recurrente en tiempo real" o RTRL, [71] [72] que es una instancia de diferenciación automática en el modo de acumulación directa con vectores tangentes apilados. A diferencia de BPTT, este algoritmo es local en el tiempo pero no local en el espacio.

En este contexto, local en el espacio significa que el vector de peso de una unidad se puede actualizar utilizando solo la información almacenada en las unidades conectadas y la unidad misma, de modo que la complejidad de actualización de una sola unidad sea lineal en la dimensionalidad del vector de peso. Local en el tiempo significa que las actualizaciones tienen lugar continuamente (en línea) y dependen solo del paso de tiempo más reciente en lugar de múltiples pasos de tiempo dentro de un horizonte de tiempo dado como en BPTT. Las redes neuronales biológicas parecen ser locales con respecto al tiempo y al espacio. [73] [74]

Para calcular de forma recursiva las derivadas parciales, RTRL tiene una complejidad de tiempo de O (número de pesos ocultos x número de pesos) por paso de tiempo para calcular las matrices jacobianas , mientras que BPTT solo toma O (número de pesos) por paso de tiempo, a costa de de almacenar todas las activaciones hacia adelante dentro del horizonte de tiempo dado. [75] Existe un híbrido en línea entre BPTT y RTRL con complejidad intermedia, [76] [77] junto con variantes para tiempo continuo. [78]

Un problema importante con el descenso de gradientes para arquitecturas RNN estándar es que los gradientes de error desaparecen exponencialmente rápidamente con el tamaño del desfase de tiempo entre eventos importantes. [39] [79] LSTM combinado con un método de aprendizaje híbrido BPTT / RTRL intenta superar estos problemas. [10] Este problema también se resuelve en la red neuronal independiente recurrente (IndRNN) [31] reduciendo el contexto de una neurona a su propio estado pasado y la información entre neuronas puede explorarse en las siguientes capas. Se pueden aprender recuerdos de diferente rango, incluida la memoria a largo plazo, sin que el gradiente se desvanezca y explote el problema.

El algoritmo en línea llamado retropropagación recursiva causal (CRBP), implementa y combina paradigmas BPTT y RTRL para redes localmente recurrentes. [80] Funciona con las redes locales recurrentes más generales. El algoritmo CRBP puede minimizar el término de error global. Este hecho mejora la estabilidad del algoritmo, proporcionando una visión unificadora de las técnicas de cálculo de gradientes para redes recurrentes con retroalimentación local.

Un enfoque para el cálculo de la información de gradiente en RNN con arquitecturas arbitrarias se basa en la derivación esquemática de gráficos de flujo de señal. [81] Utiliza el algoritmo por lotes BPTT, basado en el teorema de Lee para los cálculos de sensibilidad de la red. [82] Fue propuesto por Wan y Beaufays, mientras que su versión rápida en línea fue propuesta por Campolucci, Uncini y Piazza. [82]

Métodos de optimización global [ editar ]

El entrenamiento de los pesos en una red neuronal se puede modelar como un problema de optimización global no lineal . Se puede formar una función objetivo para evaluar la aptitud o el error de un vector de peso particular de la siguiente manera: Primero, los pesos en la red se establecen de acuerdo con el vector de peso. A continuación, la red se evalúa contra la secuencia de entrenamiento. Normalmente, la diferencia de suma cuadrada entre las predicciones y los valores objetivo especificados en la secuencia de entrenamiento se usa para representar el error del vector de peso actual. A continuación, se pueden utilizar técnicas arbitrarias de optimización global para minimizar esta función objetivo.

El método de optimización global más común para entrenar RNN son los algoritmos genéticos , especialmente en redes no estructuradas. [83] [84] [85]

Inicialmente, el algoritmo genético está codificado con los pesos de la red neuronal de una manera predefinida donde un gen en el cromosoma representa un enlace de peso. Toda la red se representa como un solo cromosoma. La función de aptitud se evalúa de la siguiente manera:

  • Cada peso codificado en el cromosoma se asigna al enlace de peso respectivo de la red.
  • El conjunto de entrenamiento se presenta a la red que propaga las señales de entrada hacia adelante.
  • El error cuadrático medio se devuelve a la función de aptitud.
  • Esta función impulsa el proceso de selección genética.

Muchos cromosomas componen la población; por lo tanto, se desarrollan muchas redes neuronales diferentes hasta que se satisface un criterio de detención. Un esquema de parada común es:

  • Cuando la red neuronal ha aprendido un cierto porcentaje de los datos de entrenamiento o
  • Cuando se satisface el valor mínimo del error cuadrático medio o
  • Cuando se alcanza el número máximo de generaciones de formación.

El criterio de parada es evaluado por la función de aptitud, ya que obtiene el recíproco del error cuadrático medio de cada red durante el entrenamiento. Por lo tanto, el objetivo del algoritmo genético es maximizar la función de aptitud, reduciendo el error cuadrático medio.

Se pueden usar otras técnicas de optimización global (y / o evolutiva) para buscar un buen conjunto de pesos, como el recocido simulado o la optimización del enjambre de partículas .

Campos y modelos relacionados [ editar ]

Los RNN pueden comportarse de forma caótica . En tales casos, la teoría de sistemas dinámicos se puede utilizar para el análisis.

De hecho, son redes neuronales recursivas con una estructura particular: la de una cadena lineal. Mientras que las redes neuronales recursivas operan en cualquier estructura jerárquica, combinando representaciones secundarias en representaciones parentales, las redes neuronales recurrentes operan en la progresión lineal del tiempo, combinando el paso de tiempo anterior y una representación oculta en la representación del paso de tiempo actual.

En particular, los RNN pueden aparecer como versiones no lineales de filtros de respuesta de impulso finito y de respuesta de impulso infinito y también como un modelo exógeno autorregresivo no lineal (NARX). [86]

Bibliotecas [ editar ]

  • Apache Singa
  • Caffe : Creado por el Berkeley Vision and Learning Center (BVLC). Es compatible con CPU y GPU. Desarrollado en C ++ y tiene envoltorios de Python y MATLAB .
  • Chainer : la primera biblioteca estable de aprendizaje profundo que admite redes neuronales dinámicas definidas por ejecución. Totalmente en Python, soporte de producción para CPU, GPU, entrenamiento distribuido.
  • Deeplearning4j : aprendizaje profundo en Java y Scala en Spark habilitado para múltiples GPU . Una biblioteca de aprendizaje profundo de propósito general para la pila de producción de JVM que se ejecuta en un motor de computación científica C ++ . Permite la creación de capas personalizadas. Se integra con Hadoop y Kafka .
  • Dynet : el kit de herramientas de redes neuronales dinámicas.
  • Flux : incluye interfaces para RNN, incluidas GRU y LSTM, escritas en Julia .
  • Keras : API de alto nivel y fácil de usar, que proporciona un contenedor para muchas otras bibliotecas de aprendizaje profundo.
  • Kit de herramientas cognitivas de Microsoft
  • MXNet : un marco moderno de aprendizaje profundo de código abierto que se utiliza para entrenar e implementar redes neuronales profundas.
  • Paddle Paddle ( https://github.com/paddlepaddle/paddle ): PaddlePaddle (PArallel Distributed Deep LEarning) es una plataforma de aprendizaje profundo, que fue desarrollada originalmente por científicos e ingenieros de Baidu con el propósito de aplicar el aprendizaje profundo a muchos productos en Baidu. .
  • PyTorch : Tensores y redes neuronales dinámicas en Python con fuerte aceleración de GPU.
  • TensorFlow : biblioteca similar a Theano con licencia de Apache 2.0 compatible con CPU, GPU y la TPU patentada de Google , [87] móvil
  • Theano : la biblioteca de referencia de aprendizaje profundo para Python con una API ampliamente compatible con la popular biblioteca NumPy . Permite al usuario escribir expresiones matemáticas simbólicas, luego genera automáticamente sus derivadas, evitando que el usuario tenga que codificar gradientes o retropropagación. Estas expresiones simbólicas se compilan automáticamente en código CUDA para una implementación rápida en la GPU.
  • Torch ( www.torch.ch ): un marco informático científico con amplio soporte para algoritmos de aprendizaje automático, escrito en C y lua . El autor principal es Ronan Collobert, y ahora se usa en Facebook AI Research y Twitter.

Aplicaciones [ editar ]

Las aplicaciones de las redes neuronales recurrentes incluyen:

  • Traducción automática [18]
  • Control de robot [88]
  • Predicción de series de tiempo [89] [90] [91]
  • Reconocimiento de voz [92] [93] [94]
  • Síntesis de voz [95]
  • Detección de anomalías en series temporales [96]
  • Aprendizaje del ritmo [97]
  • Composición musical [98]
  • Aprendizaje gramatical [99] [100] [101]
  • Reconocimiento de escritura a mano [102] [103]
  • Reconocimiento de la acción humana [104]
  • Detección de homología de proteínas [105]
  • Predicción de la localización subcelular de proteínas [52]
  • Varias tareas de predicción en el ámbito de la gestión de procesos empresariales [106]
  • Predicción en vías de atención médica [107]

Referencias [ editar ]

  1. Dupond, Samuel (2019). "Una revisión exhaustiva sobre el avance actual de las estructuras de redes neuronales" . Revisiones anuales bajo control . 14 : 200–230.
  2. Abiodun, Oludare Isaac; Jantan, Aman; Omolara, Abiodun Esther; Dada, Kemi Victoria; Mohamed, Nachaat Abdelatif; Arshad, Humaira (1 de noviembre de 2018). "Estado del arte en aplicaciones de redes neuronales artificiales: una encuesta" . Heliyon . 4 (11): e00938. doi : 10.1016 / j.heliyon.2018.e00938 . ISSN 2405-8440 . PMC 6260436 . PMID 30519653 .   
  3. Tealab, Ahmed (1 de diciembre de 2018). "Predicción de series de tiempo utilizando metodologías de redes neuronales artificiales: una revisión sistemática" . Revista de Computación e Informática del Futuro . 3 (2): 334–340. doi : 10.1016 / j.fcij.2018.10.003 . ISSN 2314-7288 . 
  4. ^ Tumbas, Alex ; Liwicki, Marcus; Fernández, Santiago; Bertolami, romano; Bunke, Horst; Schmidhuber, Jürgen (2009). "Un nuevo sistema conexionista para un mejor reconocimiento de escritura sin restricciones" (PDF) . Transacciones IEEE sobre análisis de patrones e inteligencia de máquinas . 31 (5): 855–868. CiteSeerX 10.1.1.139.4502 . doi : 10.1109 / tpami.2008.137 . PMID 19299860 . S2CID 14635907 .    
  5. ^ a b Sak, Haşim; Mayor, Andrew; Beaufays, Françoise (2014). "Arquitecturas de redes neuronales recurrentes de memoria a largo plazo a corto plazo para el modelado acústico a gran escala" (PDF) .
  6. ^ a b Li, Xiangang; Wu, Xihong (15 de octubre de 2014). "Construcción de redes neuronales recurrentes profundas basadas en memoria a corto plazo para el reconocimiento de voz de gran vocabulario". arXiv : 1410.4281 [ cs.CL ].
  7. ^ Miljanovic, Milos (febrero-marzo de 2012). "Análisis comparativo de redes neuronales de respuesta de impulso finito y recurrente en la predicción de series de tiempo" (PDF) . Revista India de Computación e Ingeniería . 3 (1).
  8. ^ Williams, Ronald J .; Hinton, Geoffrey E .; Rumelhart, David E. (octubre de 1986). "Aprendizaje de representaciones por retropropagación de errores". Naturaleza . 323 (6088): 533–536. Código Bibliográfico : 1986Natur.323..533R . doi : 10.1038 / 323533a0 . ISSN 1476-4687 . S2CID 205001834 .  
  9. ↑ a b Schmidhuber, Jürgen (1993). Tesis de habilitación: Modelado y optimización de sistemas (PDF) . La página 150 y siguientes demuestra la asignación de créditos en el equivalente a 1200 capas en un RNN desplegado.
  10. ^ a b Hochreiter, Sepp ; Schmidhuber, Jürgen (1 de noviembre de 1997). "Memoria a corto plazo". Computación neuronal . 9 (8): 1735-1780. doi : 10.1162 / neco.1997.9.8.1735 . PMID 9377276 . S2CID 1915014 .  
  11. ^ Fernández, Santiago; Graves, Alex; Schmidhuber, Jürgen (2007). Una aplicación de redes neuronales recurrentes para detectar palabras clave discriminatorias . Actas de la 17ª Conferencia Internacional sobre Redes Neuronales Artificiales . ICANN'07. Berlín, Heidelberg: Springer-Verlag. págs. 220-229. ISBN 978-3-540-74693-5.
  12. ↑ a b c Schmidhuber, Jürgen (enero de 2015). "Aprendizaje profundo en redes neuronales: una descripción general". Redes neuronales . 61 : 85-117. arXiv : 1404,7828 . doi : 10.1016 / j.neunet.2014.09.003 . PMID 25462637 . S2CID 11715509 .  
  13. ^ Tumbas, Alex; Schmidhuber, Jürgen (2009). Bengio, Yoshua; Schuurmans, Dale; Lafferty, John; Williams, editor de Chris, KI; Culotta, Aron (eds.). "Reconocimiento de escritura sin conexión con redes neuronales recurrentes multidimensionales" . Fundación de sistemas de procesamiento de información neuronal (NIPS): 545–552. Cite journal requires |journal= (help)
  14. ^ Hannun, Awni; Caso, Carl; Casper, Jared; Catanzaro, Bryan; Diamos, Greg; Elsen, Erich; Prenger, Ryan; Satheesh, Sanjeev; Sengupta, Shubho (17 de diciembre de 2014). "Deep Speech: ampliación del reconocimiento de voz de un extremo a otro". arXiv : 1412,5567 [ cs.CL ].
  15. ^ Fan, Bo; Wang, Lijuan; Soong, Frank K .; Xie, Lei (2015) "Photo-Real Talking Head with Deep Bidirectional LSTM", en Actas de ICASSP 2015
  16. ^ Zen, Heiga; Sak, Haşim (2015). "Red neuronal recurrente de memoria a corto plazo unidireccional con capa de salida recurrente para síntesis de voz de baja latencia" (PDF) . Google.com . ICASSP. págs. 4470–4474.
  17. ^ Sak, Haşim; Mayor, Andrew; Rao, Kanishka; Beaufays, Françoise; Schalkwyk, Johan (septiembre de 2015). "Búsqueda por voz de Google: más rápida y precisa" .
  18. ^ a b Sutskever, Ilya; Vinyals, Oriol; Le, Quoc V. (2014). "Secuencia para secuenciar el aprendizaje con redes neuronales" (PDF) . Actas electrónicas de la Conferencia sobre sistemas de procesamiento de información neuronal . 27 : 5346. arXiv : 1409.3215 . Código bibliográfico : 2014arXiv1409.3215S .
  19. ^ Jozefowicz, Rafal; Vinyals, Oriol; Schuster, Mike; Shazeer, Noam; Wu, Yonghui (7 de febrero de 2016). "Explorando los límites del modelado del lenguaje". arXiv : 1602.02410 [ cs.CL ].
  20. ^ Gillick, Dan; Brunk, Cliff; Vinyals, Oriol; Subramanya, Amarnag (30 de noviembre de 2015). "Procesamiento de idiomas multilingües a partir de bytes". arXiv : 1512.00103 [ cs.CL ].
  21. ^ Vinyals, Oriol; Toshev, Alexander; Bengio, Samy; Erhan, Dumitru (17 de noviembre de 2014). "Mostrar y decir: un generador de subtítulos de imágenes neuronales". arXiv : 1411.4555 [ cs.CV ].
  22. ^ "Una encuesta sobre aceleradores de hardware y técnicas de optimización para RNN", JSA, 2020 PDF
  23. ^ a b Cruse, Holk; Redes neuronales como sistemas cibernéticos , segunda edición y revisada
  24. ^ Elman, Jeffrey L. (1990). "Encontrar estructura en el tiempo" . Ciencia cognitiva . 14 (2): 179–211. doi : 10.1016 / 0364-0213 (90) 90002-E .
  25. Jordan, Michael I. (1 de enero de 1997). "Orden en serie: un enfoque de procesamiento distribuido en paralelo". Modelos de cognición de redes neuronales: fundamentos bioconductuales . Avances en psicología . Modelos de cognición de redes neuronales. 121 . págs. 471–495. doi : 10.1016 / s0166-4115 (97) 80111-2 . ISBN 9780444819314.
  26. ^ Kosko, Bart (1988). "Memorias asociativas bidireccionales". Transacciones IEEE sobre sistemas, hombre y cibernética . 18 (1): 49–60. doi : 10.1109 / 21.87054 . S2CID 59875735 . 
  27. ^ Rakkiyappan, Rajan; Chandrasekar, Arunachalam; Lakshmanan, subramaniano; Park, Ju H. (2 de enero de 2015). "Estabilidad exponencial para redes neuronales BAM estocásticas de salto markoviano con retrasos variables en el tiempo probabilísticos dependientes del modo y control de impulsos". Complejidad . 20 (3): 39–65. Código bibliográfico : 2015Cmplx..20c..39R . doi : 10.1002 / cplx.21503 .
  28. ^ Rojas, Rául (1996). Redes neuronales: una introducción sistemática . Saltador. pag. 336. ISBN 978-3-540-60505-8.
  29. ^ Jaeger, Herbert; Haas, Harald (2 de abril de 2004). "Aprovechamiento de la no linealidad: predicción de sistemas caóticos y ahorro de energía en la comunicación inalámbrica". Ciencia . 304 (5667): 78–80. Código Bibliográfico : 2004Sci ... 304 ... 78J . CiteSeerX 10.1.1.719.2301 . doi : 10.1126 / science.1091277 . PMID 15064413 . S2CID 2184251 .   
  30. ^ Maass, Wolfgang; Natschläger, Thomas; Markram, Henry (20 de agosto de 2002). "Una nueva mirada a la computación en tiempo real en circuitos neuronales recurrentes genéricos". Reporte técnico. Instituto de Informática Teórica, Technische Universität Graz. Cite journal requires |journal= (help)
  31. ^ a b Li, Shuai; Li, Wanqing; Cook, Chris; Zhu, Ce; Yanbo, Gao (2018). "Red neuronal independiente recurrente (IndRNN): construcción de una RNN más larga y profunda". arXiv : 1803.04831 [ cs.CV ].
  32. ^ Goller, Christoph; Küchler, Andreas (1996). Aprendizaje de representaciones distribuidas dependientes de la tarea mediante retropropagación a través de la estructura . Conferencia internacional IEEE sobre redes neuronales . 1 . pag. 347. CiteSeerX 10.1.1.52.4759 . doi : 10.1109 / ICNN.1996.548916 . ISBN  978-0-7803-3210-2. S2CID  6536466 .
  33. ^ Linnainmaa, Seppo (1970). La representación del error de redondeo acumulativo de un algoritmo como una expansión de Taylor de los errores de redondeo locales . M.Sc. tesis (en finlandés), Universidad de Helsinki.
  34. ^ Griewank, Andreas; Walther, Andrea (2008). Evaluación de derivadas: principios y técnicas de diferenciación algorítmica (Segunda ed.). SIAM. ISBN 978-0-89871-776-1.
  35. ^ Socher, Richard; Lin, acantilado; Ng, Andrew Y .; Manning, Christopher D., "Análisis de escenas naturales y lenguaje natural con redes neuronales recursivas" (PDF) , 28ª Conferencia internacional sobre aprendizaje automático (ICML 2011)
  36. ^ Socher, Richard; Perelygin, Alex; Wu, Jean Y .; Chuang, Jason; Manning, Christopher D .; Ng, Andrew Y .; Potts, Christopher. "Modelos profundos recursivos para la composicionalidad semántica sobre un árbol de sentimiento" (PDF) . Emnlp 2013 .
  37. ↑ a b c d Schmidhuber, Jürgen (1992). "Aprendizaje de secuencias complejas y extendidas utilizando el principio de compresión de historia" (PDF) . Computación neuronal . 4 (2): 234–242. doi : 10.1162 / neco.1992.4.2.234 . S2CID 18271205 .  
  38. ^ Schmidhuber, Jürgen (2015). "Aprendizaje profundo" . Scholarpedia . 10 (11): 32832. Código bibliográfico : 2015SchpJ..1032832S . doi : 10.4249 / scholarpedia.32832 .
  39. ^ a b c Hochreiter, Sepp (1991), Untersuchungen zu dynamischen neuronalen Netzen , Tesis de diploma, Institut f. Informatik, Technische Univ. Múnich, Asesor Jürgen Schmidhuber
  40. ^ Giles, C. Lee; Miller, Clifford B .; Chen, Dong; Chen, Hsing-Hen; Sun, Guo-Zheng; Lee, Yee-Chun (1992). "Aprendizaje y extracción de autómatas de estado finito con redes neuronales recurrentes de segundo orden" (PDF) . Computación neuronal . 4 (3): 393–405. doi : 10.1162 / neco.1992.4.3.393 . S2CID 19666035 .  
  41. ^ Omlin, Christian W .; Giles, C. Lee (1996). "Construcción de autómatas deterministas de estado finito en redes neuronales recurrentes". Revista de la ACM . 45 (6): 937–972. CiteSeerX 10.1.1.32.2364 . doi : 10.1145 / 235809.235811 . S2CID 228941 .  
  42. ^ Gers, Felix A .; Schraudolph, Nicol N .; Schmidhuber, Jürgen (2002). "Aprendizaje de la sincronización precisa con LSTM Recurrent Networks" (PDF) . Revista de investigación sobre aprendizaje automático . 3 : 115-143 . Consultado el 13 de junio de 2017 .
  43. ^ Bayer, Justin; Wierstra, Daan; Togelius, Julian; Schmidhuber, Jürgen (14 de septiembre de 2009). Evolución de las estructuras de las células de memoria para el aprendizaje de secuencias (PDF) . Redes neuronales artificiales - ICANN 2009 . Apuntes de conferencias en informática. 5769 . Berlín, Heidelberg: Springer. págs. 755–764. doi : 10.1007 / 978-3-642-04277-5_76 . ISBN  978-3-642-04276-8.
  44. ^ Fernández, Santiago; Graves, Alex; Schmidhuber, Jürgen (2007). "Etiquetado de secuencias en dominios estructurados con redes neuronales recurrentes jerárquicas". Proc. 20ª Conferencia Internacional Conjunta sobre Inligencia Artificial, Ijcai 2007 : 774–779. CiteSeerX 10.1.1.79.1887 . 
  45. ^ Tumbas, Alex; Fernández, Santiago; Gómez, Faustino J. (2006). "Clasificación temporal conexionista: etiquetado de datos de secuencia no segmentados con redes neuronales recurrentes". Actas de la Conferencia internacional sobre aprendizaje automático : 369–376. CiteSeerX 10.1.1.75.6306 . 
  46. ^ Gers, Felix A .; Schmidhuber, Jürgen (noviembre de 2001). "Las redes recurrentes de LSTM aprenden lenguajes sencillos, libres de contexto y sensibles al contexto" . Transacciones IEEE en redes neuronales . 12 (6): 1333-1340. doi : 10.1109 / 72.963769 . ISSN 1045-9227 . PMID 18249962 . S2CID 10192330 .   
  47. ^ Diablos, Joel; Salem, Fathi M. (12 de enero de 2017). "Variaciones de unidad cerrada mínima simplificada para redes neuronales recurrentes". arXiv : 1701.03452 [ cs.NE ].
  48. ^ Dey, Rahul; Salem, Fathi M. (20 de enero de 2017). "Variantes de puerta de redes neuronales de unidad recurrente cerrada (GRU)". arXiv : 1701.05923 [ cs.NE ].
  49. ^ Chung, Junyoung; Gulcehre, Caglar; Cho, KyungHyun; Bengio, Yoshua (2014). "Evaluación empírica de redes neuronales recurrentes cerradas en modelado de secuencia". arXiv : 1412,3555 [ cs.NE ].
  50. ^ Britz, Denny (27 de octubre de 2015). "Tutorial de redes neuronales recurrentes, Parte 4 - Implementación de un RNN GRU / LSTM con Python y Theano - WildML" . Wildml.com . Consultado el 18 de mayo de 2016 .
  51. ^ Tumbas, Alex; Schmidhuber, Jürgen (1 de julio de 2005). "Clasificación de fonemas framewise con LSTM bidireccional y otras arquitecturas de redes neuronales". Redes neuronales . IJCNN 2005. 18 (5): 602–610. CiteSeerX 10.1.1.331.5800 . doi : 10.1016 / j.neunet.2005.06.042 . PMID 16112549 .  
  52. ^ a b Thireou, Trias; Reczko, Martin (julio de 2007). "Redes de memoria bidireccionales a corto plazo para predecir la localización subcelular de proteínas eucariotas". Transacciones IEEE / ACM sobre biología computacional y bioinformática . 4 (3): 441–446. doi : 10.1109 / tcbb.2007.1015 . PMID 17666763 . S2CID 11787259 .  
  53. ^ Harvey, Inman; Maridos, Phil; Cliff, Dave (1994), "Ver la luz: evolución artificial, visión real" , 3ª conferencia internacional sobre simulación de comportamiento adaptativo: de animales a animats 3 , págs. 392–401
  54. ^ Quinn, Matthew (2001). "Evolución de la comunicación sin canales de comunicación dedicados". Avances en vida artificial . Apuntes de conferencias en informática. 2159 . págs. 357–366. CiteSeerX 10.1.1.28.5890 . doi : 10.1007 / 3-540-44811-X_38 . ISBN  978-3-540-42567-0. Falta o vacío |title=( ayuda )
  55. ^ Cerveza, Randall D. (1997). "La dinámica del comportamiento adaptativo: un programa de investigación". Robótica y sistemas autónomos . 20 (2–4): 257–289. doi : 10.1016 / S0921-8890 (96) 00063-2 .
  56. Sherstinsky, Alex (7 de diciembre de 2018). Bloem-Reddy, Benjamin; Paige, Brooks; Kusner, Matt; Caruana, Rich; Rainforth, Tom; Teh, Yee Whye (eds.). Derivación de la definición de red neuronal recurrente y desenrollado de RNN mediante procesamiento de señales . Taller de crítica y corrección de tendencias en aprendizaje automático en NeurIPS-2018 .
  57. ^ Paine, Rainer W .; Tani, junio (1 de septiembre de 2005). "Cómo se autoorganiza el control jerárquico en sistemas adaptativos artificiales". Comportamiento adaptativo . 13 (3): 211–225. doi : 10.1177 / 105971230501300303 . S2CID 9932565 . 
  58. ^ "Burns, Benureau, Tani (2018) una constante de tiempo adaptativa inspirada en Bergson para el modelo de red neuronal recurrente de múltiples escalas de tiempo. JNNS" .
  59. ^ Tutschku, Kurt (junio de 1995). Perceptrones multicapa recurrentes para identificación y control: el camino hacia las aplicaciones . Informe de Investigación del Instituto de Ciencias de la Computación. 118 . Universidad de Würzburg Am Hubland. CiteSeerX 10.1.1.45.3527 . CS1 maint: date and year (link)
  60. ^ Yamashita, Yuichi; Tani, junio (7 de noviembre de 2008). "Aparición de la jerarquía funcional en un modelo de red neuronal de múltiples escalas de tiempo: un experimento de robot humanoide" . PLOS Biología Computacional . 4 (11): e1000220. Código bibliográfico : 2008PLSCB ... 4E0220Y . doi : 10.1371 / journal.pcbi.1000220 . PMC 2570613 . PMID 18989398 .  
  61. ^ Alnajjar, Fady; Yamashita, Yuichi; Tani, junio (2013). "La conectividad jerárquica y funcional de los mecanismos cognitivos de orden superior: modelo neurorobótico para investigar la estabilidad y flexibilidad de la memoria de trabajo" . Fronteras en Neurorobótica . 7 : 2. doi : 10.3389 / fnbot.2013.00002 . PMC 3575058 . PMID 23423881 .  
  62. ^ "Burns, Benureau, Tani (2018) una constante de tiempo adaptativa inspirada en Bergson para el modelo de red neuronal recurrente de múltiples escalas de tiempo. JNNS" .
  63. ^ "Actas de la 28ª Conferencia Anual de la Sociedad Japonesa de Redes Neuronales (octubre de 2018)" (PDF) .
  64. ^ Tumbas, Alex; Wayne, Greg; Danihelka, Ivo (2014). "Máquinas de Turing neuronales". arXiv : 1410,5401 [ cs.NE ].
  65. ^ Sol, Guo-Zheng; Giles, C. Lee; Chen, Hsing-Hen (1998). "El autómata pushdown de la red neuronal: arquitectura, dinámica y formación". En Giles, C. Lee; Gori, Marco (eds.). Procesamiento adaptativo de secuencias y estructuras de datos . Apuntes de conferencias en informática. Berlín, Heidelberg: Springer. págs. 296–345. CiteSeerX 10.1.1.56.8723 . doi : 10.1007 / bfb0054003 . ISBN  9783540643418.
  66. ^ Snider, Greg (2008), "Computación cortical con nanodispositivos memristivos" , Revisión de Sci-DAC , 10 : 58-65
  67. ^ Caravelli, Francesco; Traversa, Fabio Lorenzo; Di Ventra, Massimiliano (2017). "La dinámica compleja de los circuitos memristivos: resultados analíticos y relajación lenta universal". Revisión E física . 95 (2): 022140. arXiv : 1608.08651 . Código bibliográfico : 2017PhRvE..95b2140C . doi : 10.1103 / PhysRevE.95.022140 . PMID 28297937 . S2CID 6758362 .  
  68. Caravelli, Francesco (7 de noviembre de 2019). "Comportamiento asintótico de circuitos memristivos" . Entropía . 21 (8): 789. Bibcode : 2019Entrp..21..789C . doi : 10.3390 / e21080789 . PMC 789 . PMID 33267502 .  
  69. ^ Werbos, Paul J. (1988). "Generalización de la retropropagación con aplicación a un modelo de mercado de gas recurrente" . Redes neuronales . 1 (4): 339–356. doi : 10.1016 / 0893-6080 (88) 90007-x .
  70. ^ Rumelhart, David E. (1985). Aprendizaje de representaciones internas por propagación de errores . San Diego (CA): Instituto de Ciencias Cognitivas, Universidad de California.
  71. ^ Robinson, Anthony J .; Fallside, Frank (1987). La red de propagación dinámica de errores impulsada por servicios públicos . Informe técnico CUED / F-INFENG / TR.1. Departamento de Ingeniería, Universidad de Cambridge.
  72. ^ Williams, Ronald J .; Zipser, D. (1 de febrero de 2013). "Algoritmos de aprendizaje basados ​​en gradientes para redes recurrentes y su complejidad computacional". En Chauvin, Yves; Rumelhart, David E. (eds.). Retropropagación: teoría, arquitecturas y aplicaciones . Prensa de psicología. ISBN 978-1-134-77581-1.
  73. Schmidhuber, Jürgen (1 de enero de 1989). "Un algoritmo de aprendizaje local para redes dinámicas feedforward y recurrentes". Ciencia de la conexión . 1 (4): 403–412. doi : 10.1080 / 09540098908915650 . S2CID 18721007 . 
  74. Príncipe, José C .; Euliano, Neil R .; Lefebvre, W. Curt (2000). Sistemas neuronales y adaptativos: fundamentos a través de simulaciones . Wiley. ISBN 978-0-471-35167-2.
  75. ^ Yann, Ollivier; Tallec, Corentin; Charpiat, Guillaume (28 de julio de 2015). "Entrenando redes recurrentes online sin dar marcha atrás". arXiv : 1507.07680 [ cs.NE ].
  76. Schmidhuber, Jürgen (1 de marzo de 1992). "Un algoritmo de aprendizaje de complejidad de tiempo de almacenamiento O (n3) de tamaño fijo para redes de funcionamiento continuo totalmente recurrentes". Computación neuronal . 4 (2): 243–248. doi : 10.1162 / neco.1992.4.2.243 . S2CID 11761172 . 
  77. ^ Williams, Ronald J. (1989). "Complejidad de algoritmos de cálculo de gradiente exacto para redes neuronales recurrentes" . Informe técnico NU-CCS-89-27. Boston (MA): Universidad Northeastern, Facultad de Ciencias de la Computación. Cite journal requires |journal= (help)
  78. Pearlmutter, Barak A. (1 de junio de 1989). "Aprendizaje de trayectorias espaciales de estado en redes neuronales recurrentes" . Computación neuronal . 1 (2): 263–269. doi : 10.1162 / neco.1989.1.2.263 . S2CID 16813485 . 
  79. ^ Hochreiter, Sepp; et al. (15 de enero de 2001). "Gradiente de flujo en redes recurrentes: la dificultad de aprender dependencias a largo plazo" . En Kolen, John F .; Kremer, Stefan C. (eds.). Una guía de campo para redes dinámicas recurrentes . John Wiley e hijos. ISBN 978-0-7803-5369-5.
  80. ^ Campolucci, Paolo; Uncini, Aurelio; Piazza, Francesco; Rao, Bhaskar D. (1999). "Algoritmos de aprendizaje en línea para redes neuronales recurrentes localmente". Transacciones IEEE en redes neuronales . 10 (2): 253-271. CiteSeerX 10.1.1.33.7550 . doi : 10.1109 / 72.750549 . PMID 18252525 .  
  81. ^ Wan, Eric A .; Beaufays, Françoise (1996). "Derivación esquemática de algoritmos de gradiente para redes neuronales". Computación neuronal . 8 : 182-201. doi : 10.1162 / neco.1996.8.1.182 . S2CID 15512077 . 
  82. ↑ a b Campolucci, Paolo; Uncini, Aurelio; Piazza, Francesco (2000). "Un enfoque de gráfico de flujo de señal para el cálculo de gradiente en línea". Computación neuronal . 12 (8): 1901-1927. CiteSeerX 10.1.1.212.5406 . doi : 10.1162 / 089976600300015196 . PMID 10953244 . S2CID 15090951 .   
  83. ^ Gómez, Faustino J .; Miikkulainen, Risto (1999), "Solving non-Markovian control tasks with neuroevolution" (PDF) , IJCAI 99 , Morgan Kaufmann , consultado el 5 de agosto de 2017
  84. ^ Syed, Omar (mayo de 1995). "Aplicación de algoritmos genéticos a redes neuronales recurrentes para el aprendizaje de la arquitectura y los parámetros de la red" . M.Sc. tesis, Departamento de Ingeniería Eléctrica, Universidad Case Western Reserve, Asesor Yoshiyasu Takefuji.
  85. ^ Gómez, Faustino J .; Schmidhuber, Jürgen; Miikkulainen, Risto (junio de 2008). "Evolución neuronal acelerada a través de sinapsis coevolucionadas cooperativamente" . Revista de investigación sobre aprendizaje automático . 9 : 937–965.
  86. Siegelmann, Hava T .; Horne, Bill G .; Giles, C. Lee (1995). "Capacidades computacionales de redes neuronales NARX recurrentes" . Transacciones IEEE sobre sistemas, hombre y cibernética, parte B (cibernética) . 27 (2): 208–15. CiteSeerX 10.1.1.48.7468 . doi : 10.1109 / 3477.558801 . PMID 18255858 .  
  87. ^ Metz, Cade (18 de mayo de 2016). "Google construyó sus propios chips para impulsar sus bots de inteligencia artificial" . Cableado .
  88. ^ Mayer, Hermann; Gómez, Faustino J .; Wierstra, Daan; Nagy, Istvan; Knoll, Alois; Schmidhuber, Jürgen (octubre de 2006). Un sistema para cirugía robótica del corazón que aprende a atar nudos utilizando redes neuronales recurrentes . 2006 Conferencia Internacional IEEE / RSJ sobre Robots y Sistemas Inteligentes . págs. 543–548. CiteSeerX 10.1.1.218.3399 . doi : 10.1109 / IROS.2006.282190 . ISBN  978-1-4244-0258-8. S2CID  12284900 .
  89. ^ Wierstra, Daan; Schmidhuber, Jürgen; Gómez, Faustino J. (2005). "Evolino: neuroevolución híbrida / búsqueda lineal óptima para el aprendizaje de secuencias" . Actas de la 19ª Conferencia Conjunta Internacional sobre Inteligencia Artificial (IJCAI), Edimburgo : 853–858.
  90. Petneházi, Gábor (1 de enero de 2019). "Redes neuronales recurrentes para la predicción de series de tiempo". arXiv : 1901.00069 [ cs.LG ].
  91. ^ Hewamalage, Hansika; Bergmeir, Christoph; Bandara, Kasun (2020). "Redes neuronales recurrentes para el pronóstico de series de tiempo: estado actual y direcciones futuras". Revista Internacional de Pronósticos . 37 : 388–427. arXiv : 1909.00590 . doi : 10.1016 / j.ijforecast.2020.06.008 . S2CID 202540863 . 
  92. ^ Tumbas, Alex; Schmidhuber, Jürgen (2005). "Clasificación de fonemas framewise con LSTM bidireccional y otras arquitecturas de redes neuronales". Redes neuronales . 18 (5–6): 602–610. CiteSeerX 10.1.1.331.5800 . doi : 10.1016 / j.neunet.2005.06.042 . PMID 16112549 .  
  93. ^ Fernández, Santiago; Graves, Alex; Schmidhuber, Jürgen (2007). Una aplicación de redes neuronales recurrentes para detectar palabras clave discriminatorias . Actas de la 17ª Conferencia Internacional sobre Redes Neuronales Artificiales . ICANN'07. Berlín, Heidelberg: Springer-Verlag. págs. 220-229. ISBN 978-3540746935.
  94. ^ Tumbas, Alex; Mohamed, Abdel-rahman; Hinton, Geoffrey E. (2013). "Reconocimiento de voz con redes neuronales recurrentes profundas". Procesamiento de acústica, habla y señales (ICASSP), Conferencia internacional IEEE 2013 en : 6645–6649. arXiv : 1303.5778 . Código bibliográfico : 2013arXiv1303.5778G . doi : 10.1109 / ICASSP.2013.6638947 . ISBN 978-1-4799-0356-6. S2CID  206741496 .
  95. ^ Chang, Edward F .; Chartier, Josh; Anumanchipalli, Gopala K. (24 de abril de 2019). "Síntesis de voz a partir de la decodificación neuronal de oraciones habladas". Naturaleza . 568 (7753): 493–498. Código Bib : 2019Natur.568..493A . doi : 10.1038 / s41586-019-1119-1 . ISSN 1476-4687 . PMID 31019317 . S2CID 129946122 .   
  96. ^ Malhotra, Pankaj; Vig, Lovekesh; Shroff, Gautam; Agarwal, Puneet (abril de 2015). "Redes de memoria a corto plazo para la detección de anomalías en series de tiempo" (PDF) . Simposio europeo sobre redes neuronales artificiales, inteligencia computacional y aprendizaje automático - ESANN 2015 .
  97. ^ Gers, Felix A .; Schraudolph, Nicol N .; Schmidhuber, Jürgen (2002). "Aprendizaje de tiempos precisos con redes recurrentes LSTM" (PDF) . Revista de investigación sobre aprendizaje automático . 3 : 115-143.
  98. ^ Eck, Douglas; Schmidhuber, Jürgen (28 de agosto de 2002). Aprendiendo la estructura a largo plazo del blues . Redes neuronales artificiales - ICANN 2002 . Apuntes de conferencias en informática. 2415 . Berlín, Heidelberg: Springer. págs. 284-289. CiteSeerX 10.1.1.116.3620 . doi : 10.1007 / 3-540-46084-5_47 . ISBN  978-3540460848.
  99. ^ Schmidhuber, Jürgen; Gers, Felix A .; Eck, Douglas (2002). "Aprendizaje de idiomas no regulares: una comparación de redes recurrentes simples y LSTM". Computación neuronal . 14 (9): 2039-2041. CiteSeerX 10.1.1.11.7369 . doi : 10.1162 / 089976602320263980 . PMID 12184841 . S2CID 30459046 .   
  100. ^ Gers, Felix A .; Schmidhuber, Jürgen (2001). "LSTM Recurrent Networks aprende lenguajes sencillos, libres de contexto y sensibles al contexto" (PDF) . Transacciones IEEE en redes neuronales . 12 (6): 1333-1340. doi : 10.1109 / 72.963769 . PMID 18249962 .  
  101. ^ Pérez-Ortiz, Juan Antonio; Gers, Felix A .; Eck, Douglas; Schmidhuber, Jürgen (2003). "Los filtros de Kalman mejoran el rendimiento de la red LSTM en problemas que las redes tradicionales recurrentes no pueden resolver". Redes neuronales . 16 (2): 241–250. CiteSeerX 10.1.1.381.1992 . doi : 10.1016 / s0893-6080 (02) 00219-8 . PMID 12628609 .  
  102. ^ Tumbas, Alex; Schmidhuber, Jürgen (2009). "Reconocimiento de escritura sin conexión con redes neuronales recurrentes multidimensionales". Avances en sistemas de procesamiento de información neuronal 22, NIPS'22 . Vancouver (BC): MIT Press: 545–552.
  103. ^ Tumbas, Alex; Fernández, Santiago; Liwicki, Marcus; Bunke, Horst; Schmidhuber, Jürgen (2007). Reconocimiento de escritura a mano en línea sin restricciones con redes neuronales recurrentes . Actas de la 20ª Conferencia Internacional sobre Sistemas de Procesamiento de Información Neural . NIPS'07. Curran Associates Inc. págs. 577–584. ISBN 9781605603520.
  104. ^ Baccouche, Moez; Mamalet, Franck; Wolf, Christian; García, Christophe; Baskurt, Atilla (2011). Salah, Albert Ali; Lepri, Bruno (eds.). "Deep Learning secuencial para el reconocimiento de la acción humana". 2do Taller Internacional de Comprensión del Comportamiento Humano (HBU) . Apuntes de conferencias en informática. Amsterdam, Holanda: Springer. 7065 : 29–39. doi : 10.1007 / 978-3-642-25446-8_4 . ISBN 978-3-642-25445-1.
  105. ^ Hochreiter, Sepp; Heusel, Martin; Obermayer, Klaus (2007). "Detección rápida de homología de proteínas basada en modelos sin alineación" . Bioinformática . 23 (14): 1728-1736. doi : 10.1093 / bioinformatics / btm247 . PMID 17488755 . 
  106. ^ Impuestos, Niek; Verenich, Ilya; La Rosa, Marcello; Dumas, Marlon (2017). Monitoreo predictivo de procesos de negocios con redes neuronales LSTM . Actas de la Conferencia Internacional sobre Ingeniería de Sistemas de Información Avanzada (CAiSE) . Apuntes de conferencias en informática. 10253 . págs. 477–492. arXiv : 1612.02130 . doi : 10.1007 / 978-3-319-59536-8_30 . ISBN 978-3-319-59535-1. S2CID  2192354 .
  107. ^ Choi, Edward; Bahadori, Mohammad Taha; Schuetz, Andy; Stewart, Walter F .; Sol, Jimeng (2016). "Doctor AI: predicción de eventos clínicos a través de redes neuronales recurrentes" . Actas de la 1ª Conferencia sobre aprendizaje automático para el sector sanitario . 56 : 301–318. arXiv : 1511.05942 . Código bibliográfico : 2015arXiv151105942C . PMC 5341604 . PMID 28286600 .  

Lectura adicional [ editar ]

  • Mandic, Danilo P. y Chambers, Jonathon A. (2001). Redes neuronales recurrentes para la predicción: algoritmos de aprendizaje, arquitecturas y estabilidad . Wiley. ISBN 978-0-471-49517-8.

Enlaces externos [ editar ]

  • Marco de redes neuronales recurrentes Seq2SeqSharp LSTM / BiLSTM / Transformer que se ejecuta en CPU y GPU para tareas de secuencia a secuencia ( C # , .NET )
  • RNNSharp CRFs basados ​​en redes neuronales recurrentes ( C # , .NET )
  • Redes neuronales recurrentes con más de 60 artículos de RNN del grupo de Jürgen Schmidhuber en el Instituto Dalle Molle para la investigación en inteligencia artificial
  • Implementación de la red neuronal Elman para WEKA
  • Redes neuronales recurrentes y LSTM en Java
  • un intento alternativo para RNN completo / impulsado por recompensas