OOD-GNN: Out-of-Distribution Generalized Graph Neural Network

Haoyang Li, Xin Wang, Ziwei Zhang, Wenwu Zhu

Main figure for OOD-GNN: Out-of-Distribution Generalized Graph Neural Network

Abstract

Graph neural networks (GNNs) have achieved impressive performance when testing and training graph data come from identical distribution. However, existing GNNs lack out-of-distribution generalization abilities so that their performance substantially degrades when there exist distribution shifts between testing and training graph data. To solve this problem, in this work, we propose an out-of-distribution generalized graph neural network (OOD-GNN) for achieving satisfactory performance on unseen testing graphs that have different distributions with training graphs. Our proposed OOD-GNN employs a novel nonlinear graph representation decorrelation method utilizing random Fourier features, which encourages the model to eliminate the statistical dependence between relevant and irrelevant graph representations through iteratively optimizing the sample graph weights and graph encoder. We further present a global weight estimator to learn weights for training graphs such that variables in graph representations are forced to be independent. The learned weights help the graph encoder to get rid of spurious correlations and, in turn, concentrate more on the true connection between learned discriminative graph representations and their ground-truth labels. We conduct extensive experiments to validate the out-of-distribution generalization abilities on two synthetic and 12 real-world datasets with distribution shifts. The results demonstrate that our proposed OOD-GNN significantly outperforms state-of-the-art baselines.

Proposed method: OOD-GNN

Benchmark Results

Tested on 9 datasets 12 baseline values reported too low

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

TU Dortmund

#ModelAccuracy ↑Paper
1
WL-MLP
0.9792
2
MSH-GNN
0.9640 ±0.0070
3
CoCN
0.8722 ±0.0013
23
GCN
actual #23 vs paper #316 293 places worse
0.8260 ±0.0220
best reported
actual #23 vs paper #316 293 places worse
paper 0.6590 ±0.0340
paper 0.6590 ±0.0340 Δ at pub 0.1470 Δ today 0.1670
30
GIN
actual #30 vs paper #341 311 places worse
0.8220 ±0.0210
best reported
actual #30 vs paper #341 311 places worse
paper 0.5550 ±0.0490
39
SAGPool
actual #39 vs paper #314 275 places worse
0.6700 ±0.0170
actual #39 vs paper #314 275 places worse
paper 0.6700 ±0.0170

Improvement within reported uncertainty; not highlighted.

paper 0.6700 ±0.0170 Δ at pub 0.0310 Δ today 0.1476
57
TopKPool
actual #57 vs paper #343 286 places worse
0.8140 ±0.0094
best reported
actual #57 vs paper #343 286 places worse
paper 0.5280 ±0.0100
best at pub: Memory-Based Graph Networks (ICLR 2020)
paper 0.5280 ±0.0100 Δ at pub 0.2476 Δ today 0.2860
73
FactorGCN
actual #73 vs paper #348 275 places worse
0.8120 ±0.0140
best reported
actual #73 vs paper #348 275 places worse
paper 0.5100 ±0.0130
best at pub: Factorizable Graph Convolutional Networks (NeurIPS 2020)
paper 0.5100 ±0.0130 Δ at pub 0.3020
136
GraphSAGE
0.7970 ±0.0170
151
MLP
0.7920 ±0.0240
254
PNA
actual #254 vs paper #329 75 places worse
0.7473 ±0.0109
best reported
actual #254 vs paper #329 75 places worse
paper 0.5960 ±0.0550
paper 0.5960 ±0.0550 Δ today 0.1513
314
OOD-GNN
0.6720 ±0.0180
This paper
326
GCN-virtual
0.6150 ±0.0160
This paper
342
GIN-virtual
0.5480 ±0.0270
This paper

MoleculeNet

#ModelROC-AUC ↑Paper
1
HIMP
0.8740 ±0.0050
2
GINE w/ VN
0.8720 ±0.0030
3
NaiveGINe+ K=3 w/ VN
0.8700 ±0.0040
14
GCN
actual #14 vs paper #211 197 places worse
0.8400 ±0.0040
best reported
actual #14 vs paper #211 197 places worse
paper 0.7530 ±0.0070
paper 0.7530 ±0.0070 Δ at pub 0.0870
24
GIN
actual #24 vs paper #235 211 places worse
0.8290 ±0.0069
best reported
actual #24 vs paper #235 211 places worse
paper 0.7490 ±0.0050
paper 0.7490 ±0.0050 Δ at pub 0.0800
131
GCN-virtual
0.7750 ±0.0090
This paper
135
GraphSAGE
0.7744 ±0.0038
#ModelROC-AUC ↑Paper
1
ProtoMol
0.9140 ±0.0030
2
MMSG
0.9080 ±0.0050
3
MemGNN
0.9070
43
GIN
actual #43 vs paper #261 218 places worse
0.8646 ±0.0081
best reported
actual #43 vs paper #261 218 places worse
paper 0.7300 ±0.0400
paper 0.7300 ±0.0400 Δ at pub 0.1310 Δ today 0.1346
64
GCN
actual #64 vs paper #195 131 places worse
0.7920 ±0.0140
actual #64 vs paper #195 131 places worse
paper 0.7920 ±0.0140
prev best: Memory-Based Graph Networks (ICLR 2020)

Improvement within reported uncertainty; not highlighted.

paper 0.7920 ±0.0140 Δ at pub 0.0090 Δ today 0.0620
82
GraphSAGE
0.8451
174
OOD-GNN
0.8000
This paper
286
GCN-virtual
0.6890 ±0.0700
This paper
#ModelROC-AUC ↑Paper
1
MAGPrompt+
0.9432 ±0.0238
2
CamS-LLaMA
0.9420
3
SE(3)-I MPPH
0.9400 ±0.0210
34
GIN
actual #34 vs paper #196 162 places worse
0.8875 ±0.0049
best reported
actual #34 vs paper #196 162 places worse
paper 0.6820 ±0.0150
38
GCN
actual #38 vs paper #182 144 places worse
0.8810 ±0.0360
best reported
actual #38 vs paper #182 144 places worse
paper 0.6890 ±0.0150
best at pub: Molecule Attention Transformer (NeurIPS 2020)
paper 0.6890 ±0.0150 Δ at pub 0.0230 Δ today 0.1920
57
GraphSAGE
0.8304 ±0.0038
207
GCN-virtual
0.6780 ±0.0240
This paper
#ModelROC-AUC ↑Paper
1
SE(3)-I MPPH
0.9930 ±0.0040
2
KA-GCN
0.9920 ±0.0050
3
KA-GAT
0.9910 ±0.0050
19
GCN
actual #19 vs paper #19
0.9130 ±0.0170
actual #19 vs paper #19
paper 0.9130 ±0.0170
paper 0.9130 ±0.0170 Δ at pub 0.1557
31
GCN-virtual
0.8860 ±0.0210
This paper
36
GIN
0.8810 ±0.0250
This paper
238
GraphSAGE
0.5580 ±0.0620
#ModelROC-AUC ↑Paper
1
KA-GAT
0.8470 ±0.0020
2
KA-GCN
0.8420 ±0.0010
3
GraphKAN
0.8370 ±0.0010
66
GIN
actual #66 vs paper #218 152 places worse
0.6403 ±0.0104
best reported
actual #66 vs paper #218 152 places worse
paper 0.5760 ±0.0140
125
GCN
actual #125 vs paper #193 68 places worse
0.5960 ±0.0180
actual #125 vs paper #193 68 places worse
paper 0.5960 ±0.0180

Improvement within reported uncertainty; not highlighted.

paper 0.5960 ±0.0180 Δ at pub 0.0046
188
GCN-virtual
0.5980 ±0.0150
This paper
227
GraphSAGE
0.5670 ±0.0010
#ModelROC-AUC ↑Paper
1
GeomGCL
0.7630
2
LiGhT DeepGPT
0.7570 ±0.0110
3
CoMPT
0.7550
14
GCN
actual #14 vs paper #137 123 places worse
0.7350 ±0.0020
best reported
actual #14 vs paper #137 123 places worse
paper 0.6350 ±0.0040
paper 0.6350 ±0.0040 Δ at pub 0.1000
32
GIN
actual #32 vs paper #141 109 places worse
0.7095 ±0.0027
best reported
actual #32 vs paper #141 109 places worse
paper 0.6340 ±0.0070
62
GraphSAGE
0.6775 ±0.0041
72
GCN-virtual
0.6670 ±0.0050
This paper
#ModelRMSE ↓Paper
1
Graphormer-SPIS
0.4840 ±0.0050
2
Graphormer-SPD
0.4920 ±0.0040
3
conan-FGW
0.5140 ±0.0190
7
GCN
actual #7 vs paper #101 94 places worse
0.5640 ±0.0150
best reported
actual #7 vs paper #101 94 places worse
paper 1.1100 ±0.0300
best at pub: Memory-Based Graph Networks (ICLR 2020)
paper 1.1100 ±0.0300 Δ at pub 0.1400 Δ today 0.5460
18
GraphSAGE
0.6010 ±0.0080
25
GIN
actual #25 vs paper #110 85 places worse
0.6260 ±0.0170
best reported
actual #25 vs paper #110 85 places worse
paper 1.1700 ±0.0600
paper 1.1700 ±0.0600 Δ at pub 0.5050 Δ today 0.5440
88
GCN-virtual
1.0200 ±0.1000
This paper
#ModelRMSE ↓Paper
1
SE(3)-I MPPH
0.3540 ±0.0530
2
ECFP-4 + RF
0.5600 ±0.0660
3
GPSE + GPS
0.6820
61
GCN-virtual
2.1900 ±0.1200
This paper
69
GIN
actual #69 vs paper #84 15 places worse
2.3460 ±0.1220
best reported
actual #69 vs paper #84 15 places worse
paper 2.7600
77
GCN
actual #77 vs paper #77
2.6400 ±0.2400
actual #77 vs paper #77
paper 2.6400 ±0.2400
SOTA performance (not significantly different from the best) Proposed method (this paper) 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 at pub — reported value improved over the best known when published Best today — OK at publication; today's leaderboard best is elsewhere