Javier Vélez Reyes - Artículos
Data & Inteligencia Artificial

Arquitecturas del Dato IA & ML

Redes Neuronales Jerárquicas

Inteligencia Artificial Conexionista III
Javier Vélez Junio 2024 9 mins

Introducción

En el artículo anterior, exploramos las redes neuronales recurrentes, una clase de arquitecturas diseñadas para procesar datos secuenciales. Su aplicación principal residía en escenarios donde el orden de los elementos resultaba crucial. Estas redes permitían abordar problemas donde la secuencia de los datos era fundamental, capturando dependencias temporales y relaciones a largo plazo.

Las redes neuronales recurrentes habían marcado un importante paso adelante dentro del desarrollo de la Inteligencia Artificial Conexionista, ya que peritirían un nuevo tipo de procesamiento de información capaz de comprender datos que mantienen una fuerte relación secuencial o temporal. Y es que su capacidad para recordar a lo largo del tiempo información pasada las convertiría años después en estructuras altamente valiosas para problemas caracterizados por datos de esta naturaleza.

Pero, sin lugar a dudas, dentro de la familia de redes neuronales estructurales, cuyo estudio estamos abordando a lo largo de esta serie, también destacan las redes jerárquicas. Este tipo de redes ofrecen una forma eficiente de procesar información organizada de manera jerárquica, como estructuras arboreas. Y es que en situaciones donde los datos presentan una organización en niveles de esta naturaleza, estas redes aparecen como una solución muy pertinente.

A lo largo de este artículo, hablaremos en detalle de este tipo de redes, explorando su arquitectura, funcionamiento y aplicaciones prácticas. Analizaremos cómo se comparan con otros tipos de redes neuronales y discutiremos los problemas específicos que pueden abordar de manera efectiva. También examinaremos las ventajas y desventajas de este enfoque y su contribución al campo de la Inteligencia Artificial Conexionista.

Redes Neuronales Jerárquicas

Las redes neuronales jerárquicas se presentarían en torno al año 1989 de la mano de Yann LeCun como una solución especialmente eficiente para procesar información con una marcada estructura jerárquica inherente. En el contexto evolutivo de las redes neuronales, estas arquitecturas surgirían como una alternativa a las aproximaciones anteriores, que mostrarían limitaciones al tratar con datos organizados jerárquicamente.

Mientras que las redes densamente conectadas enlazaban cada neurona con todas las de la capa anterior, resultando en un gran número de parámetros y dificultando así los procesos de entrenamiento, las redes convolucionales habían ofrecido una solución más eficiente para datos con una clara estructura espacial. Las redes neuronales recurrentes, por su parte, se habían centrado en el procesamiento de datos secuenciales con una presencia de dependencias temporales entre los mismos. Sin embargo, aún no se sabía hacer frente a problemas cuyos datos mantubieran una organización relacional de carácter jerárquico. Las redes jerárquicas, surgirian de esta manera como una solución al respecto, al organizar la colección de neuronas constituyentes de acuerdo a una estructura en árbol para capturar las relaciones entre los diferentes niveles de la jerarquía.

Desde un punto de vista evolutivo, las redes neuronales jerárquicas se ubicarían dentro del desarrollo de arquitecturas de red especializadas para el procesamiento de datos estructurados, área de investigación que habia tomado un fuerte impulso tras los avances de las redes convolucionales. Y es que, a medida que la Inteligencia Artificial Conexionista avanzaba, se hacía más y más evidente la necesidad de idear modelos capaces de hacer frente a problemas vinculados a espacios de información con fuertes dependencias temporales o espaciales, lo que impulsaría la investigación en nuevas arquitecturas como las redes jerárquicas.

Una red neuronal jerárquica, en este sentido, se presentaba como un tipo de arquitectura de red dentro de la familia de redes neuronales estructurales, donde las neuronas se organizarían de forma arborea por donde fluiría la información de forma jerárquica. Cada nodo de la estructura jerarquica quedaría representado por un conjunto de neuronas, y las conexiones entre los nodos definirían la propia naturaleza jerárquica de la red.

Y es que, precisamente dada su disposición anatómica neuronal, las redes de esta naturaleza presentaban una marcada diferenciación con respecto a otros tipos de redes neuronales en su organización en árbol. A diferencia de las redes densas, donde todas las neuronas están conectadas, o las redes convolucionales, donde las conexiones son locales, las redes jerárquicas establecerían conexiones basadas en la estructura jerárquica de los datos lo que permitiría capturar relaciones entre diferentes niveles de la información y procesarla de manera eficiente.

El funcionamiento de una red neuronal jerárquica implicaría la propagación de la información a través de una estructura jerárquica por niveles, realizando cálculos neuronales en cada nodo de la estructura. Dependiendo de la tarea, la información podría fluir desde las hojas hacia la raíz para realizar una clasificación o desde la raíz hacia las hojas para generar una estructura jerárquica. En cada nodo, las neuronas procesarían la información recibida y la pasarían al siguiente nivel de la jerarquía.

El entrenamiento de una red neuronal jerárquica se realizaría de forma similar a como ocurría en otras redes neuronales, utilizando algoritmos convencionales de retropropagación para ajustar los pesos de las conexiones. Sin embargo, la estructura jerárquica de la red condicionaría fuertemente el proceso de entrenamiento, ya que los gradientes de aprendizaje se propagarían a través del árbol, actualizando los pesos de acuerdo en alineamiento con la naturaleza jerárquica de la información.

A lo largo de los años se idearían diversos tipos de redes neuronales jerárquicas cuyo estudio por menorizado cae fuera de los propósitos de este artículo. Cada una de estas variantes presentaría sus propias características y estaría orientado a hacer frente a problemas específicos de diferente naturaleza. A las Redes Neuronales Jerarquicas convencionales se le sumarían por ejemplo, las Redes Convolucionales Jerárquicas que se desarrollarían como una solución de mejora sobre las soluciones convolucionales. Igualmente, las Redes Recurrentes Jerárquicas se presentarían como una solución orientada al procesamiento mejorado de largas secuencias temporales de datos. Por su parte, las Redes Jerárquicas con Atención supondrían una mejora significativa en las tareas de procesamiento de texto. Y finalmente, dentro del ámbito de soluciones generativas, las Redes Jerárquicas Variacionales permitirían generar datos complejos controlando dicha generación desde representaciones de información latentes organizadas en niveles.

En definitiva, este tipo de redes ofrecería una nueva forma de procesar información organizada de manera jerárquica, abriendo nuevas posibilidades en el campo de la Inteligencia Artificial Conexionista. Y es que su capacidad para capturar relaciones entre diferentes niveles de la información las convertiría en una herramienta valiosa para resolver problemas complejos de esta naturaleza.

Redes Neuronales Jerárquicas en Acción

Las redes jerárquicas que venimos discutiendo a lo largo de este artículo se habían desarrollado dentro de la Inteligencia Artificial Conexionista como una respuesta a la necesidad de procesar datos con estructura jerárquica, un tipo de problema que las arquitecturas anteriores no habían logrado resolver de manera óptima. Bien es cierto que las redes convolucionales ya habían demostrado su eficacia en el procesamiento de datos espacialmente dispuestos y igualmente lo habían logrado las redes recurrentes para hacer frente a problemas con datos en secuencias. Pero no sería hasta la llegada de las redes neuronales jerárquicas que se haría posible abordar escenarios con datos organizados en forma de árbol.

En el marco de problemas no resueltos con redes anteriores, las redes jerárquicas se presentarían como una solución para escenarios donde la información se organiza en niveles. Estos problemas plantearían desafíos específicos que requerirían modelos capaces de capturar las relaciones entre los diferentes niveles de la jerarquía y procesar la información de manera eficiente.

Entre los tipos de problemas que resolverían las redes jerárquicas, se encontrarían el análisis sintáctico de oraciones, donde se busca identificar la estructura gramatical de una frase, y la clasificación de documentos, donde los textos se organizan en categorías según su contenido. En el primer caso, la red jerárquica procesaría la oración de forma jerárquica, identificando las relaciones entre las diferentes partes de la oración. En el segundo caso, la red capturaría las relaciones jerárquicas entre los diferentes temas y subtemas de los documentos, permitiendo una clasificación más precisa.

Además de estos ejemplos, las redes jerárquicas también mostrarían utilidad en la modelización de estructuras moleculares en la química, donde los átomos se organizan en una jerarquía de enlaces, o en el análisis de relaciones genealógicas en la biología, donde los individuos se organizan en un árbol genealógico. En estos casos, la red jerárquica permitiría capturar las dependencias y relaciones inherentes a la estructura de los datos, facilitando el análisis y la comprensión de la información. Esta capacidad se traduciría en una amplia gama de aplicaciones del mundo real.

La utilidad práctica de las redes jerárquicas se extendería a diversas áreas, desde el procesamiento del lenguaje natural hasta la bioinformática y la química. Su capacidad para procesar información jerárquica las convertiría en una herramienta valiosa para resolver problemas complejos en estos campos, abriendo nuevas posibilidades para el análisis y la modelización de datos estructurados.

De esta forma, las Redes Neuronales Jerárquicas dentro del campo de la Inteligencia Artificial Conexionista se habían presentado como una contribución de avance fundamental para ampliar el conjunto de problemas que podín abordarse con estructuras de red neuronal. Al proporcionar una forma efectiva de procesar información de naturaleza jerárquica, estas redes permitirían desarrollar modelos más precisos y eficientes para una variedad de aplicaciones.

Además, las redes jerárquicas inspirarían nuevas investigaciones y desarrollos en el campo de la Inteligencia Artificial Conexionista, impulsando la creación de arquitecturas híbridas y técnicas de entrenamiento innovadoras. Su enfoque en la estructura jerárquica de los datos abriría nuevas vías para la representación y el procesamiento de la información, contribuyendo al progreso general de la disciplina.

Conclusiones

A lo largo de este artículo, hemos descrito las Redes Neuronales Jerárquicas, un tipo de arquitectura de red diseñada para procesar información organizada de manera jerárquica y hemos explorado su estructura, funcionamiento y aplicaciones prácticas, comparándolas con otros tipos de redes neuronales y destacando su utilidad en diversos campos.

Este tipo de red queda enmarcada dentro de la familia de redes estructurales, que surgirían como una respuesta a la necesidad de procesar datos con dependencias espaciales, temporales o jerárquicas. Dentro de esta familia, las redes jerárquicas se centrarían específicamente en datos con una organización en árbol, ofreciendo una forma eficiente de capturar las relaciones entre los diferentes niveles de la información.

El modelo de operación y aprendizaje de las redes jerárquicas implicaba la propagación de la información a través de la estructura del árbol y el ajuste de los pesos de las conexiones mediante los algoritmos clásicos de retropropagación. Sin embargo, la estructura inherentemente jerárquica de la red influiría en el proceso de entrenamiento, permitiendo actualizar los pesos de acuerdo con la anatomía propia de la información.

Este tipo de redes se había presentado útil para una variedad de aplicaciones, incluyendo el análisis sintáctico de oraciones, la clasificación de documentos, la modelización de estructuras moleculares y el análisis de relaciones genealógicas. Y es que su capacidad para procesar información jerárquica las convertiría en una herramienta valiosa para resolver problemas complejos en diversas áreas.

Este tipo de redes supuso, de esta forma, una contribución importante a la Inteligencia Artificial Conexionista dado que ampliaría el conjunto de problemas que se pueden abordar con redes neuronales y abriría nuevas vías para la investigación y el desarrollo de arquitecturas y técnicas innovadoras. Su enfoque en la estructura jerárquica de los datos inspiraría nuevas formas de representar y procesar la información, contribuyendo al progreso general del campo.

En el siguiente artículo, seguiremos explorando el campo de las redes neuronales estructurales. Particularmente abordaremos el estudio de las redes neuronales relacionales, otro tipo de arquitectura de red diseñada para procesar datos con una estructura compleja de relaciones. Analizaremos cómo estas redes capturan las dependencias entre los elementos de un grafo y sus aplicaciones en distintas áreas de interés.