RNR

Las RNR (Redes Neuronales Recurrentes) son un grupo de redes neuronales especializadas en procesar datos secuenciales, x(1)…, x(t), de longitud variable y con la capacidad de incrementar el tamaño (longitud) de las secuencias, algo inviable para redes sin especialización basada en secuencias.

 

Red Neuronal Recurrente en el tiempo
RNR en el tiempo

Opera con tiempo, es decir, en cada paso de tiempo (ciclo), acepta un vector de entrada y actualiza su estado oculto a través de funciones de activación no lineales, lo usa para hacer una predicción de su salida. El estado oculto puede almacenar información como representaciones distribuidas de alta dimensión (en oposición al HMM-Hidden Markov Mode, modelo oculto de Markov) y su dinámica no lineal pueden implementar grandes cálculos para realizar tareas de modelado y predicción para secuencias de cadenas complejas.

 

 

 

Las RNR se caracterizan por el tipo de neurona , el esquema de conexión de las mismas (topología) y el algoritmo de aprendizaje empleado para adaptar su función de cálculo a las necesidades del problema a tratar.

 

Red neuronal recurrente de una capa
RNR de 1 – capa

Su principal característica es que deben tener, al menos, un circuito de retroalimentación. Esto nos ofrece dos topologías básicas:

 

  • Una Capa. La red puede consistir en una sola capa de neuronas, cada neurona alimenta con su señal de salida a las entradas de las otras neuronas. En esta estructura no hay bucles de auto-retroalimentación (Auto-retroalimentación se refiere a una situación donde la salida de una neurona es la entrada de la misma). En el modelo tampoco existen neuronas ocultas.

 

  • Capa Oculta.En este modelo aparecen las neuronas ocultas y las conexiones de retroalimentación provienen también de las salidas de las neuronas ocultas.

 

 

Red neuronal recurrente capa oculta
RNR de capa oculta

 

En ambos modelos se encuentran ramas particulares compuestas de elementos de retardo de tiempo (denominados Z), esto da como resultado una dinámica no lineal de comportamiento. También podemos verla de forma unidireccional con una línea de retardo y desplegada en el tiempo con dos ciclos.

 

 

 

 

 

En función del modelo de conexión las RNR pueden ser:

  1. Totalmente recurrentes. Son aquellas que cada neurona puede estar conectada a cualquier otra y sus conexiones recurrentes son variables.
  2. Parcialmente recurrentes. Son aquellas que sus conexiones recurrentes son fijas. Estas últimas son la forma usual para reconocer o reproducir secuencias. Generalmente tienen la mayoría de las conexiones hacia adelante pero incluyen un conjunto de conexiones retroalimentadas.

 

Existen dos formas básicas de aplicar la retroalimentación:

  1. Es aplicada a una única neurona dentro de la red.
  2. Engloba una o más capas ocultas o toda la red que permiten:
    1. Memoria asociativa o por contenido (content-addressable memory).
    2. Auto-asociación.
    3. Reconstrucción dinámica de un proceso caótico.

 

En un breve resumen podríamos decir que su principal ventaja estriba en la posibilidad de almacenar (memorizar) una representación de la historia reciente de la secuencia, lo que permite, a diferencia de lo que ocurre con las redes neuronales no recurrentes, que la salida ante un determinado vector de entrada pueda variar en función de la configuración interna actual de la red. Son más potentes que las redes neuronales hacia adelante (feed-forward), debido a su memoria y a que el procesamiento de datos es dinámico.

 

Su principal inconveniente estriba en la dificultad para entrenarlas, sobre todo en el aprendizaje de contextos relativamente grandes. Inicialmente el modelo de entrenamiento basado en gradientes parece el más aplicable, porque se pueden calcular de forma ligera mediante el algoritmo BPTT (Backpropagation Through Time), pero fallan al entrenar la red con familias que necesitan muchos pasos de tiempo (Ciclos). Para superar esta limitación se han propuesto modelos como el LSTM (Long Long-Term Memory) y el que utiliza unidades repetidas segmentadas denominadas GRU (Gated Recurrent Units).