Graph neural network: un paso más allá en el aprendizaje profundo

En el desarrollo de la inteligencia artificial, el proceso de aprendizaje es fundamental. El aprendizaje automático y, en especial, el aprendizaje profundo se utilizan para enseñar al software a pensar de forma independiente, entrenando sus algoritmos. Por ejemplo, la primera tecnología se aplica en el reconocimiento facial. Muchos enfoques del aprendizaje automático se basan en redes neuronales artificiales, en las que los algoritmos del software están diseñados como una red de nodos que imita el sistema nervioso humano. Un nuevo enfoque son las llamadas graph neural networks, o redes neuronales gráficas. ¿En qué consiste esta tecnología?

¿Cómo funcionan las graph neural networks?

Las graph neural networks o GNN (en español, redes neuronales gráficas) son una nueva forma de redes neuronales artificiales (artificial neural networks) basadas en grafos. Para comprender las GNN, primero debes saber qué se entiende por grafo en el ámbito de la informática, en que el término se refiere a una forma concreta de estructurar los datos: un grafo consta de varios puntos de datos (nodos, o vertices en inglés) que están conectados entre sí (mediante bordes, o edges en inglés) y, por lo tanto, forman pares. Lo verás más claro con este ejemplo: la persona A y la persona B pueden representarse como puntos en un grafo. Si están conectados, significa que hay alguna relación entre ellos. Si se eliminan las conexiones, solo queda un conjunto de personas o datos.

El árbol es una forma bien conocida de grafo. En esta estructura, los nodos están conectados de modo que solo existe una ruta (que puede recorrer varios nodos) entre el punto A y el punto B. Los bordes pueden seguir una dirección o ninguna. En un grafo, las relaciones son tan importantes como los propios datos. Tanto a los bordes como a los nodos se les pueden asignar atributos.

Por lo tanto, el grafo resulta ideal para representar condiciones reales, lo que, precisamente, es uno de los retos del aprendizaje profundo: lograr que el software pueda comprender las condiciones naturales. Esto es justo lo que hace una graph neural network, donde los nodos recopilan información de los nodos vecinos, porque estos intercambian mensajes entre sí regularmente. De esta manera, la graph neural network es capaz de aprender: los datos se transmiten y se incorporan a las propiedades del nodo correspondiente.

Para mostrar este video, se requieren cookies de terceros. Puede acceder y cambiar sus ajustes de cookies aquí.
Consejo

¿Quieres profundizar en el tema de las graph neural networks? El Natural Language Processing Lab de la Universidad de Tsinghua ha publicado una extensa compilación de artículos científicos sobre las GNN.

¿Dónde se utilizan las graph neural networks?

Hasta ahora, los científicos se han centrado principalmente en investigar las posibilidades de las graph neural networks, proponiendo aplicaciones de lo más diversas. En general, utilizar las GNN tiene sentido cuando se deben representar mediante redes neuronales situaciones o procesos en que las relaciones desempeñan un papel importante.

  • Mercado financiero: comprendiendo las transacciones, es posible obtener una previsión de mercado más fiable.
  • Motores de búsqueda: para valorar la importancia de las páginas web, es básico tener en cuenta los enlaces entre las páginas.
  • Redes sociales: comprender las relaciones entre las personas puede ayudar a optimizar las redes sociales.
  • Química: la composición de las moléculas puede mostrarse en grafos y, por lo tanto, transferirse a las GNN.
  • Conocimiento: comprender cómo se relaciona la información es fundamental para representar correctamente el conocimiento.

Las graph neural networks también se utilizan en el reconocimiento de imágenes y del habla. En algunas circunstancias, la información natural no estructurada puede ser procesada mejor por las GNN que por las redes neuronales tradicionales.

Ventajas e inconvenientes de las graph neural networks

Las graph neural networks ayudan a lidiar con los retos que, hasta ahora, las redes neuronales tradicionales no han podido superar, o al menos en parte. En el pasado, los datos basados en grafos no podían procesarse correctamente, porque las relaciones entre los datos no se ponderaban lo suficiente. Con las GNN, los llamados bordes son tan importantes como los propios nodos.

Sin embargo, las graph neural networks no pueden resolver todos los problemas que conllevan las redes neuronales. En particular, es probable que siga surgiendo el problema de la caja negra: es difícil entender cómo una red neuronal (gráfica) toma la decisión final, ya que los procesos internos basados en los algoritmos complejos apenas pueden comprenderse desde el exterior.