Una Recurrent Neural Network o red neuronal re­cu­rre­n­te (también conocida como RNN por sus siglas en inglés) es una red que puede usar re­tro­ali­me­n­ta­ción, creando así una especie de memoria. Esta técnica se aplica pri­n­ci­pa­l­me­n­te al manejo de datos se­cue­n­cia­les y requiere un esfuerzo co­n­si­de­ra­ble en cuanto a en­tre­na­mie­n­to.

¿Qué es una Recurrent Neural Network?

Una red neuronal re­cu­rre­n­te es una red neuronal ar­ti­fi­cial capaz de generar re­tro­ali­me­n­ta­ción y re­in­tro­du­cir in­fo­r­ma­ción de salida como nueva entrada. Este método se emplea es­pe­cia­l­me­n­te para procesar datos se­cue­n­cia­les en el ámbito del apre­n­di­za­je profundo y de la in­te­li­ge­n­cia ar­ti­fi­cial o IA. Al recibir in­fo­r­ma­ción de entradas an­te­rio­res, la red neuronal re­cu­rre­n­te de­sa­rro­lla una especie de memoria y ajusta las salidas según los elementos previos de la secuencia. Existen di­fe­re­n­tes tipos de re­tro­ali­me­n­ta­ción, lo que aumenta tanto las po­si­bi­li­da­des como la co­m­ple­ji­dad del en­tre­na­mie­n­to.

He­rra­mie­n­tas de IA
Saca el máximo partido a la in­te­li­ge­n­cia ar­ti­fi­cial
  • Crea tu página web en tiempo récord
  • Impulsa tu negocio gracias al marketing de IA
  • Ahorra tiempo y obtén mejores re­su­l­ta­dos

¿Cómo funcionan las Recurrent Neural Networks?

A primera vista, las redes neu­ro­na­les re­cu­rre­n­tes parecen estar es­tru­c­tu­ra­das de manera similar a otras redes neu­ro­na­les. Constan de al menos tres capas di­fe­re­n­tes (en inglés, “layers”), que contienen neuronas co­ne­c­ta­das por aristas. Más co­n­cre­ta­me­n­te, hablamos de una capa de entrada (Input Layer), una capa de salida (Output Layer) y una cantidad variable de capas in­te­r­me­dias, conocidas como capas ocultas (Hidden Layers).

  • Capa de entrada: en esta capa, se reciben datos del entorno, que luego se ponderan y se envían a la siguiente capa.
  • Capas in­te­r­me­dias: son las Hidden Layers (capas ocultas). Aquí, la in­fo­r­ma­ción se tra­n­s­fie­re y se pondera nue­va­me­n­te. Este proceso ocurre en cada capa adicional y es invisible, de ahí su nombre.
  • Capa de salida: la in­fo­r­ma­ción evaluada o mo­di­fi­ca­da se emite a través de la Output Layer o capa de salida. Esta salida puede ser el resultado final o puede servir como entrada para otras neuronas.
Imagen: Gráfica sobre redes neuronales recurrentes
En una Recurrent Neural Network se generan re­tro­ali­me­n­ta­cio­nes.

Lo especial de una red neuronal re­cu­rre­n­te es la po­si­bi­li­dad de de­te­r­mi­nar la dirección del flujo de in­fo­r­ma­ción. Gracias a la re­tro­ali­me­n­ta­ción, la salida de una neurona no tiene que ir ne­ce­sa­ria­me­n­te a la siguiente capa, sino que puede re­in­gre­sar en la misma neurona, en otra neurona de la misma capa o en una neurona de la capa anterior. El parámetro de po­n­de­ra­ción es el mismo en todas las capas. La re­tro­ali­me­n­ta­ción se clasifica en cuatro ca­te­go­rías:

  • Re­tro­ali­me­n­ta­ción directa: la salida de la misma neurona se usa como entrada.
  • Re­tro­ali­me­n­ta­ción indirecta: la salida de una neurona se conecta con una capa anterior.
  • Re­tro­ali­me­n­ta­ción lateral: la salida de una neurona se conecta a la entrada de otra neurona de la misma capa.
  • Re­tro­ali­me­n­ta­ción completa: todas las salidas de las neuronas están co­ne­c­ta­das a otras neuronas.

¿Cómo se entrenan las redes neu­ro­na­les re­cu­rre­n­tes?

El en­tre­na­mie­n­to de las redes neu­ro­na­les re­cu­rre­n­tes es bastante complejo, ya que la in­fo­r­ma­ción más antigua a menudo no se tiene en cuenta o no lo su­fi­cie­n­te. Para so­lu­cio­nar este problema, se utilizan funciones como la memoria a corto-largo plazo o Long Short-Term Memory (LSTM), que permiten almacenar in­fo­r­ma­ción durante más tiempo. Con el en­tre­na­mie­n­to adecuado, una Recurrent Neural Network o red neuronal re­cu­rre­n­te puede di­s­ti­n­guir la in­fo­r­ma­ción im­po­r­ta­n­te de la que no lo es y volver a in­tro­du­cir la relevante en la red.

¿Qué ar­qui­te­c­tu­ras existen para estas redes neu­ro­na­les?

Existen di­fe­re­n­tes ar­qui­te­c­tu­ras que di­s­ti­n­guen a las redes neu­ro­na­les re­cu­rre­n­tes entre sí. Estas son las más comunes:

  • One to many: la Recurrent Neural Network recibe una entrada y genera varias salidas. Un ejemplo práctico es la su­b­ti­tu­la­ción de imágenes, donde a partir de una palabra clave se genera una oración.
  • Many to one: se reciben varias entradas que se asocian a una única salida. Este principio se utiliza, por ejemplo, en el análisis de se­n­ti­mie­n­to, donde se predicen re­s­pue­s­tas basadas en re­fe­re­n­cias an­te­rio­res.
  • Many to many: se usan varias entradas para obtener varias salidas, pero no tienen que ser ne­ce­sa­ria­me­n­te iguales en número. Esta técnica se utiliza, por ejemplo, en la tra­du­c­ción de un idioma a otro.

¿Cuáles son los pri­n­ci­pa­les campos de apli­ca­ción de las Recurrent Neural Networks?

Las redes neu­ro­na­les re­cu­rre­n­tes son es­pe­cia­l­me­n­te útiles cuando el contexto es im­po­r­ta­n­te en el pro­ce­sa­mie­n­to de la in­fo­r­ma­ción. Esto es crucial para el manejo de datos se­cue­n­cia­les, que tienen un orden o una secuencia temporal es­pe­cí­fi­ca. En estos casos, las RNN pueden predecir mejor los re­su­l­ta­dos al tener en cuenta las entradas an­te­rio­res. Entre los campos de apli­ca­ción más de­s­ta­ca­dos se en­cue­n­tran:

  • Pre­di­c­cio­nes y datos de series te­m­po­ra­les: las RNN se utilizan para predecir eventos o valores basados en datos hi­s­tó­ri­cos, como en el análisis del mercado fi­na­n­cie­ro, la pre­di­c­ción del clima o el consumo de energía.
  • Pro­ce­sa­mie­n­to del lenguaje natural (NLP): en el ámbito del pro­ce­sa­mie­n­to del lenguaje natural o Natural Language Pro­ce­s­si­ng, las redes neu­ro­na­les re­cu­rre­n­tes son pa­r­ti­cu­la­r­me­n­te útiles. Se emplean en tareas como la tra­du­c­ción au­to­má­ti­ca, el modelado de lenguaje, el re­co­no­ci­mie­n­to de texto y la ge­ne­ra­ción au­to­má­ti­ca de textos.
  • Re­co­no­ci­mie­n­to de voz: las Recurrent Neural Networks juegan un papel clave en la te­c­no­lo­gía de re­co­no­ci­mie­n­to de voz, donde se utilizan para convertir el habla en texto. Estas apli­ca­cio­nes se en­cue­n­tran, por ejemplo, en asi­s­te­n­tes digitales y servicios de tra­n­s­cri­p­ción au­to­má­ti­ca.
  • Análisis de imágenes y vídeos: aunque las redes neu­ro­na­les re­cu­rre­n­tes se usan pri­n­ci­pa­l­me­n­te para procesar datos se­cue­n­cia­les, también se pueden aplicar al análisis de imágenes y vídeos, es­pe­cia­l­me­n­te cuando se trata de se­cue­n­cias de imágenes o vídeos, como en el resumen de vídeos o la detección de ac­ti­vi­da­des en vídeos de vi­gi­la­n­cia.

¿En qué se di­fe­re­n­cian de una Fee­d­fo­r­wa­rd Neural Network?

La Recurrent Neural Network es una evolución de las redes neu­ro­na­les pre­ali­me­n­ta­das o Fee­d­fo­r­wa­rd Neural Networks (FNN), que no permiten la re­tro­ali­me­n­ta­ción. En una FNN, la in­fo­r­ma­ción fluye siempre en una única dirección hacia la siguiente capa. No es posible una re­in­tro­du­c­ción hacia capas an­te­rio­res. De esta manera, las redes neu­ro­na­les pre­ali­me­n­ta­das pueden reconocer patrones, pero no pueden apro­ve­char la in­fo­r­ma­ción procesada pre­via­me­n­te.

Ir al menú principal