Easy Paper Reproduction for Citation Network ( Cora / Pubmed / Citeseer )

This page tries to reproduce all the Graph Neural Network paper for Citation Network (Cora/Pubmed/Citeseer), which is the Hello world dataset (small and fast) for graph neural networks. But it’s very hard to achieve very high performance.

All datasets are runned with public split of semi-supervised settings. And we report the averarge accuracy by running 10 times.

Experiment Results

Model

Cora

Pubmed

Citeseer

Remarks

Vanilla GCN (Kipf 2017)

0.807(0.010)

0.794(0.003)

0.710(0.007)

GAT (Veličković 2017)

0.834(0.004)

0.772(0.004)

0.700(0.006)

SGC(Wu 2019)

0.818(0.000)

0.782(0.000)

0.708(0.000)

APPNP (Johannes 2018)

0.846(0.003)

0.803(0.002)

0.719(0.003)

Almost the same with the results reported in Appendix E.

GCNII (64 Layers, 1500 Epochs, Chen 2020)

0.846(0.003)

0.798(0.003)

0.724(0.006)

How to run the experiments?

# Device choose
export CUDA_VISIBLE_DEVICES=0
# GCN
python train.py --conf config/gcn.yaml --use_cuda --dataset cora
python train.py --conf config/gcn.yaml --use_cuda --dataset pubmed
python train.py --conf config/gcn.yaml --use_cuda --dataset citeseer


# GAT
python train.py --conf config/gat.yaml --use_cuda --dataset cora
python train.py --conf config/gat.yaml --use_cuda --dataset pubmed
python train.py --conf config/gat.yaml --use_cuda --dataset citeseer


# SGC (Slow version)
python train.py --conf config/sgc.yaml --use_cuda --dataset cora
python train.py --conf config/sgc.yaml --use_cuda --dataset pubmed
python train.py --conf config/sgc.yaml --use_cuda --dataset citeseer

# APPNP
python train.py --conf config/appnp.yaml --use_cuda --dataset cora
python train.py --conf config/appnp.yaml --use_cuda --dataset pubmed
python train.py --conf config/appnp.yaml --use_cuda --dataset citeseer

# GCNII (The original code use 1500 epochs.)
python train.py --conf config/gcnii.yaml --use_cuda --dataset cora --epoch 1500
python train.py --conf config/gcnii.yaml --use_cuda --dataset pubmed --epoch 1500
python train.py --conf config/gcnii.yaml --use_cuda --dataset citeseer --epoch 1500