Self-Expressive Graph Neural Network for Unsupervised Community Detection
Graph neural networks are able to achieve promising performance on multiple graph downstream tasks such as node classification and link prediction. Comparatively lesser work has been done to design graph neural networks (GNNs) which can operate directly for community detection in a graph. Traditionally, GNNs are trained on a semi-supervised or self-supervised loss function and then clustering algorithms are applied to detect communities. However, such decoupled approaches are inherently sub-optimal. Design of an unsupervised community detection loss function to train a GNN is a fundamental challenge to propose an integrated solution. To tackle this problem, we combine the principle of self-expressiveness with the framework of self-supervised graph neural network for unsupervised community detection for the first time in the literature. To improve the scalability of the approach, we propose a randomly sampled batch-wise training and use the principle of self-expressiveness to generate a subset of strong node similarity / dissimilarity values. These values are used to regularize the node communities obtained from a self-supervised graph neural network. Our solution is trained in an end-to-end fashion. We are able to achieve state-of-the-art community detection results on multiple publicly available datasets.
READ FULL TEXT