Les réseaux de neurones graphiques (GNN) sont un concept moderne qui permet d'analyser des graphiques, de déduire des relations entre des objets et de prédire des données significatives à partir de ceux-ci.
La popularité de l'intelligence artificielle et machine learning a encore renforcé la demande de concepts tels que les GNN dans les entreprises et les consommateurs.
Ils sont utiles pour plusieurs industries et utilisateurs pour effectuer des tâches telles que la classification d'images et de textes, le traitement du langage naturel, les recommandations de produits, l'analyse des médias sociaux, etc.
Maintenant, le problème est quand il s'agit de graphiques, les analyser et les représenter à l'aide de méthodes standard comme les CNN peut être difficile.
C'est là que les GNN entrent en jeu pour résoudre plusieurs problèmes de graphes.
Dans cet article, je parlerai de ce que sont les GNN, de leur fonctionnement, de leurs applications dans le monde réel, et plus encore.
Alors restez à l'écoute!
Introduction to Graphs
Un graphique est essentiellement un moyen de représenter des données liées. Il aide à visualiser la relation entre les objets, les personnes et les concepts. Les graphiques peuvent également aider à la formation modèles d'apprentissage automatique (ML) pour les tâches complexes. Des exemples de graphiques pourraient être les réseaux de médias sociaux, la modélisation de divers systèmes physiques, l'analyse des empreintes digitales, etc.

Dans le monde de l'informatique, les graphes sont une sorte de structure de données qui a deux composants - les arêtes et les nœuds (ou sommets). Les arêtes sont également appelées liens déterminant la relation entre différents nœuds, tandis que les nœuds sont des entités ou des objets, des lieux, etc.
Mathématiquement, un graphe peut être décrit par cette formule :
G = (V, E)
Ici, G représente un graphe, V représente un ensemble de sommets et E représente les arêtes.
Un graphique est de deux types :
- Réalisé: Un graphe orienté signifie la dépendance directionnelle entre deux nœuds. Ce type de graphe peut être unidirectionnel ou bidirectionnel.
- Non dirigé: Un graphe non orienté n'a pas de dépendance directionnelle là où les nœuds sont juste liés mutuellement.
Pourquoi l'analyse d'un graphique est-elle difficile ?

L'analyse d'un graphique peut être un défi pour plusieurs raisons :
- Les graphes existent dans l'espace non euclidien, ce qui signifie que les données traitent de surfaces courbes au lieu de surfaces planes comme la 2D ou la 3D. Cela rend difficile l'interprétation du graphique et de ses données.
- Un graphe peut avoir ses nœuds par dizaines, centaines ou même millions, et le nombre d'arêtes peut varier pour chaque nœud. En raison de la grande taille et de son facteur de dimensionnalité, la complexité d'interprétation du graphique augmente.
- La taille graphique est dynamique sans forme figée. Deux graphiques peuvent sembler différents mais peuvent avoir des représentations similaires pour les matrices de contiguïté. De cette façon, l'analyse du graphique à l'aide d'outils traditionnels peut être inefficace et difficile.
D'autre part, les graphiques peuvent s'étendre ou se contracter avec le temps. Cela signifie également que si vous souhaitez représenter des données graphiques par une matrice, cela pourrait être inefficace et créer des métriques rares qui signifient le même graphique. De plus, ils ne sont pas invariants par permutation car ils pourraient ne pas donner le même résultat.
Tenant compte de tous ces problèmes, les GNN ont été introduits pour résoudre les problèmes de prédiction graphique avec une meilleure efficacité.
What Are Graph Neural Networks?
Un réseau de neurones graphiques (GNN) est un type de réseaux de neurones artificiels (ANN) utilisé pour traiter des données représentées sous forme de graphiques.

Les GNN sont construits autour des concepts de l'apprentissage en profondeur et la théorie des graphes. Ces réseaux utilisent l'intelligence prédictive de l'apprentissage profond, qui est un sous-ensemble de l'apprentissage automatique et de l'intelligence artificielle) afin d'analyser et de traiter les données.
Un GNN peut prendre les données d'entrée sous forme de graphe avec des nœuds, des arêtes et un contexte intégrés pour créer la sortie sous forme de graphe dont les incorporations sont mises à jour et transformées en préservant la symétrie du graphe d'entrée.
Considérez les GNN comme un graphe dont les données sont des nœuds et les connexions entre les données sont des arêtes. Vous pouvez appliquer directement les GNN aux graphiques et obtenir un moyen plus simple d'effectuer des tâches de prédiction au niveau des arêtes, des nœuds ou des graphiques.
Les GNN peuvent mieux combiner la structure du graphique et les informations sur les caractéristiques pour apprendre les représentations graphiques grâce à l'agrégation et à la propagation des caractéristiques.
Dans le monde réel, les GNN sont utilisés pour étudier et résoudre des problèmes complexes dans de multiples secteurs. Certains cas d'utilisation identifient des nœuds spécifiques dans un grand réseau, classent des modèles, visualisent, filtrent et analysent des graphiques, analysent des réseaux sociaux, prévoient des prix, etc.
Les GNN ont été introduits pour la première fois dans un article publié en 2009 par des chercheurs italiens. Deux chercheurs d'Amsterdam ont également démontré la puissance des GNN avec une autre variante appelée Graph Convolutional Network (GCN).
Types of GNNs

Les réseaux de neurones sont de plusieurs types, et la plupart contiennent une forme ou une autre de CNN. Les types de GNN sont :
# 1. Réseaux de neurones à graphes récurrents (RGNN)
Les RGNN étudient les modèles de diffusion et peuvent gérer des graphes multi-relationnels avec des nœuds ayant plusieurs relations. Ces réseaux utilisent des régularisateurs pour améliorer le lissage et éviter la sur-paramétrage.
Ils utilisent une puissance de calcul limitée pour générer de meilleurs résultats. Les RGNN sont utilisés dans la traduction automatique, la génération de texte, reconnaissance de la parole, marquage vidéo, génération de description d'image, résumé de textes, etc.
# 1. Réseaux de neurones à graphes fermés (GGNN)
Ces réseaux sont encore meilleurs que les RGNN lorsqu'il s'agit d'effectuer des tâches impliquant des dépendances à long terme. Les GGNN améliorent les RGNN en ajoutant des portes temporelles, un bord et un nœud sur les dépendances à long terme. Ces réseaux sont utilisés pour se souvenir et oublier des informations dans divers états.
# 2. Réseaux Convolutionnels Graphiques (GCN)
Les GCN sont comme les CNN traditionnels. Les GCN apprennent les caractéristiques d'un objet ou d'une entité en inspectant ses nœuds voisins. Les GNN agrègent divers vecteurs de nœuds et transmettent le résultat à la couche dense. Ensuite, les réseaux effectuent la non-linéarité à l'aide de la fonction d'activation. Les GCN sont divisés en deux types : spatial et spectral Réseaux convolutionnels.
# 3. Réseaux d'encodeurs automatiques de graphes
Ces réseaux de neurones étudient la représentation des graphes à l'aide d'un encodeur et tentent de reconstruire des graphes d'entrée à l'aide d'un décodeur. De plus, le décodeur et l'encodeur sont reliés par une couche de goulot d'étranglement. Les réseaux d'encodeurs automatiques de graphes sont excellents pour la prédiction de liens car ils traitent mieux les équilibreurs de classes.
How Do GNNs Work?

L'apprentissage en profondeur traditionnel se concentre principalement sur le texte et les images, qui sont des données structurées décrites comme des grilles de pixels ou des séquences de mots.
Au contraire, les graphiques ne sont pas structurés, peuvent prendre n'importe quelle taille ou forme et peuvent contenir n'importe quel type de données en dehors du texte et des images.
Les GNN peuvent organiser des graphiques à l'aide de la transmission de messages, permettant aux algorithmes d'apprentissage automatique d'exploiter les graphiques. La transmission de messages intègre les informations sur son voisin dans chaque nœud. Ensuite, les modèles d'IA utilisent les données intégrées pour détecter des modèles et faire des prédictions significatives.
Par exemple, les encastrements de bord sont utilisés dans détection de fraude systèmes pour détecter les transactions suspectes afin que les mesures appropriées doivent être prises à temps et arrêter les activités frauduleuses.
Les GNN utilisent des mathématiques éparses et leurs modèles n'ont généralement que 2 ou 3 couches. D'autre part, d'autres réseaux et modèles d'IA impliquent des mathématiques denses et ont des centaines de couches de réseaux de neurones.
Difference between GNN and CNN
Les GNN et les réseaux de neurones convolutifs (CNN) sont deux types de réseaux de neurones mais sont toujours différents.
Les CNN sont un autre type de réseau de neurones utilisé pour aider les machines à visualiser des objets ou des choses et à effectuer des tâches telles que la reconnaissance d'images, la détection d'objets, la classification d'images, etc. Ils sont excellents pour les espaces réguliers, plats, 2D et 3D, mais les GNN briller sur des espaces courbes ou non euclidiens.

Les CNN sont conçus pour fonctionner spécifiquement sur des informations structurées ou des espaces euclidiens. D'autre part, les GNN traitent d'espaces non euclidiens où leurs nœuds ne sont pas ordonnés et peuvent varier.
Cela signifie que vous pouvez appliquer CNNS pour structurer des informations telles que du texte ou des images. Il ne s'applique pas aux données non structurées telles que la météo, le son, etc. Cependant, les GNN s'appliquent aux données non structurées et structurées. C'est une forme généralisée de CNN.
De plus, les GNN aident à analyser les graphiques et à prédire des informations significatives là où les CNN ne conviennent pas à l'analyse des graphiques.
Cela signifie que les GNN sont plus efficaces pour résoudre les problèmes de graphe que les CNN.
Applications of GNNs
Les organisations et les entreprises appliquant les GNN se développent. Il est adopté dans de multiples secteurs, des industries aux branches de la science. Voici quelques-unes des applications des GNN :
# 1. Classement graphique
Les GNN sont utilisés dans la classification des graphes, dans laquelle un graphe complet est divisé en plusieurs catégories. C'est similaire à la classification d'images, sauf que la cible se transforme en domaine graphique.
La classification des graphes a de nombreuses applications, comme en bioinformatique pour vérifier si une protéine appartient à une enzyme, effectuer une analyse des réseaux sociaux, catégoriser des fichiers en PNL, etc.
# 2. Visualisation graphique
La visualisation de graphes fait partie de l'informatique et des mathématiques, croisant la visualisation d'informations et la théorie des graphes géométriques. Il s'agit de représenter visuellement des graphiques, révélant des anomalies et des structures dans les données. Grâce à la visualisation graphique, les utilisateurs peuvent mieux comprendre le graphique.

# 3. Regroupement de graphes
Les GNN sont utilisés dans le regroupement de graphes, un processus qui implique le regroupement de données sous forme de graphes. Vous pouvez effectuer deux types de clustering sur des données de graphe données : le clustering de sommets et le clustering d'objets. Le clustering Vertex organise ou regroupe les nœuds du graphe en différents groupes de régions étroitement connectées.
Ils sont basés sur des distances de bord ou des poids. Ce dernier prend les graphes comme des objets ou des entrées à regrouper. Il regroupe ou regroupe des objets en fonction de leur similarité.
# 4. Classement des nœuds
L'une des applications importantes des GNN est la classification des nœuds pour déterminer l'étiquetage des nœuds en vérifiant les étiquettes des voisins des nœuds. Ici, de nouvelles informations sont ajoutées aux nœuds où il existe un manque d'informations.
Les modèles dans ce type de tâche nécessitent une formation semi-supervisée. Ici, seule une partie d'un graphe donné doit être étiquetée.
Par exemple, si vous souhaitez déterminer s'il existe des comptes de bot créés dans votre réseau organisationnel, vous devez former un modèle GNN basé sur les représentations graphiques des bots connus et inconnus et classer les utilisateurs s'il s'agit d'utilisateurs normaux ou de bots.
# 5. Prédiction de lien ou de bord
Les GNN sont utiles pour lier ou prédire les contours afin de déterminer la relation entre divers objets ou entités dans un graphique donné. Ceci est également fait pour prédire s'il existe une connexion entre les deux entités données.
Par exemple, vous pouvez utiliser la prédiction de liens dans les réseaux sociaux pour comprendre les interactions sociales et suggérer aux utilisateurs d'éventuels amis. Il est également utilisé dans les forces de l'ordre pour prédire et comprendre les associations criminelles et les systèmes de recommandation afin de suggérer les meilleurs produits, films, musique, etc.
# 6. Vision par ordinateur
Les GNN sont appliqués en vision par ordinateur pour résoudre divers problèmes impliquant l'interaction homme-objet, la classification d'images, la génération de graphes de scène et bien d'autres.

Par exemple, vous pouvez utiliser les GNN dans la génération de graphes scéniques, où le modèle doit analyser une image donnée dans un graphe composé d'objets et de relations sémantiques entre eux. Ce processus peut reconnaître et détecter des objets et prévoir des relations sémantiques entre diverses paires d'objets.
# 7. Classification de texte
Les graphes peuvent représenter un groupe de mots, où les mots sont des nœuds et les connexions entre ces mots sont des arêtes. Vous pouvez effectuer une classification de texte au niveau d'un graphique ou d'un nœud.
L'utilisation des GNN pour la classification de texte a de nombreux cas d'utilisation dans le monde réel, comme une recommandation de produit, une nouvelle catégorisation et la détection de maladies à partir de certains symptômes.
# 8. Classer et segmenter les nuages de points
LiDAR peut tracer des données du monde réel dans divers nuages de points 3D pour compléter les processus de segmentation 3D. Vous pouvez représenter les nuages de points à l'aide de GNN et les classer et les segmenter facilement.
# 9. Représenter l'interaction homme-objet
Les graphiques sont un excellent moyen de représenter les interactions entre les liens et les objets. Ainsi, vous pouvez modéliser les objets et les humains comme des nœuds tandis que les relations et les interactions entre eux comme des bords.
# 10. Traitement du langage naturel (NLP)

En PNL, le texte est considéré comme une donnée séquentielle décrite par une LSTM (Long Short-Term Memory) ou RNN (Recurrent Réseau neuronal). De nombreuses tâches NLP utilisent fortement des graphiques car ils sont faciles à représenter et semblent naturels et bruts.
Les GNN sont utilisés pour résoudre de nombreux problèmes de PNL, tels que la recherche de sémantique dans la traduction automatique, la classification de texte, l'extraction de relations, la classification de texte, la réponse à des questions, etc.
# 11. Découverte de médicament

Découvrir le médicament ou le remède pour une maladie ou une maladie n'est pas seulement un défi pour la chimie mais aussi pour la société. Ce domaine nécessite des recherches approfondies et des milliards de dollars et des années pour formuler un médicament qui guérit une maladie.
Les GNN avec IA peuvent aider à raccourcir les processus de recherche et de dépistage afin qu'un médicament plus sûr et plus efficace puisse être mis à la disposition du public plus rapidement.
# 12. Représenter les interactions moléculaires
Les GNN sont utiles en physique des particules, qui traite des lois concernant les interactions des particules. Les graphiques peuvent être utilisés ici pour comprendre les relations et les interactions entre les particules. Les GNN peuvent aider à prédire les propriétés de la dynamique des collisions.
À l'heure actuelle, le Large Hadron Collider (LHC) utilise des GNN pour identifier des particules intéressantes à partir d'images générées dans diverses expériences.
# 13. Prédiction du trafic
Un dispositif ou un système de transport intelligent implique la prévision de la vitesse du trafic et la densité des routes comme principales caractéristiques. Ces tâches de prédiction peuvent être effectuées à l'aide de STGNN ou de réseaux neuronaux de graphes spatio-temporels.
Ici, le réseau de trafic sera considéré comme un graphe spatio-temporel avec des nœuds car les capteurs positionnés sur les routes et les bords sont les distances entre les paires de nœuds. Considérez également que chaque nœud aura une vitesse de trafic moyenne comme entrée.
# 14. Autres applications
Outre ce qui précède, les GNN sont utilisés dans la modélisation des dossiers de santé en ligne, la prévention des attaques contradictoires, les réseaux cérébraux, la prédiction de l'influence sociale, le programme, le raisonnement, la vérification du programme, la prédiction des résultats des élections, etc.
Learning Resources
Vous trouverez ci-dessous quelques-uns des meilleurs livres pour en savoir plus sur les GNN.
# 1. Réseaux de neurones graphiques par Lingfei Wu et d'autres
Ce livre est un guide complet des GNN qui traite des objectifs de l'apprentissage de la représentation graphique.
Aperçu | Produit | Rating | Prix | |
---|---|---|---|---|
![]() |
Réseaux de neurones graphiques : fondements, frontières et applications | $82.39 | Acheter sur Amazon |
Il élucide également les développements actuels, l'histoire et l'avenir des GNN ainsi que certaines de ses théories et méthodes de base.
# 2. Graph Réseaux de neurones en action
Aperçu | Produit | Rating | Prix | |
---|---|---|---|---|
![]() |
Réseaux de neurones graphiques en action | $59.99 | Acheter sur Amazon |
Il s'agit d'un guide pratique sur les modèles d'apprentissage en profondeur basés sur des graphiques et sur la manière de créer des GNN avancés pour la modélisation moléculaire, les moteurs de recommandation, etc.
# 3. Introduction aux réseaux de neurones graphiques par Zhiyuan Liu
Aperçu | Produit | Rating | Prix | |
---|---|---|---|---|
![]() |
Introduction aux réseaux de neurones de graphes (conférences de synthèse sur l'intelligence artificielle et la machine… | $64.78 | Acheter sur Amazon |
Apprenez les concepts de base, les applications et les modèles de GNN.
# 4. Graph Neural Network par Younes Sadat-Nejad
Il s'agit d'un cours d'introduction aux GNN disponible sur Udemy. Il vous aidera à apprendre l'apprentissage de la représentation graphique et GNN.
Conclusion
Avec la popularité croissante de l'IA et les graphiques de plus en plus sophistiqués et riches en données, les réseaux de neurones graphiques (GNN) deviennent plus utiles. Ils sont un outil puissant pour faire des prédictions et sont appliqués dans de multiples secteurs, de la mise en réseau et de la vision par ordinateur à la chimie, la physique et les soins de santé.
Vous pouvez également explorer régression vs classification dans l'apprentissage automatique.