Bag of Tricks for Node Classification with Graph Neural Networks

Yangkun Wang, Jiarui Jin, Weinan Zhang, Yong Yu, Zheng Zhang, D. Wipf

Main figure for Bag of Tricks for Node Classification with Graph Neural Networks

Abstract

Over the past few years, graph neural networks (GNN) and label propagation-based methods have made significant progress in addressing node classification tasks on graphs. However, in addition to their reliance on elaborate architectures and algorithms, there are several key technical details that are frequently overlooked, and yet nonetheless can play a vital role in achieving satisfactory performance. In this paper, we first summarize a series of existing tricks-of-the-trade, and then propose several new ones related to label usage,. loss function formulation, and model design that can significantly improve various GNN architectures. We empirically evaluate their impact on final node classification accuracy by conducting ablation studies and demonstrate consistently-improved performance, often to an extent that outweighs the gains from more dramatic changes in the underlying GNN architecture. Notably, many of the top-ranked models on the Open Graph Benchmark (OGB) leaderboard and KDDCUP 2021 Large-Scale Challenge MAG240M-LSC benefit from these techniques we initiated.

Proposed method: GCN

Benchmark Results

Tested on 4 datasets 1 baseline value reported too low Non-standard metric on 1 dataset

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

Classic

#ModelAccuracy ↑Paper
1
GraphSAGE+CNA
0.9418 ±0.0033
2
GCN+CNA
0.9366 ±0.0048
3
TransformerConv
0.9350 ±0.0058
21
GCN
actual #21 vs paper #456 435 places worse
0.9004
best reported
actual #21 vs paper #456 435 places worse
paper 0.8260 ±0.0083
paper 0.8260 ±0.0083 Δ at pub 0.0457 Δ today 0.0744
39
SAGE
0.8911 ±0.0012
44
GAT
actual #44 vs paper #381 337 places worse
0.8897 ±0.0014
best reported
actual #44 vs paper #381 337 places worse
paper 0.8341 ±0.0074
paper 0.8341 ±0.0074 Δ at pub 0.0549 Δ today 0.0556
325
GAT+norm.adj.
0.8372 ±0.0074
This paper
724
MLP
actual #724 vs paper #872 148 places worse
0.7768
best reported
actual #724 vs paper #872 148 places worse
paper 0.6110 ±0.0091
paper 0.6110 ±0.0091 Δ at pub 0.0050 Δ today 0.1658
#ModelAccuracy ↑Paper
1
CNA
0.9575 ±0.0058
2
IS-GIB
0.9390 ±0.0187
3
EERM
0.9112 ±0.0145
44
GCN
actual #44 vs paper #402 358 places worse
0.8033 ±0.0088
best reported
actual #44 vs paper #402 358 places worse
paper 0.7249 ±0.0112
61
GraphSAGE
0.7923 ±0.0053
350
MLP
actual #350 vs paper #833 483 places worse
0.7289 ±0.0010
best reported
actual #350 vs paper #833 483 places worse
paper 0.5960 ±0.0092
paper 0.5960 ±0.0092 Δ at pub 0.0140 Δ today 0.1329
437
GAT+norm.adj.
0.7225 ±0.0104
This paper
463
vanilla GAT
0.7192 ±0.0092
This paper
#ModelAccuracy ↑Paper
1
LGTL
0.9518 ±0.0011
2
MixHop (LO)
0.9513 ±0.0038
3
GraphSAGE (LO)
0.9511 ±0.0036
18
GCN
actual #18 vs paper #600 582 places worse
0.9296 ±0.0015
best reported
actual #18 vs paper #600 582 places worse
paper 0.7893 ±0.0069
116
SAGE
0.8881 ±0.0015
210
MLP
actual #210 vs paper #813 603 places worse
0.8690 ±0.0074
best reported
actual #210 vs paper #813 603 places worse
paper 0.7339 ±0.0062
paper 0.7339 ±0.0062 Δ at pub 0.0081 Δ today 0.1351
623
GAT+norm.adj.
0.7877 ±0.0054
This paper
646
vanilla GAT
0.7843 ±0.0064
This paper

Reddit

Global leaderboard →
Non-default metric. This paper reports Accuracy; the dataset default is F1. Values below use Accuracy only.

Sorted by Accuracy. Highlighted rows are from other papers.

#ModelAccuracy ↑Paper
1
GAP-EDP
0.9870 ±0.0003
2
NE-ASGCN
0.9758 ±0.0027
3
HSGT
0.9730 ±0.0024
5
GAT+norm.adj.
0.9706 ±0.0005
This paper
8
vanilla GAT
0.9697 ±0.0004
This paper
21
GraphSAGE
0.9653 ±0.0011
26
GCN
actual #26 vs paper #61 35 places worse
0.9648
best reported
actual #26 vs paper #61 35 places worse
paper 0.9522 ±0.0004
paper 0.9522 ±0.0004 Δ at pub 0.0126
147
MLP
actual #147 vs paper #150 3 places worse
0.8240 ±0.0010
best reported
actual #147 vs paper #150 3 places worse
paper 0.7312 ±0.0009
paper 0.7312 ±0.0009 Δ today 0.0928
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