Que sont les réseaux de neurones graphes (GNN) ?

Nœud source: 1147987

Les graphiques sont partout autour de nous. Votre réseau social est un graphique de personnes et de relations. Votre famille aussi. Les routes que vous empruntez pour aller d'un point A à un point B constituent un graphe. Les liens qui relient cette page Web à d'autres forment un graphique. Lorsque votre employeur vous paie, votre paiement passe par un graphique des institutions financières.

Fondamentalement, tout ce qui est composé d'entités liées peut être représenté sous forme de graphique. Les graphiques sont d'excellents outils pour visualiser les relations entre les personnes, les objets et les concepts. Au-delà de la visualisation des informations, cependant, les graphiques peuvent également être de bonnes sources de données pour former des modèles d'apprentissage automatique pour des tâches complexes.

Les réseaux de neurones graphiques (GNN) sont un type d'algorithme d'apprentissage automatique qui peut extraire des informations importantes des graphiques et faire des prédictions utiles. Avec des graphiques de plus en plus envahissants et plus riches en informations, et des réseaux de neurones artificiels devenant plus populaire et capable, les GNN sont devenus un outil puissant pour de nombreuses applications importantes.

Transformer des graphes pour le traitement de réseaux de neurones

Une image de nœuds interconnectés sur un fond de marbre.

Chaque graphe est composé de nœuds et d'arêtes. Par exemple, dans un réseau social, les nœuds peuvent représenter les utilisateurs et leurs caractéristiques (par exemple, le nom, le sexe, l'âge, la ville), tandis que les arêtes peuvent représenter les relations entre les utilisateurs. Un graphe social plus complexe peut inclure d'autres types de nœuds, tels que des villes, des équipes sportives, des médias, ainsi que des arêtes décrivant les relations entre les utilisateurs et ces nœuds.

Malheureusement, la structure du graphe n'est pas bien adaptée à l'apprentissage automatique. Les réseaux de neurones s'attendre à recevoir leurs données dans un format uniforme. Les perceptrons multicouches attendent un nombre fixe de caractéristiques d'entrée. Les réseaux de neurones convolutifs s'attendent à une grille qui représente les différentes dimensions des données qu'ils traitent (par exemple, la largeur, la hauteur et les canaux de couleur des images).

Les graphiques peuvent avoir différentes structures et tailles, ce qui n'est pas conforme aux tableaux rectangulaires attendus par les réseaux de neurones. Les graphiques ont également d'autres caractéristiques qui les rendent différents du type d'informations pour lequel les réseaux de neurones classiques sont conçus. Par exemple, les graphes sont « invariants de permutation », ce qui signifie que changer l'ordre et la position des nœuds ne fait pas de différence tant que leurs relations restent les mêmes. En revanche, la modification de l'ordre des pixels donne une image différente et entraîne un comportement différent du réseau de neurones qui les traite.

Pour rendre les graphiques utiles aux algorithmes d'apprentissage en profondeur, leurs données doivent être transformées dans un format pouvant être traité par un réseau de neurones. Le type de formatage utilisé pour représenter les données du graphique peut varier en fonction du type de graphique et de l'application envisagée, mais en général, la clé est de représenter les informations sous la forme d'une série de matrices.

Une série d'images sur un fond granuleux de couleur sable. Le premier est une série de profils de personnes interconnectés par des nœuds. Les suivants sont deux graphiques avec une série de prénoms de personnes et des informations biographiques de base.

Par exemple, considérons un graphique de réseau social. Les nœuds peuvent être représentés sous la forme d'un tableau des caractéristiques de l'utilisateur. La table de nœuds, où chaque ligne contient des informations sur une entité (par exemple, utilisateur, client, transaction bancaire), est le type d'informations que vous fourniriez à un réseau neuronal normal.

Mais graphe des réseaux de neurones peut également apprendre d'autres informations que contient le graphique. Les arêtes, les lignes qui relient les nœuds, peuvent être représentées de la même manière, chaque ligne contenant les identifiants des utilisateurs et des informations supplémentaires telles que la date d'amitié, le type de relation, etc. Enfin, la connectivité générale du graphique peut être représenté comme une matrice d'adjacence qui montre quels nœuds sont connectés les uns aux autres.

Lorsque toutes ces informations sont fournies au réseau de neurones, il peut extraire des modèles et des informations qui vont au-delà des simples informations contenues dans les composants individuels du graphique.

Incrustations de graphes

Trois images sur fond de marbre bleu. Le premier : une série de graphiques avec les noms des utilisateurs et des informations personnelles. Deuxième image : graphique à barres intitulé "Graph Embedding". Troisième image : une feuille de calcul avec des utilisateurs et des nombres intitulée "Graph Embeddings".

Les réseaux de neurones graphiques peuvent être créés comme n'importe quel autre réseau de neurones, en utilisant des couches entièrement connectées, des couches convolutives, des couches de mise en commun, etc. Le type et le nombre de couches dépendent du type et de la complexité des données graphiques et de la sortie souhaitée.

Le GNN reçoit les données graphiques formatées en entrée et produit un vecteur de valeurs numériques qui représentent des informations pertinentes sur les nœuds et leurs relations.

Cette représentation vectorielle est appelée « représentation graphique ». Les intégrations sont souvent utilisées dans l'apprentissage automatique pour transformer des informations compliquées en une structure qui peut être différenciée et apprise. Par exemple, les systèmes de traitement du langage naturel utilisent des imbrications de mots pour créer des représentations numériques des mots et de leurs relations entre eux.

Comment le GNN crée-t-il l'intégration de graphe ? Lorsque les données du graphique sont transmises au GNN, les caractéristiques de chaque nœud sont combinées avec celles de ses nœuds voisins. C'est ce qu'on appelle la « transmission de messages ». Si le GNN est composé de plusieurs couches, les couches suivantes répètent l'opération de transmission de messages, en rassemblant les données des voisins des voisins et en les agrégeant avec les valeurs obtenues à partir de la couche précédente. Par exemple, dans un réseau social, la première couche du GNN combinerait les données de l'utilisateur avec celles de ses amis, et la couche suivante ajouterait les données des amis des amis et ainsi de suite. Enfin, la couche de sortie du GNN produit l'intégration, qui est une représentation vectorielle des données du nœud et de sa connaissance des autres nœuds du graphe.

Fait intéressant, ce processus est très similaire à la façon dont les réseaux de neurones convolutifs extraient les caractéristiques des données de pixels. En conséquence, une architecture GNN très populaire est le réseau de neurones à convolution de graphe (GCN), qui utilise des couches de convolution pour créer des plongements de graphe.

Applications des réseaux de neurones graphes

Une image de trois réseaux de neurones séparés sur un fond gris.

Une fois que vous disposez d'un réseau de neurones capable d'apprendre les plongements d'un graphique, vous pouvez l'utiliser pour accomplir différentes tâches.

Voici quelques applications pour les réseaux de neurones graphes :

Classification des nœuds : l'une des applications puissantes des GNN est d'ajouter de nouvelles informations aux nœuds ou de combler les lacunes où des informations sont manquantes. Par exemple, disons que vous exploitez un réseau social et que vous avez repéré quelques comptes de bots. Vous voulez maintenant savoir s'il existe d'autres comptes de bots dans votre réseau. Vous pouvez entraîner un GNN à classer les autres utilisateurs du réseau social en tant que « bots » ou « pas de bots » en fonction de la proximité de leurs intégrations de graphiques avec celles des bots connus.

Prédiction des contours : une autre façon d'utiliser les GNN consiste à trouver de nouveaux contours pouvant ajouter de la valeur au graphique. Pour en revenir à notre réseau social, un GNN peut trouver des utilisateurs (nœuds) proches de vous dans l'espace d'intégration mais qui ne sont pas encore vos amis (c'est-à-dire qu'il n'y a pas d'avantage qui vous relie les uns aux autres). Ces utilisateurs peuvent ensuite vous être présentés en tant que suggestions d'amis.

Clustering : les GNN peuvent glaner de nouvelles informations structurelles à partir de graphiques. Par exemple, dans un réseau social où tout le monde est d'une manière ou d'une autre lié aux autres (via des amis, ou des amis d'amis, etc.), le GNN peut trouver des nœuds qui forment des clusters dans l'espace d'intégration. Ces clusters peuvent pointer vers des groupes d'utilisateurs qui partagent des intérêts, des activités ou d'autres caractéristiques discrètes similaires, quelle que soit la proximité de leurs relations. Le clustering est l'un des principaux outils utilisés dans le marketing basé sur l'apprentissage automatique.

Les réseaux de neurones graphiques sont des outils très puissants. Ils ont déjà trouvé des applications puissantes dans des domaines tels que la planification des itinéraires, la détection des fraudes, l'optimisation des réseaux et la recherche sur les médicaments. Partout où il y a un graphique d'entités associées, les GNN peuvent aider à tirer le meilleur parti des données existantes.

Ben Dickson est un ingénieur logiciel et le fondateur de TechTalks. Il écrit sur la technologie, les affaires et la politique.

Cette histoire est apparue à l'origine sur Bdtech pourparlers.com. Copyright 2021

VentureBeat

La mission de VentureBeat est d'être une place de ville numérique permettant aux décideurs techniques d'acquérir des connaissances sur la technologie transformatrice et d'effectuer des transactions. Notre site fournit des informations essentielles sur les technologies de données et les stratégies pour vous guider dans la conduite de vos organisations. Nous vous invitons à devenir membre de notre communauté, pour accéder:

  • des informations à jour sur les sujets qui vous intéressent
  • nos newsletters
  • contenu de leader d'opinion fermé et accès à prix réduit à nos événements prisés, tels que Transformer 2021: Apprendre encore plus
  • fonctionnalités de mise en réseau, et plus

Devenir membre

Source : https://venturebeat.com/2021/10/13/what-are-graph-neural-networks-gnn/

Horodatage:

Plus de AI - VentureBeat