stringtranslate.com

Red neuronal recurrente

Las redes neuronales recurrentes (RNN) son una clase de redes neuronales artificiales para el procesamiento secuencial de datos. A diferencia de las redes neuronales de avance , que procesan datos en una sola pasada, las RNN procesan datos en múltiples pasos de tiempo, lo que las hace bien adaptadas para modelar y procesar texto, voz y series de tiempo . [1]

El componente fundamental de un RNN es la unidad recurrente. Esta unidad mantiene un estado oculto, esencialmente una forma de memoria, que se actualiza en cada paso de tiempo en función de la entrada actual y el estado oculto anterior. Este circuito de retroalimentación permite a la red aprender de entradas pasadas e incorporar ese conocimiento en su procesamiento actual.

Los primeros RNN sufrieron el problema del gradiente de desaparición, lo que limitó su capacidad para aprender dependencias de largo alcance. Esto se resolvió con la invención de las redes de memoria a corto plazo (LSTM) en 1997, que se convirtieron en la arquitectura estándar para RNN.

Se han aplicado a tareas como el reconocimiento de escritura a mano conectada y no segmentada , [2] reconocimiento de voz , [3] [4] procesamiento del lenguaje natural y traducción automática neuronal . [5] [6]

Historia

Antes de LSTM

Uno de los orígenes de RNN fue la mecánica estadística . El modelo de Ising fue desarrollado por Wilhelm Lenz [7] y Ernst Ising [8] en la década de 1920 [9] como un modelo mecánico estadístico simple de imanes en equilibrio. Glauber en 1963 estudió el modelo de Ising evolucionando en el tiempo, como un proceso hacia el equilibrio ( dinámica de Glauber ), añadiendo la componente de tiempo. [10] Shun'ichi Amari en 1972 propuso modificar los pesos de un modelo de Ising mediante la regla de aprendizaje hebbiana como modelo de memoria asociativa, agregando el componente de aprendizaje. [11] Esto se popularizó como la red Hopfield (1982). [12]

Otro origen de RNN fue la neurociencia. La palabra "recurrente" se utiliza para describir estructuras en forma de bucle en anatomía. En 1901, Cajal observó "semicírculos recurrentes" en la corteza cerebelosa formados por fibras paralelas , células de Purkinje y células granulares . [13] En 1933, Lorente de Nó descubrió "conexiones recíprocas recurrentes" mediante el método de Golgi , y propuso que los bucles excitadores explican ciertos aspectos del reflejo vestíbulo-ocular . [14] [15] Durante la década de 1940, varias personas propusieron la existencia de retroalimentación en el cerebro, lo que contrastaba con la comprensión anterior del sistema neuronal como una estructura puramente de retroalimentación. Hebb consideró el "circuito reverberante" como explicación de la memoria a corto plazo. [16] El artículo de McCulloch y Pitts (1943), que propuso el modelo neuronal de McCulloch-Pitts , consideraba redes que contienen ciclos. La actividad actual de dichas redes puede verse afectada por la actividad indefinidamente en el pasado. [17] Ambos estaban interesados ​​en los circuitos cerrados como posibles explicaciones para, por ejemplo, la epilepsia y la causalgia . [18] [19] La inhibición recurrente se propuso en 1946 como un mecanismo de retroalimentación negativa en el control motor. Los bucles de retroalimentación neuronal fueron un tema común de discusión en las conferencias de Macy . [20] Véase [21] para una revisión extensa de los modelos de redes neuronales recurrentes en neurociencia.

Minsky y Papert señalaron que las redes recurrentes se pueden desarrollar en el tiempo en una red de avance en capas. (pág. 354 [22] )

Con el resurgimiento de las redes neuronales en la década de 1980, se volvieron a estudiar las redes recurrentes. A veces se les llamaba "redes iteradas". [23] Dos de los primeros trabajos influyentes fueron la red Jordan (1986) y la red Elman (1990), que aplicaron RNN para estudiar la psicología cognitiva . En 1993, un sistema compresor de historia neuronal resolvió una tarea de "aprendizaje muy profundo" que requería más de 1000 capas posteriores en un RNN desplegado en el tiempo. [24]

LSTM

Hochreiter y Schmidhuber inventaron las redes de memoria a largo plazo (LSTM) en 1995 y establecieron récords de precisión en múltiples dominios de aplicaciones. [25] [26] Se convirtió en la opción predeterminada para la arquitectura RNN.

Alrededor de 2006, LSTM comenzó a revolucionar el reconocimiento de voz , superando a los modelos tradicionales en determinadas aplicaciones de voz. [27] [28] LSTM también mejoró el reconocimiento de voz de gran vocabulario [3] [4] y la síntesis de texto a voz [29] y se utilizó en la búsqueda por voz de Google y en el dictado en dispositivos Android . [30]

LSTM batió récords en traducción automática mejorada , [31] modelado de lenguaje [32] y procesamiento de lenguaje multilingüe. [33] LSTM combinado con redes neuronales convolucionales (CNN) mejoró los subtítulos automáticos de imágenes . [34]

La idea de la transducción de secuencias codificador-decodificador se desarrolló a principios de la década de 2010. Los artículos citados con mayor frecuencia como los creadores que produjeron seq2seq son dos artículos de 2014. [35] [36] Una arquitectura seq2seq emplea dos RNN, típicamente LSTM, un "codificador" y un "decodificador", para la transducción de secuencias, como la máquina. traducción. Se convirtieron en lo último en traducción automática y fueron fundamentales en el desarrollo del mecanismo de atención y el transformador .

Configuraciones

Un modelo basado en RNN se puede dividir en dos partes: configuración y arquitectura. Se pueden combinar varios RNN en un flujo de datos, y el flujo de datos en sí es la configuración. Cada RNN puede tener cualquier arquitectura, incluidos LSTM, GRU, etc.

Estándar

Red neuronal recurrente básica comprimida (izquierda) y desplegada (derecha)

Los RNN vienen en muchas variantes. En términos abstractos, un RNN es una función de tipo , donde

En palabras, es una red neuronal que asigna una entrada a una salida , con el vector oculto desempeñando el papel de "memoria", un registro parcial de todos los pares entrada-salida anteriores. En cada paso, transforma la entrada en una salida y modifica su "memoria" para ayudarle a realizar mejor el procesamiento futuro.

La ilustración de la derecha puede resultar engañosa para muchos porque las topologías prácticas de redes neuronales con frecuencia se organizan en "capas" y el dibujo da esa apariencia. Sin embargo, lo que parecen ser capas son, en realidad, diferentes pasos en el tiempo, "desplegados" para producir la apariencia de capas .

RNN apilado

RNN apilado.

Un RNN apilado, o RNN profundo, se compone de varios RNN apilados uno encima del otro. De manera abstracta, está estructurado de la siguiente manera

  1. La capa 1 tiene vectores , parámetros y mapas ocultos .
  2. La capa 2 tiene vectores , parámetros y mapas ocultos .
  3. ...
  4. La capa tiene vectores , parámetros y mapas ocultos .

Cada capa funciona como un RNN independiente y la secuencia de salida de cada capa se utiliza como secuencia de entrada para la capa superior. No hay límite para la altura del RNN.

Bidireccional

RNN bidireccional.

Un RNN bidireccional se compone de dos RNN, uno procesa la secuencia de entrada en una dirección y otro en la dirección opuesta. De manera abstracta, se estructura de la siguiente manera:

Luego, las dos secuencias de salida se concatenan para obtener la salida total: .

El RNN bidireccional permite que el modelo procese un token tanto en el contexto de lo que vino antes como de lo que vino después. Al apilar varios RNN bidireccionales, el modelo puede procesar un token cada vez más contextualmente. El modelo ELMo (2018) [37] es un LSTM bidireccional apilado que toma el nivel de carácter como entrada y produce incrustaciones a nivel de palabra.

Codificador-decodificador

Un decodificador sin codificador.
Codificador-decodificador RNN sin mecanismo de atención.
Codificador-decodificador RNN con mecanismo de atención.


Se pueden ejecutar dos RNN de adelante hacia atrás en una configuración de codificador-decodificador. El codificador RNN procesa una secuencia de entrada en una secuencia de vectores ocultos, y el decodificador RNN procesa la secuencia de vectores ocultos en una secuencia de salida, con un mecanismo de atención opcional . Esto se utilizó para construir traductores automáticos neuronales de última generación durante el período 2014-2017. Este fue un paso fundamental hacia el desarrollo de Transformers . [38]

PixelRNN

Un RNN puede procesar datos con más de una dimensión. PixelRNN procesa datos bidimensionales, con muchas direcciones posibles. [39] Por ejemplo, la dirección fila por fila procesa una cuadrícula de vectores en el siguiente orden: El BiLSTM diagonal utiliza dos LSTM para procesar la misma cuadrícula. Uno lo procesa desde la esquina superior izquierda hasta la esquina inferior derecha, de modo que se procesa dependiendo de su estado oculto y del estado de la celda en la parte superior e izquierda: y . El otro lo procesa desde la esquina superior derecha hasta la esquina inferior izquierda.

Arquitecturas

Totalmente recurrente

Un RNN completamente conectado con 4 neuronas.

Las redes neuronales totalmente recurrentes (FRNN) conectan las salidas de todas las neuronas con las entradas de todas las neuronas. En otras palabras, es una red totalmente conectada . 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.

Una red Elman simple donde .

Hopfield

La red Hopfield es una RNN en la que todas las conexiones entre capas tienen el mismo tamaño. Requiere entradas estacionarias y, por 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 hebbiano , entonces la red Hopfield puede funcionar como una memoria robusta direccionable por contenido , resistente a la alteración de la conexión.

Redes Elman y redes Jordan.

La red Elman

Una red de Elman es una red de tres capas (dispuesta horizontalmente como x , y 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. [40] En cada paso de tiempo, la entrada se retroalimenta y se aplica una regla de aprendizaje . 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 Jordan son similares a las redes Elman. Las unidades de contexto se alimentan desde la capa de salida en lugar de la capa oculta. Las unidades de contexto en una red Jordan también se denominan capa de estado. Tienen una conexión recurrente consigo mismos. [40]

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

Red Elman [41]
Red de Jordania [42]

Variables y funciones

Memoria larga a corto plazo

Unidad de memoria a corto plazo

La memoria a corto plazo (LSTM) es la arquitectura RNN más utilizada. Fue diseñado para resolver el problema del gradiente que desaparece . LSTM normalmente se ve reforzado por puertas recurrentes llamadas "puertas de olvido". [43] LSTM evita que los errores retropropagados desaparezcan o exploten. [44] 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 que requieren recuerdos de eventos que sucedieron miles o incluso millones de pasos de tiempo discretos antes. Se pueden desarrollar topologías similares a LSTM para problemas específicos. [45] LSTM funciona incluso con grandes retrasos entre eventos importantes y puede manejar señales que mezclan componentes de baja y alta frecuencia.

Muchas aplicaciones utilizan pilas de LSTM [46] , por lo que se denomina "LSTM profundo". 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. [47]

Unidad recurrente cerrada

Unidad recurrente cerrada

La unidad recurrente cerrada (GRU), introducida en 2014, fue diseñada como una simplificación de LSTM. Se utilizan en su forma completa y en varias variantes simplificadas adicionales. [48] ​​[49] Tienen menos parámetros que LSTM, ya que carecen de una puerta de salida. [50]

Se descubrió que su rendimiento 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. [51] No parece haber una diferencia particular de rendimiento entre LSTM y GRU. [51] [52]

Memoria asociativa bidireccional

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

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

Estado de eco

Las redes de estado de eco (ESN) tienen 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 determinadas series temporales . [56] Una variante para estimular neuronas se conoce como máquina de estado líquido . [57]

recursivo

Una red neuronal recursiva [58] 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 . Estas redes normalmente también se entrenan mediante el modo inverso de diferenciación automática . [59] [60] 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 . [61] La red tensorial neuronal recursiva utiliza una función de composición basada en tensor para todos los nodos del árbol. [62]

Máquinas neuronales de Turing

Las máquinas neuronales de Turing (NTM) son un método para extender redes neuronales recurrentes acoplándolas a recursos de memoria externos con los que interactúan. El sistema combinado es análogo a una máquina de Turing o a la arquitectura de Von Neumann, pero es diferenciable de un extremo a otro, lo que permite entrenarlo de manera eficiente con descenso de gradiente . [63]

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

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

Las redes neuronales recurrentes son Turing completas y pueden ejecutar programas arbitrarios para procesar secuencias arbitrarias de entradas. [66]

Capacitación

Maestro forzando

Codificador-decodificador RNN sin mecanismo de atención. La obligación del profesorado se muestra en rojo.

Un RNN se puede entrenar en un modelo de secuencias generativo condicional, también conocido como autorregresión .

Concretamente, consideremos el problema de la traducción automática, es decir, dada una secuencia de palabras en inglés, el modelo produce una secuencia de palabras en francés. Debe resolverse mediante un modelo seq2seq .

Ahora, durante el entrenamiento, la mitad codificadora del modelo primero ingeriría y luego la mitad del decodificador comenzaría a generar una secuencia . El problema es que si el modelo comete un error al principio, digamos en , es probable que los tokens posteriores también sean errores. Esto hace que sea ineficiente que el modelo obtenga una señal de aprendizaje, ya que el modelo aprendería principalmente a desplazarse hacia , pero no a los demás.

El forzado del profesor hace que el decodificador utilice la secuencia de salida correcta para generar la siguiente entrada en la secuencia. Entonces, por ejemplo, vería para generar .

Descenso de gradiente

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 .

El método estándar para entrenar RNN mediante descenso de gradiente es el algoritmo de " propagación hacia atrás a través del tiempo " (BPTT), que es un caso especial del algoritmo general de propagación hacia atrás . Una variante en línea más costosa desde el punto de vista computacional se llama "aprendizaje recurrente en tiempo real" o RTRL, [67] [68] que es un ejemplo 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 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 se realizan continuamente (en línea) y dependen únicamente del paso de tiempo más reciente en lugar de múltiples pasos de tiempo dentro de un horizonte de tiempo determinado como en BPTT. Las redes neuronales biológicas parecen ser locales tanto en el tiempo como en el espacio. [69] [70]

Para calcular recursivamente las derivadas parciales, RTRL tiene una complejidad temporal de O (número de pesos ocultos x) por paso de tiempo para calcular las matrices jacobianas , mientras que BPTT solo toma O (número de pesos) por paso de tiempo, al costo de almacenar todas las activaciones directas dentro del horizonte temporal dado. [71] Existe un híbrido en línea entre BPTT y RTRL con complejidad intermedia, [72] [73] junto con variantes para tiempo continuo. [74]

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

El algoritmo en línea llamado CRBP (causal recursive backpropagation), implementa y combina los paradigmas BPTT y RTRL para redes localmente recurrentes. [77] Funciona con las redes recurrentes localmente 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 unificada de las técnicas de cálculo de gradiente 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ñales. [78] Utiliza el algoritmo por lotes BPTT, basado en el teorema de Lee para los cálculos de sensibilidad de la red. [79] Fue propuesto por Wan y Beaufays, mientras que su versión rápida en línea fue propuesta por Campolucci, Uncini y Piazza. [79]

Clasificación temporal conexionista

La clasificación temporal conexionista (CTC) [80] es una función de pérdida especializada para entrenar RNN para problemas de modelado de secuencia donde la sincronización es variable. [81]

Métodos de optimización global

El entrenamiento de 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 idoneidad 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 con respecto a la secuencia de entrenamiento. Normalmente, la diferencia suma al cuadrado entre las predicciones y los valores objetivo especificados en la secuencia de entrenamiento se utiliza para representar el error del vector de peso actual. Luego 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. [82] [83] [84]

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 está representada como un solo cromosoma. La función de aptitud se evalúa de la siguiente manera:

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

La función de aptitud evalúa el criterio de parada a medida que recibe el error cuadrático medio recíproco 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 utilizar 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 de enjambre de partículas .

Otras arquitecturas

RNN independiente (IndRNN)

La red neuronal recurrente independiente (IndRNN) [76] aborda los problemas de explosión y desaparición del gradiente en la RNN tradicional totalmente 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 retropropagación del gradiente se puede regular para evitar que el gradiente desaparezca y explote con el fin de mantener la memoria a largo o corto plazo. La información entre neuronas se explora en las siguientes capas. IndRNN se puede entrenar de forma sólida con funciones no lineales no saturadas como ReLU. Las redes profundas se pueden entrenar mediante conexiones de salto.

Compresor de historia neuronal

El compresor de historial neuronal es una pila no supervisada de RNN. [85] En el nivel de entrada, aprende a predecir su siguiente entrada a partir de las entradas anteriores. Solo las entradas impredecibles de algunos RNN en la jerarquía se convierten en entradas para el RNN de nivel inmediatamente superior, que por lo tanto vuelve a calcular su estado interno solo en raras ocasiones. Por lo tanto, cada RNN de nivel superior estudia una representación comprimida de la información en el RNN siguiente. Esto se hace de tal 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. [86] Dada la gran previsibilidad que se puede aprender en la secuencia de datos entrantes, el RNN de nivel más alto puede utilizar el aprendizaje supervisado para clasificar fácilmente incluso secuencias profundas con intervalos largos entre eventos importantes.

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

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

RNN de segundo orden

Los RNN de segundo orden utilizan pesos de orden superior en lugar de pesos 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. [87] [88] La memoria a largo plazo es un ejemplo de esto, pero no tiene tales asignaciones formales ni pruebas de estabilidad.

Red neuronal recurrente jerárquica

Las redes neuronales jerárquicas recurrentes (HRNN) conectan sus neuronas de varias maneras para descomponer el comportamiento jerárquico en subprogramas útiles. [85] [89] Estas 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. [90]

Las redes neuronales recurrentes jerárquicas son útiles para realizar pronósticos , ya que ayudan a predecir los componentes de inflación desagregados del índice de precios al consumidor (IPC). El modelo HRNN aprovecha información de niveles superiores en la jerarquía del IPC para mejorar las predicciones de niveles inferiores. La evaluación de un conjunto sustancial de datos del índice IPC-U de EE. UU. demuestra el rendimiento superior del modelo HRNN en comparación con varios métodos establecidos de predicción de la inflación . [91]

Red de perceptrones multicapa recurrente

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

Modelo de múltiples escalas de tiempo

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 dependiendo de la conexión espacial entre las neuronas y de distintos tipos de actividades neuronales, cada una con distintas propiedades de tiempo. [93] [94] 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 la función cerebral de predicción de la memoria de Hawkins en su libro Sobre la inteligencia . [ cita necesaria ] Tal jerarquía también concuerda con las teorías de la memoria propuestas por el filósofo Henri Bergson , que se han incorporado a un modelo MTRNN. [90] [95]

Redes memristivas

Greg Snider de HP Labs describe un sistema de computación cortical con nanodispositivos memristivos. [96] 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 basarse en sistemas memristivos. Las redes memristivas son un tipo particular de red neuronal física que tiene propiedades muy similares a las redes de (Little-)Hopfield, ya que tienen una dinámica continua, una capacidad de memoria limitada y una relajación natural mediante 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 representa un tipo peculiar de ingeniería neuromórfica en la que el comportamiento del dispositivo depende del cableado o la topología del circuito. La evolución de estas redes se puede estudiar analíticamente utilizando variaciones de la ecuación Caravelli-Traversa- Di Ventra . [97]

Tiempo continuo

Una red neuronal recurrente de tiempo continuo (CTRNN) utiliza un sistema de ecuaciones diferenciales ordinarias para modelar los efectos de las entradas entrantes en una neurona. Generalmente se analizan mediante la teoría de sistemas dinámicos . Muchos modelos RNN en neurociencia son de tiempo continuo. [21]

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

Dónde:

Los CTRNN se han aplicado a la robótica evolutiva, donde se han utilizado para abordar la visión, [98] la cooperación, [99] y el comportamiento cognitivo mínimo. [100]

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

En realidad, se trata de 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 principales, 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.

Desde una perspectiva de series de tiempo, los RNN pueden aparecer como versiones no lineales de respuesta de impulso finita y filtros de respuesta de impulso infinito y también como un modelo exógeno autorregresivo no lineal (NARX). [102] RNN tiene una respuesta de impulso infinita, mientras que las redes neuronales convolucionales tienen una respuesta de impulso finita . Ambas clases de redes exhiben un comportamiento dinámico temporal . [103] 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.

El efecto del aprendizaje basado en la memoria para el reconocimiento de secuencias también se puede implementar mediante un modelo más biológico que utiliza el mecanismo de silenciamiento exhibido en neuronas con una actividad de picos de frecuencia relativamente alta. [104]

Se pueden agregar estados almacenados adicionales y el almacenamiento bajo control directo de la red tanto a las redes de impulsos infinitos como a las de impulsos finitos . Otra red o gráfico también puede reemplazar el almacenamiento si incorpora retrasos de tiempo o tiene bucles de retroalimentación. Estos estados controlados se denominan estados cerrados o memoria cerrada y son parte de redes de memoria a corto plazo (LSTM) y unidades recurrentes cerradas . Esto también se llama red neuronal de retroalimentación (FNN).

Bibliotecas

El siguiente pseudocódigo (basado en el lenguaje de programación Python ) ilustra la funcionalidad de una red neuronal recurrente. [105]

def  RNN_forward ( x ,  longitud_secuencia ,  red_neural ,  tamaño_oculto ):  oculto  =  ceros ( tamaño = tamaño_oculto )  # inicializar con ceros para cada serie temporal independiente por separado  y_pred  =  ceros ( tamaño = longitud_secuencia )  para  i  en  el rango ( longitud_secuencia ):  y_pred [ i ] ,  oculto  =  neural_network ( x [ i ],  oculto )  # actualizar estado oculto  devolver  y_pred

Las bibliotecas modernas proporcionan implementaciones optimizadas en tiempo de ejecución de la funcionalidad anterior o permiten acelerar el bucle lento mediante una compilación justo a tiempo .

Aplicaciones

Las aplicaciones de las redes neuronales recurrentes incluyen:

Referencias

  1. ^ 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 Futuro de Computación e Informática . 3 (2): 334–340. doi : 10.1016/j.fcij.2018.10.003 . ISSN  2314-7288.
  2. ^ Tumbas, Alex ; Liwicki, Marco; Fernández, Santiago; Bertolami, romano; Bunke, Horst; Schmidhuber, Jürgen (2009). "Un novedoso sistema conexionista para mejorar el reconocimiento de escritura a mano sin restricciones" (PDF) . Transacciones IEEE sobre análisis de patrones e inteligencia artificial . 31 (5): 855–868. CiteSeerX 10.1.1.139.4502 . doi :10.1109/tpami.2008.137. PMID  19299860. S2CID  14635907. 
  3. ^ ab Sak, Haşim; Mayor, Andrés; Beaufays, Françoise (2014). "Arquitecturas de redes neuronales recurrentes de memoria a corto plazo para modelado acústico a gran escala" (PDF) . Investigación de Google.
  4. ^ ab Li, Xiangang; Wu, Xihong (15 de octubre de 2014). "Construcción de redes neuronales recurrentes profundas basadas en memoria a largo plazo para el reconocimiento de voz de gran vocabulario". arXiv : 1410.4281 [cs.CL].
  5. ^ Dupond, Samuel (2019). "Una revisión exhaustiva sobre el avance actual de las estructuras de redes neuronales". Revisiones Anuales en Control . 14 : 200–230.
  6. ^ 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". Heliyón . 4 (11): e00938. Código bibliográfico : 2018Heliy...400938A. doi : 10.1016/j.heliyon.2018.e00938 . ISSN  2405-8440. PMC 6260436 . PMID  30519653. 
  7. ^ Lenz, W. (1920), "Beiträge zum Verständnis der magnetischen Eigenschaften in festen Körpern", Physikalische Zeitschrift , 21 : 613–615.
  8. ^ Ising, E. (1925), "Beitrag zur Theorie des Ferromagnetismus", Z. Phys. , 31 (1): 253–258, Bibcode :1925ZPhy...31..253I, doi :10.1007/BF02980577, S2CID  122157319
  9. ^ Pincel, Stephen G. (1967). "Historia del modelo Lenz-Ising". Reseñas de Física Moderna . 39 (4): 883–893. Código bibliográfico : 1967RvMP...39..883B. doi :10.1103/RevModPhys.39.883.
  10. ^ Glauber, Roy J. (febrero de 1963). Estadísticas dependientes del tiempo del modelo de Ising "Roy J. Glauber""". Revista de Física Matemática . 4 (2): 294–307. doi : 10.1063/1.1703954 . Consultado el 21 de marzo de 2021 .
  11. ^ Amari, S.-I. (noviembre de 1972). "Aprendizaje de patrones y secuencias de patrones mediante redes autoorganizadas de elementos umbral". Transacciones IEEE en computadoras . C-21 (11): 1197–1206. doi :10.1109/TC.1972.223477. ISSN  0018-9340.
  12. ^ Hopfield, JJ (1982). "Redes neuronales y sistemas físicos con habilidades computacionales colectivas emergentes". Procedimientos de la Academia Nacional de Ciencias . 79 (8): 2554–2558. Código bibliográfico : 1982PNAS...79.2554H. doi : 10.1073/pnas.79.8.2554 . PMC 346238 . PMID  6953413. 
  13. ^ Espinosa-Sánchez, Juan Manuel; Gómez-Marín, Alex; de Castro, Fernando (5 de julio de 2023). "La importancia de la neurociencia de Cajal y Lorente de Nó en el nacimiento de la cibernética". El neurocientífico . doi :10.1177/10738584231179932. hdl : 10261/348372. ISSN  1073-8584. PMID  37403768.
  14. ^ de NÓ, R. Lorente (1 de agosto de 1933). "Arco reflejo vestíbulo-ocular". Archivos de Neurología y Psiquiatría . 30 (2): 245. doi :10.1001/archneurpsyc.1933.02240140009001. ISSN  0096-6754.
  15. ^ Larriva-Sahd, Jorge A. (3 de diciembre de 2014). «Algunas predicciones de Rafael Lorente de Nó 80 años después». Fronteras en Neuroanatomía . 8 : 147. doi : 10.3389/fnana.2014.00147 . ISSN  1662-5129. PMC 4253658 . PMID  25520630. 
  16. ^ "circuito reverberante". Referencia de Oxford . Consultado el 27 de julio de 2024 .
  17. ^ McCulloch, Warren S.; Pitts, Walter (diciembre de 1943). "Un cálculo lógico de las ideas inmanentes a la actividad nerviosa". El Boletín de Biofísica Matemática . 5 (4): 115-133. doi :10.1007/BF02478259. ISSN  0007-4985.
  18. ^ Moreno-Díaz, Roberto; Moreno-Díaz, Arminda (abril de 2007). "Sobre el legado de WS McCulloch". Biosistemas . 88 (3): 185-190. Código Bib : 2007BiSys..88..185M. doi :10.1016/j.biosystems.2006.08.010. PMID  17184902.
  19. ^ Arbib, Michael A (diciembre de 2000). "La búsqueda de Warren McCulloch de la lógica del sistema nervioso". Perspectivas en Biología y Medicina . 43 (2): 193–216. doi :10.1353/pbm.2000.0001. ISSN  1529-8795. PMID  10804585.
  20. ^ Renshaw, Birdsey (1 de mayo de 1946). "Efectos centrales de los impulsos centrípetos en los axones de las raíces ventrales espinales". Revista de Neurofisiología . 9 (3): 191–204. doi :10.1152/jn.1946.9.3.191. ISSN  0022-3077. PMID  21028162.
  21. ^ ab Grossberg, Stephen (22 de febrero de 2013). "Redes neuronales recurrentes". Scholarpedia . 8 (2): 1888. Código bibliográfico : 2013SchpJ...8.1888G. doi : 10.4249/scholarpedia.1888 . ISSN  1941-6016.
  22. ^ Rumelhart, DE, Hinton, GE y Williams, RJ "Aprendizaje de representaciones internas mediante propagación de errores" en Procesamiento distribuido paralelo: exploraciones en la microestructura de la cognición. vol. 1: Fundamentos (eds Rumclhart, DE y McClelland, JL) 318-362 (MIT, Cambridge, 1986).
  23. ^ Rumelhart, David E.; Hinton, Geoffrey E.; Williams, Ronald J. (1986-10). "Aprendizaje de representaciones mediante errores de retropropagación". Naturaleza . 323 (6088): 533–536. doi :10.1038/323533a0. ISSN  1476-4687. {{cite journal}}: Verifique los valores de fecha en: |date=( ayuda )
  24. ^ ab Schmidhuber, Jürgen (1993). Tesis de habilitación: Modelado y optimización de sistemas (PDF) .[ enlace muerto permanente ] La página 150 y siguientes demuestra la asignación de crédito en el equivalente a 1200 capas en un RNN desplegado.
  25. ^ Sepp Hochreiter ; Jürgen Schmidhuber (21 de agosto de 1995), Memoria a largo plazo, Wikidata  Q98967430
  26. ^ ab Hochreiter, Sepp ; Schmidhuber, Jürgen (1 de noviembre de 1997). "Memoria a largo plazo". Computación neuronal . 9 (8): 1735–1780. doi :10.1162/neco.1997.9.8.1735. PMID  9377276. S2CID  1915014.
  27. ^ Tumbas, Alex; Schmidhuber, Jürgen (1 de julio de 2005). "Clasificación de fonemas marco 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. S2CID  1856462. 
  28. ^ ab Fernández, Santiago; Tumbas, Alex; Schmidhuber, Jürgen (2007). "Una aplicación de redes neuronales recurrentes para la detección discriminativa de palabras clave". 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.
  29. ^ Fanático, Bo; Wang, Lijuan; Pronto, Frank K.; Xie, Lei (2015). "Cabeza parlante fotorrealista con LSTM bidireccional profundo". Actas de la Conferencia internacional IEEE de ICASSP 2015 sobre acústica, habla y procesamiento de señales . págs. 4884–8. doi :10.1109/ICASSP.2015.7178899. ISBN 978-1-4673-6997-8.
  30. ^ Sak, Haşim; Mayor, Andrés; Rao, Kanishka; Beaufays, Françoise; Schalkwyk, Johan (septiembre de 2015). "Búsqueda por voz de Google: más rápida y precisa".
  31. ^ ab Sutskever, Ilya; Vinyals, Oriol; Le, Quoc V. (2014). "Aprendizaje secuencia a secuencial 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 Bib : 2014arXiv1409.3215S.
  32. ^ 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].
  33. ^ Gillick, Dan; Brunk, acantilado; Vinyals, Oriol; Subramanya, Amarnag (30 de noviembre de 2015). "Procesamiento de idiomas multilingües a partir de bytes". arXiv : 1512.00103 [cs.CL].
  34. ^ Vinyals, Oriol; Toshev, Alejandro; Bengio, Samy; Erhan, Dumitru (17 de noviembre de 2014). "Mostrar y contar: un generador de subtítulos de imágenes neuronales". arXiv : 1411.4555 [cs.CV].
  35. ^ Cho, Kyunghyun; van Merrienboer, Bart; Gulcehre, Caglar; Bahdanau, Dzmitry; Bougarés, Fethi; Schwenk, Holger; Bengio, Yoshua (3 de junio de 2014). "Aprendizaje de representaciones de frases mediante codificador-decodificador RNN para traducción automática estadística". doi :10.48550/ARXIV.1406.1078. {{cite journal}}: Citar diario requiere |journal=( ayuda )
  36. ^ Sutskever, Ilya; Vinyals, Oriol; Le, Quoc Viet (14 de diciembre de 2014). "Secuencia a secuenciar aprendizaje con redes neuronales". arXiv : 1409.3215 [cs.CL].[primera versión publicada en arXiv el 10 de septiembre de 2014]
  37. ^ Peters ME, Neumann M, Iyyer M, Gardner M, Clark C, Lee K, Zettlemoyer L (2018). "Representaciones de palabras contextualizadas profundas". arXiv : 1802.05365 [cs.CL].
  38. ^ Vaswani, Ashish; Shazeer, Noam; Parmar, Niki; Uszkoreit, Jakob; Jones, León; Gómez, Aidan N; Kaiser, Łukasz; Polosukhin, Illia (2017). "La atención es todo lo que necesitas". Avances en los sistemas de procesamiento de información neuronal . 30 . Curran asociados, Inc.
  39. ^ Oord, Aäron van den; Kalchbrenner, Nal; Kavukcuoglu, Koray (11 de junio de 2016). "Redes neuronales recurrentes de píxeles". Actas de la 33ª Conferencia Internacional sobre Aprendizaje Automático . PMLR: 1747-1756.
  40. ^ ab Cruse, Holk; Redes neuronales como sistemas cibernéticos, segunda edición y revisada
  41. ^ Elman, Jeffrey L. (1990). "Encontrar estructura en el tiempo". Ciencia cognitiva . 14 (2): 179–211. doi : 10.1016/0364-0213(90)90002-E .
  42. ^ Jordania, Michael I. (1 de enero de 1997). "Pedido en serie: un enfoque de procesamiento distribuido en paralelo". Modelos de cognición de redes neuronales: fundamentos bioconductuales . Avances en Psicología. vol. 121, págs. 471–495. doi :10.1016/s0166-4115(97)80111-2. ISBN 978-0-444-81931-4. S2CID  15375627.
  43. ^ Gers, Félix A.; Schraudolph, Nicol N.; Schmidhuber, Jürgen (2002). "Aprendiendo la sincronización precisa con redes recurrentes LSTM" (PDF) . Revista de investigación sobre aprendizaje automático . 3 : 115–143 . Consultado el 13 de junio de 2017 .
  44. ^ a b C Hochreiter, Sepp (1991). Untersuchungen zu dynamischen neuronalen Netzen (PDF) (Diploma). Instituto f. Informática, Universidad Técnica de Múnich.
  45. ^ Bayer, Justin; Wierstra, Daan; Togelius, Julián; Schmidhuber, Jürgen (14 de septiembre de 2009). "Evolución de estructuras de células de memoria para el aprendizaje secuencial". Redes neuronales artificiales - ICANN 2009 (PDF) . Apuntes de conferencias sobre informática. vol. 5769. Berlín, Heidelberg: Springer. págs. 755–764. doi :10.1007/978-3-642-04277-5_76. ISBN 978-3-642-04276-8.
  46. ^ Fernández, Santiago; Tumbas, Alex; Schmidhuber, Jürgen (2007). "Etiquetado de secuencias en dominios estructurados con redes neuronales recurrentes jerárquicas" (PDF) . Actas de la XX Conferencia Internacional Conjunta sobre Inteligencia Artificial, Ijcai 2007 . págs. 774–9. CiteSeerX 10.1.1.79.1887 . 
  47. ^ ab Gers, Félix A.; Schmidhuber, Jürgen (2001). "Las redes recurrentes de LSTM aprenden lenguajes simples sensibles al contexto y libres de contexto" (PDF) . Transacciones IEEE en redes neuronales . 12 (6): 1333–40. doi : 10.1109/72.963769. PMID  18249962. S2CID  10192330. Archivado desde el original (PDF) el 10 de julio de 2020 . Consultado el 12 de diciembre de 2017 .
  48. ^ Diablos, Joel; Salem, Fathi M. (12 de enero de 2017). "Variaciones de unidades cerradas mínimas simplificadas para redes neuronales recurrentes". arXiv : 1701.03452 [cs.NE].
  49. ^ 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].
  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. ^ ab Chung, Junyoung; Gulcehre, Caglar; Cho, KyungHyun; Bengio, Yoshua (2014). "Evaluación empírica de redes neuronales recurrentes cerradas en modelado de secuencias". arXiv : 1412.3555 [cs.NE].
  52. ^ Gruber, N.; Jockisch, A. (2020), "¿Son las células GRU más específicas y las células LSTM más sensibles en la clasificación de motivos del texto?", Frontiers in Artificial Intelligence , 3 : 40, doi : 10.3389/frai.2020.00040 , PMC 7861254 , PMID  33733157, S2CID  220252321 
  53. ^ 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.
  54. ^ Rakkiyappan, Rajan; Chandrasekar, Arunachalam; Lakshmanan, Subramanian; Park, Ju H. (2 de enero de 2015). "Estabilidad exponencial para redes neuronales BAM estocásticas de salto markoviano con control de impulsos y retrasos probabilísticos variables en el tiempo dependientes del modo". Complejidad . 20 (3): 39–65. Código Bib : 2015Cmplx..20c..39R. doi :10.1002/cplx.21503.
  55. ^ Rojas, Rául (1996). Redes neuronales: una introducción sistemática. Saltador. pag. 336.ISBN 978-3-540-60505-8.
  56. ^ Jaeger, Herbert; Haas, Harald (2 de abril de 2004). "Aprovechar la no linealidad: predecir sistemas caóticos y ahorrar energía en la comunicación inalámbrica". Ciencia . 304 (5667): 78–80. Código Bib : 2004 Ciencia... 304... 78J. CiteSeerX 10.1.1.719.2301 . doi : 10.1126/ciencia.1091277. PMID  15064413. S2CID  2184251. 
  57. ^ Maass, Wolfgang; Natschläger, Thomas; Markram, Henry (2002). "Computación en tiempo real sin estados estables: un nuevo marco para la computación neuronal basada en perturbaciones" (PDF) . Computación neuronal . 14 (11): 2531–2560. doi :10.1162/089976602760407955. PMID  12433288. S2CID  1045112.
  58. ^ Goller, Christoph; Küchler, Andreas (1996). "Aprendizaje de representaciones distribuidas dependientes de tareas mediante propagación hacia atrás a través de la estructura". Actas de la Conferencia Internacional sobre Redes Neuronales (ICNN'96) . vol. 1. pág. 347. CiteSeerX 10.1.1.52.4759 . doi :10.1109/ICNN.1996.548916. ISBN  978-0-7803-3210-2. S2CID  6536466.
  59. ^ 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 (MSc) (en finlandés). Universidad de Helsinki.
  60. ^ Griewank, Andreas; Walther, Andrea (2008). Evaluación de derivados: principios y técnicas de diferenciación algorítmica (Segunda ed.). SIAM. ISBN 978-0-89871-776-1.
  61. ^ Socher, Richard; Lin, acantilado; Ng, Andrés 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)
  62. ^ Socher, Richard; Perelygin, Alex; Wu, Jean Y.; Chuang, Jason; Manning, Christopher D.; Ng, Andrés Y.; Potts, Cristóbal. "Modelos profundos recursivos para la composicionalidad semántica sobre un banco de árboles de sentimientos" (PDF) . Emlp 2013 .
  63. ^ Tumbas, Alex; Wayne, Greg; Danihelka, Ivo (2014). "Máquinas neuronales de Turing". arXiv : 1410.5401 [cs.NE].
  64. ^ Tumbas, Alex; Wayne, Greg; Reynolds, Malcolm; Harley, Tim; Danihelka, Ivo; Grabska-Barwińska, Agnieszka; Colmenarejo, Sergio Gómez; Grefenstette, Eduardo; Ramalho, Tiago (12 de octubre de 2016). "Computación híbrida mediante una red neuronal con memoria externa dinámica". Naturaleza . 538 (7626): 471–476. Código Bib :2016Natur.538..471G. doi : 10.1038/naturaleza20101. ISSN  1476-4687. PMID  27732574. S2CID  205251479.
  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 sobre informática. Berlín, Heidelberg: Springer. págs. 296–345. CiteSeerX 10.1.1.56.8723 . doi :10.1007/bfb0054003. ISBN  978-3-540-64341-8.
  66. ^ Hyötyniemi, Heikki (1996). "Las máquinas de Turing son redes neuronales recurrentes". Actas de STeP '96/Publicaciones de la Sociedad Finlandesa de Inteligencia Artificial : 13–24.
  67. ^ 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.
  68. ^ 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.
  69. ^ Schmidhuber, Jürgen (1 de enero de 1989). "Un algoritmo de aprendizaje local para redes recurrentes y de avance dinámico". Ciencia de la conexión . 1 (4): 403–412. doi :10.1080/09540098908915650. S2CID  18721007.
  70. ^ 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.
  71. ^ Yann, Ollivier; Tallec, Corentin; Charpiat, Guillaume (28 de julio de 2015). "Formación de redes recurrentes online sin retroceso". arXiv : 1507.07680 [cs.NE].
  72. ^ Schmidhuber, Jürgen (1 de marzo de 1992). "Un algoritmo de aprendizaje de complejidad de tiempo de almacenamiento de tamaño fijo O (n3) para redes totalmente recurrentes en funcionamiento continuo". Computación neuronal . 4 (2): 243–248. doi :10.1162/neco.1992.4.2.243. S2CID  11761172.
  73. ^ Williams, Ronald J. (1989). Complejidad de los algoritmos de cálculo de gradiente exacto para redes neuronales recurrentes (Informe). Informe Técnico NU-CCS-89-27. Boston (MA): Universidad Northeastern, Facultad de Ciencias de la Computación. Archivado desde el original el 20 de octubre de 2017 . Consultado el 2 de julio de 2017 .
  74. ^ Pearlmutter, Barak A. (1 de junio de 1989). "Aprendizaje de trayectorias espaciales de estados en redes neuronales recurrentes". Computación neuronal . 1 (2): 263–269. doi :10.1162/neco.1989.1.2.263. S2CID  16813485.
  75. ^ Hochreiter, Sepp; et al. (15 de enero de 2001). "Flujo de gradiente 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.
  76. ^ ab Li, Shuai; Li, Wanqing; Cocinero, Chris; Zhu, Ce; Yanbo, Gao (2018). "Red neuronal independientemente recurrente (IndRNN): construcción de una RNN más larga y profunda". arXiv : 1803.04831 [cs.CV].
  77. ^ Campolucci, Paolo; Uncini, Aurelio; Plaza, Francisco; Rao, Bhaskar D. (1999). "Algoritmos de aprendizaje en línea para redes neuronales localmente recurrentes". Transacciones IEEE en redes neuronales . 10 (2): 253–271. CiteSeerX 10.1.1.33.7550 . doi : 10.1109/72.750549. PMID  18252525. 
  78. ^ 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.
  79. ^ ab Campolucci, Paolo; Uncini, Aurelio; Plaza, 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. 
  80. ^ 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" (PDF) . Actas de la Conferencia Internacional sobre Aprendizaje Automático . págs. 369–376. CiteSeerX 10.1.1.75.6306 . doi :10.1145/1143844.1143891. ISBN  1-59593-383-2.
  81. ^ Hannun, Awni (27 de noviembre de 2017). "Modelado de secuencias con CTC". Destilar . 2 (11): e8. doi : 10.23915/distill.00008. ISSN  2476-0757.
  82. ^ Gómez, Faustino J.; Miikkulainen, Risto (1999), "Resolver tareas de control no markovianas con neuroevolución" (PDF) , IJCAI 99 , Morgan Kaufmann , consultado el 5 de agosto de 2017
  83. ^ Syed, Omar (mayo de 1995). Aplicación de algoritmos genéticos a redes neuronales recurrentes para aprender la arquitectura y los parámetros de la red (Maestría). Departamento de Ingeniería Eléctrica, Universidad Case Western Reserve.
  84. ^ Gómez, Faustino J.; Schmidhuber, Jürgen; Míikkulainen, Risto (junio de 2008). "Evolución neuronal acelerada a través de sinapsis coevolucionadas cooperativamente" (PDF) . Revista de investigación sobre aprendizaje automático . 9 : 937–965.
  85. ^ abcd Schmidhuber, Jürgen (1992). "Aprendizaje de secuencias extendidas y complejas utilizando el principio de compresión histórica" ​​(PDF) . Computación neuronal . 4 (2): 234–242. doi :10.1162/neco.1992.4.2.234. S2CID  18271205.[ enlace muerto permanente ]
  86. ^ Schmidhuber, Jürgen (2015). "Aprendizaje profundo". Scholarpedia . 10 (11): 32832. Código bibliográfico : 2015SchpJ..1032832S. doi : 10.4249/scholarpedia.32832 .
  87. ^ 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 estados finitos 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.
  88. ^ Omlin, Christian W.; Giles, C. Lee (1996). "Construcción de autómatas deterministas de estados finitos 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. 
  89. ^ 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.
  90. ^ ab "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".
  91. ^ Barkan, Oren; Benchimol, Jonathan; Caspi, Itamar; Cohen, Eliya; Martillo, Allon; Koenigstein, Noam (2023). "Predicción de los componentes de inflación del IPC con redes neuronales recurrentes jerárquicas". Revista internacional de previsión . 39 (3): 1145-1162. arXiv : 2011.07920 . doi : 10.1016/j.ijforecast.2022.04.009.
  92. ^ Tutschku, Kurt (junio de 1995). Perceptrones multicapa recurrentes para identificación y control: el camino hacia las aplicaciones . Informe del Instituto de Investigación en Ciencias de la Computación. vol. 118. Universidad de Würzburg Am Hubland. CiteSeerX 10.1.1.45.3527 . 
  93. ^ Yamashita, Yuichi; Tani, junio (7 de noviembre de 2008). "Aparición de una 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 Bib : 2008PLSCB...4E0220Y. doi : 10.1371/journal.pcbi.1000220 . PMC 2570613 . PMID  18989398. 
  94. ^ Alnajjar, Fady; Yamashita, Yuichi; Tani, junio (2013). "La conectividad jerárquica y funcional de 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. 
  95. ^ "Actas de la 28ª Conferencia Anual de la Sociedad Japonesa de Redes Neurales (octubre de 2018)" (PDF) .
  96. ^ Snider, Greg (2008), "Computación cortical con nanodispositivos memristivos", Sci-DAC Review , 10 : 58–65, archivado desde el original el 16 de mayo de 2016 , consultado el 6 de septiembre de 2019
  97. ^ Caravelli, Francesco; Traversa, Fabio Lorenzo; Di Ventra, Massimiliano (2017). "La compleja dinámica de los circuitos memristivos: resultados analíticos y relajación lenta universal". Revisión física E. 95 (2): 022140. arXiv : 1608.08651 . Código bibliográfico : 2017PhRvE..95b2140C. doi : 10.1103/PhysRevE.95.022140. PMID  28297937. S2CID  6758362.
  98. ^ Harvey, Inman; Maridos, Phil; Cliff, Dave (1994), "Ver la luz: evolución artificial, visión real", tercera conferencia internacional sobre simulación del comportamiento adaptativo: de animales a animats 3 , págs.
  99. ^ Quinn, Matt (2001). "Comunicación en evolución sin canales de comunicación dedicados". Avances en vida artificial: 6ª Conferencia Europea, ECAL 2001 . págs. 357–366. doi :10.1007/3-540-44811-X_38. ISBN 978-3-540-42567-0.
  100. ^ 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.
  101. ^ Sherstinsky, Alex (7 de diciembre de 2018). Bloem-Reddy, Benjamín; Paige, Brooks; Kusner, Matt; Caruana, Rico; Más adelante, Tom; Teh, Yee Whye (eds.). Derivación de la definición de red neuronal recurrente y desarrollo de RNN mediante procesamiento de señales. Taller de crítica y corrección de tendencias en aprendizaje automático en NeurIPS-2018.
  102. ^ 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. 
  103. ^ Miljanovic, Milos (febrero-marzo de 2012). "Análisis comparativo de redes neuronales de respuesta a impulsos finitos y recurrentes en la predicción de series temporales" (PDF) . Revista india de informática e ingeniería . 3 (1).
  104. ^ Hodassman, Shiri; Meir, Yuval; Kisos, Karin; Ben-Noam, Itamar; Tugendhaft, Yael; Goldental, Amir; Vardi, Roni; Kanter, ido (29 de septiembre de 2022). "Mecanismo de silenciamiento neuronal inspirado en el cerebro para permitir una identificación de secuencia confiable". Informes científicos . 12 (1): 16003. arXiv : 2203.13028 . Código Bib : 2022NatSR..1216003H. doi : 10.1038/s41598-022-20337-x . ISSN  2045-2322. PMC 9523036 . PMID  36175466. 
  105. ^ Chollet, Francois; Kalinowski, Tomasz; Allaire, JJ (13 de septiembre de 2022). Aprendizaje profundo con R, segunda edición. Simón y Schuster. ISBN 978-1-63835-078-1.
  106. ^ Metz, Cade (18 de mayo de 2016). "Google construyó sus propios chips para impulsar sus robots de inteligencia artificial". Cableado .
  107. ^ Mayer, Hermann; Gómez, Faustino J.; Wierstra, Daan; Nagy, István; Loma, Alois; Schmidhuber, Jürgen (octubre de 2006). "Un sistema para cirugía cardíaca robótica que aprende a hacer 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.
  108. ^ Wierstra, Daan; Schmidhuber, Jürgen; Gómez, Faustino J. (2005). "Evolino: neuroevolución híbrida / búsqueda lineal óptima para el aprendizaje secuencial". Actas de la XIX Conferencia Internacional Conjunta sobre Inteligencia Artificial (IJCAI), Edimburgo . págs. 853–8. OCLC  62330637.
  109. ^ Petneházi, Gábor (1 de enero de 2019). "Redes neuronales recurrentes para previsión de series temporales". arXiv : 1901.00069 [cs.LG].
  110. ^ Hewamalage, Hansika; Bergmeir, Christoph; Bandara, Kasun (2020). "Redes neuronales recurrentes para la previsión de series temporales: estado actual y direcciones futuras". Revista internacional de previsión . 37 : 388–427. arXiv : 1909.00590 . doi : 10.1016/j.ijforecast.2020.06.008. S2CID  202540863.
  111. ^ Tumbas, Alex; Schmidhuber, Jürgen (2005). "Clasificación de fonemas marco 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. S2CID  1856462. 
  112. ^ Tumbas, Alex; Mohamed, Abdel-rahman; Hinton, Geoffrey E. (2013). "Reconocimiento de voz con redes neuronales recurrentes profundas". Conferencia internacional IEEE 2013 sobre acústica, habla y procesamiento de señales . págs. 6645–9. arXiv : 1303.5778 . Código Bib : 2013arXiv1303.5778G. doi :10.1109/ICASSP.2013.6638947. ISBN 978-1-4799-0356-6. S2CID  206741496.
  113. ^ Chang, Edward F.; Chartier, Josh; Anumanchipalli, Gopala K. (24 de abril de 2019). "Síntesis de voz a partir de decodificación neuronal de frases habladas". Naturaleza . 568 (7753): 493–8. Código Bib :2019Natur.568..493A. doi :10.1038/s41586-019-1119-1. ISSN  1476-4687. PMC 9714519 . PMID  31019317. S2CID  129946122. 
  114. ^ Moisés, David A.; Metzger, Sean L.; Liu, Jessie R.; Anumanchipalli, Gopala K.; Makin, José G.; Sol, Pengfei F.; Chartier, Josh; Dougherty, Maximiliano E.; Liu, Patricia M.; Abrams, Gary M.; Tu-Chan, Adelyn; Ganguly, Karunesh; Chang, Edward F. (15 de julio de 2021). "Neuroprótesis para decodificar el habla en una persona paralizada con anartria". Revista de Medicina de Nueva Inglaterra . 385 (3): 217–227. doi :10.1056/NEJMoa2027540. PMC 8972947 . PMID  34260835. 
  115. ^ Malhotra, Pankaj; Vig, Lovekesh; Shroff, Gautam; Agarwal, Puneet (abril de 2015). "Redes de memoria a largo plazo para la detección de anomalías en series temporales". Simposio europeo sobre redes neuronales artificiales, inteligencia computacional y aprendizaje automático – ESANN 2015 . Ciaco. págs. 89–94. ISBN 978-2-87587-015-5.
  116. ^ "Papeles con código: DeepHS-HDRVideo: reconstrucción de vídeo de alto rango dinámico, alta velocidad y profundidad". paperswithcode.com . Consultado el 13 de octubre de 2022 .
  117. ^ Gers, Félix A.; Schraudolph, Nicol N.; Schmidhuber, Jürgen (2002). "Aprendiendo la sincronización precisa con redes recurrentes LSTM" (PDF) . Revista de investigación sobre aprendizaje automático . 3 : 115-143.
  118. ^ Eck, Douglas; Schmidhuber, Jürgen (28 de agosto de 2002). "Aprender la estructura a largo plazo del blues". Redes neuronales artificiales: ICANN 2002 . Apuntes de conferencias sobre informática. vol. 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-3-540-46084-8.
  119. ^ Schmidhuber, Jürgen; Gers, Félix A.; Eck, Douglas (2002). "Aprendizaje de lenguajes 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. 
  120. ^ Pérez-Ortiz, Juan Antonio; Gers, Félix A.; Eck, Douglas; Schmidhuber, Jürgen (2003). "Los filtros Kalman mejoran el rendimiento de la red LSTM en problemas que las redes recurrentes tradicionales 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. 
  121. ^ Tumbas, Alex; Schmidhuber, Jürgen (2009). "Reconocimiento de escritura a mano sin conexión con redes neuronales recurrentes multidimensionales" (PDF) . Avances en los sistemas de procesamiento de información neuronal . vol. 22, NIPS'22. Prensa del MIT. págs. 545–552.
  122. ^ Tumbas, Alex; Fernández, Santiago; Liwicki, Marco; Bunke, Horst; Schmidhuber, Jürgen (2007). "Reconocimiento de escritura a mano en línea sin restricciones con redes neuronales recurrentes". Actas de la XX Conferencia Internacional sobre Sistemas de Procesamiento de Información Neural . Asociados Curran. págs. 577–584. ISBN 978-1-60560-352-0.
  123. ^ Baccouche, Moez; Mamalet, Franck; Lobo, cristiano; García, Christophe; Baskurt, Atilla (2011). "Aprendizaje profundo secuencial para el reconocimiento de la acción humana". En Salah, Albert Ali; Lepri, Bruno (eds.). Comprensión del comportamiento humano . Apuntes de conferencias sobre informática. vol. 7065. Ámsterdam, Países Bajos: Springer. págs. 29–39. doi :10.1007/978-3-642-25446-8_4. ISBN 978-3-642-25445-1.
  124. ^ Hochreiter, Sepp; Heusel, Martín; 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/bioinformática/btm247 . PMID  17488755.
  125. ^ Thireou, Trias; Reczko, Martín (julio de 2007). "Redes de memoria bidireccionales a largo plazo para predecir la localización subcelular de proteínas eucarióticas". Transacciones IEEE/ACM sobre biología computacional y bioinformática . 4 (3): 441–446. doi :10.1109/tcbb.2007.1015. PMID  17666763. S2CID  11787259.
  126. ^ Impuestos, Niek; Verenich, Ilya; La Rosa, Marcello; Dumas, Marlon (2017). "Monitoreo predictivo de procesos de negocio con redes neuronales LSTM". Ingeniería Avanzada en Sistemas de Información . Apuntes de conferencias sobre informática. vol. 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.
  127. ^ Choi, Eduardo; 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 conferencias y talleres de JMLR . 56 : 301–318. arXiv : 1511.05942 . Código Bib : 2015arXiv151105942C. PMC 5341604 . PMID  28286600. 
  128. ^ "La inteligencia artificial ayuda a acelerar el progreso hacia reacciones de fusión eficientes". Universidad de Princeton . Consultado el 12 de junio de 2023 .

Otras lecturas