Deep Learning and Spectral Embedding for Graph Partitioning

Alice Gatti,Zhixiong Hu,Tess Smidt,Esmond G. Ng,Pieter Ghysels
DOI: https://doi.org/10.48550/arXiv.2110.08614
2021-12-09
Abstract:We present a graph bisection and partitioning algorithm based on graph neural networks. For each node in the graph, the network outputs probabilities for each of the partitions. The graph neural network consists of two modules: an embedding phase and a partitioning phase. The embedding phase is trained first by minimizing a loss function inspired by spectral graph theory. The partitioning module is trained through a loss function that corresponds to the expected value of the normalized cut. Both parts of the neural network rely on SAGE convolutional layers and graph coarsening using heavy edge matching. The multilevel structure of the neural network is inspired by the multigrid algorithm. Our approach generalizes very well to bigger graphs and has partition quality comparable to METIS, Scotch and spectral partitioning, with shorter runtime compared to METIS and spectral partitioning.
Machine Learning
What problem does this paper attempt to address?
The problem that this paper attempts to solve is the Graph Partitioning problem, especially its application in scientific computing. Specifically, the author proposes a graph bisection and partitioning algorithm based on Graph Neural Networks (GNN), aiming to divide a graph into multiple disjoint subsets to minimize the edge cut between these subsets while maintaining the balance within the subsets. ### Main Problem Description: 1. **Importance of Graph Partitioning**: - In scientific computing, graph partitioning is used to allocate unstructured data (such as grids from the discretization of partial differential equations and sparse matrices) to distributed - memory computing nodes. - High - quality partitioning can reduce communication volume and improve the load balancing of iterative solvers (such as Krylov subspace iteration and multigrid methods). 2. **Limitations of Existing Methods**: - Many existing graph partitioning algorithms are heuristic and usually sequential, making it difficult to efficiently utilize modern high - performance computing hardware. - Some methods rely on graph features (such as node features), but in many scientific computing applications, graphs usually do not have natural node or edge features (for example, the adjacency structure of sparse matrices). 3. **Innovations of the Paper**: - A new deep - learning framework that combines spectral embedding and graph neural networks for graph partitioning is proposed. - This method can handle graphs without node or edge features and performs well on larger graphs. The partitioning quality is comparable to existing methods such as METIS and Scotch, but with a shorter running time. ### Specific Objectives: - **Minimize Cut**: Optimize the partitioning quality by minimizing the Normalized Cut. - **Maintain Partitioning Balance**: Ensure that the volume of each partitioned part is as balanced as possible. - **Efficient Computation**: Utilize graph neural networks and multi - layer structures (inspired by the multigrid algorithm) to accelerate the computing process. ### Key Components of the Solution: 1. **Embedding Module**: - Use spectral graph theory to generate graph embeddings as node features. - Train by minimizing the loss function based on the residuals of graph Laplacian eigenvectors. 2. **Partitioning Module**: - Receive the features generated by the embedding module and output the probability that each node belongs to each partitioned part. - Train by minimizing the expected Normalized Cut loss function. Through this two - stage method, this paper provides a new graph partitioning solution, especially suitable for large - scale graph partitioning tasks in scientific computing.