NeurIPS 2020

Rethinking pooling in graph neural networks

Diego Mesquita, A. Souza, Samuel Kaski

Main figure for Rethinking pooling in graph neural networks

Abstract

Graph pooling is a central component of a myriad of graph neural network (GNN) architectures. As an inheritance from traditional CNNs, most approaches formulate graph pooling as a cluster assignment problem, extending the idea of local patches in regular grids to graphs. Despite the wide adherence to this design choice, no work has rigorously evaluated its influence on the success of GNNs. In this paper, we build upon representative GNNs and introduce variants that challenge the need for locality-preserving representations, either using randomization or clustering on the complement graph. Strikingly, our experiments demonstrate that using these variants does not result in any decrease in performance. To understand this phenomenon, we study the interplay between convolutional layers and the subsequent pooling ones. We show that the convolutions play a leading role in the learned representations. In contrast to the common belief, local pooling is not responsible for the success of GNNs on relevant and widely-used benchmarks.

Benchmark Results

Tested on 2 datasets 1 baseline value reported too low

Tables show presented results in global context (best 3 papers + GCN + MLP).

TU Dortmund

#ModelAccuracy ↑Paper
1
WL-MLP
0.9954
2
GIN
actual #2 vs paper #223 221 places worse
0.9934
best reported
actual #2 vs paper #223 221 places worse
paper 0.8000 ±0.0140
best at pub: Provably Powerful Graph Networks (NeurIPS 2019)
paper 0.8000 ±0.0140 Δ at pub 0.0270 Δ today 0.1934
3
GCN
0.9727
131
GraphSAGE
actual #131 vs paper #391 260 places worse
0.8200 ±0.0100
best reported
actual #131 vs paper #391 260 places worse
paper 0.7600 ±0.0180
paper 0.7600 ±0.0180 Δ at pub 0.0170 Δ today 0.0600
170
Graclus
actual #170 vs paper #221 51 places worse
0.8120 ±0.0340
best reported
actual #170 vs paper #221 51 places worse
paper 0.8010 ±0.0160

Difference within reported uncertainty; not counted as underperformance.

paper 0.8010 ±0.0160 Δ today 0.0110
216
Complement
0.8020 ±0.0140
This paper
342
DiffPool v2
0.7740 ±0.0200
This paper
343
N-DiffPool v2
0.7740 ±0.0140
This paper
368
MINCUTPOOL
actual #368 vs paper #390 22 places worse
0.7680 ±0.0160
best reported
actual #368 vs paper #390 22 places worse
paper 0.7610 ±0.0190

Difference within reported uncertainty; not counted as underperformance.

paper 0.7610 ±0.0190 Δ today 0.0070
372
N-MinCutPool
0.7660 ±0.0160
This paper

GNNBenchmark

#ModelAccuracy ↑Paper
1
Schrödinger
0.9913 ±0.0004
2
CNN
0.9907 ±0.0007
3
MPNN
0.9895 ±0.0006
11
GatedGCN
0.9855 ±0.0002
32
GIN
actual #32 vs paper #136 104 places worse
0.9833 ±0.0011
best reported
actual #32 vs paper #136 104 places worse
paper 0.9400 ±0.0130
paper 0.9400 ±0.0130 Δ today 0.0433
95
GraphSAGE
actual #95 vs paper #102 7 places worse
0.9731 ±0.0010
best reported
actual #95 vs paper #102 7 places worse
paper 0.9710 ±0.0200

Difference within reported uncertainty; not counted as underperformance.

paper 0.9710 ±0.0200 Δ today 0.0021
97
SAGE
0.9731 ±0.0010
113
Graclus
actual #113 vs paper #132 19 places worse
0.9621 ±0.0018
best reported
actual #113 vs paper #132 19 places worse
paper 0.9430 ±0.0034
126
MLP
0.9534 ±0.0014
132
Complement
0.9450 ±0.0033
This paper
140
DiffPool v2
0.9070 ±0.0030
This paper
143
MINCUTPOOL
0.8930 ±0.0100
This paper
144
N-DiffPool v2
0.8900 ±0.0050
This paper
150
N-MinCutPool
0.8200 ±0.0160
This paper
SOTA performance (not significantly different from the best) Baseline / comparison (this paper) Global context (other papers) Best at pub — reported result worse than the best known when published (best reported in green) Best today — OK at publication; today's leaderboard best is elsewhere