Graph Neural Network : la prochaine étape du Deep learning
Pour développer une intelligence artificielle, le processus d’apprentissage est décisif. Le Machine learning, et plus particulièrement le Deep learning, servent à entraîner des algorithmes, et ainsi à nourrir la réflexion propre du logiciel. La reconnaissance faciale s’appuie par exemple sur des techniques de ce genre. Beaucoup de solutions d’apprentissage automatique fonctionnent à partir de réseaux de neurones artificiels : les algorithmes du logiciel sont conçus comme des réseaux de nodes (nœuds), à l’image de la structure du système nerveux humain. Il existe une nouvelle forme de réseau que l’on appelle Graph Neural Network (GNN) ou réseau de neurones graphiques. Comment fonctionne cette technique ?
Comment fonctionne un Graph Neural Network ?
Les Graph Neural Networks (GNN) sont une nouvelle forme de réseaux de neurones artificiels (en anglais artificial neural networks) qui se basent sur des graphiques. Pour comprendre les GNN, il faut tout d’abord comprendre ce que recouvre le terme de « graphique » dans ce contexte. En informatique, ce mot désigne un type de données particulier : un graphique se compose de plusieurs points (nodes ou vertices) reliés entre eux (par des bords ou edges) et constituent des paires. Un exemple simple : la personne A et la personne B peuvent être matérialisées par un point dans un graphique. Leur relation correspond au lien entre ces points. Si la relation disparait, on se retrouve avec un ensemble de personnes, donc de données.
Une sous-catégorie bien connue du graphique est l’arbre : cette fois, les nodes sont reliés entre eux de manière à ce qu’il n’y ait qu’un seul chemin entre le point A et le point B (même dans le cas de plusieurs nodes). Les bords peuvent suivre une seule direction ou aucune direction. Dans un graphique, les relations sont aussi importantes que les données elles-mêmes. À l’instar de chaque node, chaque bord peut avoir des attributs.
Le graphique est donc particulièrement adapté pour représenter des réalités concrètes. C’est cette propriété qui permet de faire progresser le deep learning : rendre les situations naturelles accessibles aux logiciels. C’est exactement ce que permet le Graph Neural Network : dans un GNN, les nodes recueillent des informations auprès de leurs voisins, car ils échangent régulièrement des informations entre eux. C’est ainsi qu’un réseau de neurones en graphique peut apprendre : les informations sont relayées et enregistrées dans les propriétés de chaque node.
Vous aimeriez en savoir plus sur les Graph Neural Networks et approfondir vos connaissances en la matière ? Le Natural Language Processins Lab de l’université Tsinghua a publié sur GitHub un recueil de travaux de recherche sur les GNN très complet.
Dans quels cas s’utilisent les Graph Neural Networks ?
Jusqu’à présent, ce sont tout d’abord les scientifiques qui se sont intéressés aux possibilités qu’offrent les réseaux de neurones en graphique. Les possibilités d’application proposées sont pourtant nombreuses. Dès que les relations jouent un rôle important dans la situation ou les processus et que l’ensemble doit être représenté dans un réseau de neurones, le GNN s’avère pertinent.
- Marchés financiers : les prévisions du marché peuvent gagner en fiabilité en comprenant les transactions.
- Moteurs de recherche : pour évaluer l’important d’un site Internet, les relations entre les pages sont décisives.
- Réseaux sociaux : mieux comprendre les relations entre les personnes peut permettre d’optimiser les réseaux sociaux.
- Chimie : la composition d’une molécule peut être représentée en graphique, et par conséquent transposée dans un GNN.
- Connaissances : pour mettre idéalement à disposition les connaissances, comprendre les liens entre les informations est décisif.
Les Graph Neural Networks sont déjà utilisés au niveau de la reconnaissance des images et de la voix. Sous certaines conditions, les informations non structurées et naturelles sont mieux traitées à l’aide d’un GNN qu’au moyen d’un réseau de neurones traditionnel.
Avantages et inconvénients des Graph Neural Networks
Les réseaux de neurones en graphique permettent des avancées qu’on ne pouvait envisager que de façon rudimentaire avec les réseaux de neurones classiques. Auparavant, on ne pouvait pas traiter correctement les données en graphique, car les relations entre les données ne pouvaient pas être suffisamment prises en compte. Avec les GNN, les bords sont désormais aussi précis que les nodes eux-mêmes.
D’autres problèmes inhérents aux réseaux de neurones restent d’actualité avec les GNN, notamment celui de la boîte noire, loin d’être résolu : on ne comprend encore pas bien comment un réseau de neurones, à fortiori en graphique, sélectionne son estimation finale car, de l’extérieur, il est presque impossible de suivre les processus qui se déroulent dans le système.