Hierarchical Graph Representation Learning with Differentiable Pooling

Recently, graph neural networks (GNNs) have revolutionized the field of graph representation learning through effectively learned node embeddings, and achieved state-of-the-art results in tasks such as node classification and link prediction. However, current GNN methods are inherently flat and do not learn hierarchical representations of graphs---a limitation that is especially problematic for the task of graph classification, where the goal is to predict the label associated with an entire graph. Here we propose DiffPool, a differentiable graph pooling module that can generate hierarchical representations of graphs and can be combined with various graph neural network architectures in an end-to-end fashion. DiffPool learns a differentiable soft cluster assignment for nodes at each layer of a deep GNN, mapping nodes to a set of clusters, which then form the coarsened input for the next GNN layer. Our experimental results show that combining existing GNN methods with DiffPool yields an average improvement of 5-10% accuracy on graph classification benchmarks, compared to all existing pooling approaches, achieving a new state-of-the-art on four out of five benchmark data sets.

PDF Abstract NeurIPS 2018 PDF NeurIPS 2018 Abstract
Task Dataset Model Metric Name Metric Value Global Rank Result Benchmark
Graph Classification COLLAB GNN (DiffPool) Accuracy 75.48% # 21
Graph Classification D&D GNN (DiffPool) Accuracy 80.64% # 11
Graph Classification D&D S2V (with 2 DiffPool) Accuracy 82.07% # 6
Graph Classification ENZYMES GNN (DiffPool) Accuracy 62.53% # 12
Graph Classification ENZYMES S2V (with 2 DiffPool) Accuracy 63.33% # 11
Graph Classification PROTEINS GNN (DiffPool) Accuracy 76.25% # 39
Graph Classification REDDIT-MULTI-12K GNN (DiffPool) Accuracy 47.08 # 1