CommunityGAN : Détection de Communautés avec des Réseaux de Neurones Générateurs Adverses

La détection de communautés fait référence à la tâche de découvrir des groupes de sommets partageant des propriétés ou des fonctions similaires afin de comprendre les données de réseau. Avec le développement récent de l'apprentissage profond, les techniques d'apprentissage de représentation de graphe sont également utilisées pour la détection de communautés. Cependant, les communautés ne peuvent être inférées que par l'application d'algorithmes de clustering basés sur les plongements (embeddings) appris des sommets. Ces algorithmes de clustering généraux, comme K-means et le modèle de mélange gaussien, ne peuvent pas produire beaucoup de communautés chevauchantes, qui ont été prouvées être très courantes dans de nombreux réseaux du monde réel. Dans cet article, nous proposons CommunityGAN, un nouveau cadre de détection de communautés qui résout conjointement la détection de communautés chevauchantes et l'apprentissage de représentation de graphe. Premièrement, contrairement aux plongements des algorithmes traditionnels d'apprentissage de représentation de graphe où les valeurs des entrées vectorielles n'ont pas de signification spécifique, le plongement (embedding) dans CommunityGAN indique la force d'appartenance des sommets aux communautés. Deuxièmement, un réseau génératif antagoniste (Generative Adversarial Net, GAN) spécifiquement conçu est utilisé pour optimiser ce plongement. Grâce à la compétition minimax entre le générateur et le discriminateur au niveau des motifs (motifs), ces deux éléments peuvent améliorer alternativement et itérativement leurs performances et finalement produire une meilleure structure communautaire. Des expériences approfondies sur des données synthétiques et des tâches du monde réel montrent que CommunityGAN réalise des gains substantiels en termes de performance pour la détection de communautés par rapport aux méthodes les plus avancées actuellement disponibles.