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 |
---|---|---|---|---|
0.807(0.010) |
0.794(0.003) |
0.710(0.007) |
||
0.834(0.004) |
0.772(0.004) |
0.700(0.006) |
||
0.818(0.000) |
0.782(0.000) |
0.708(0.000) |
||
0.846(0.003) |
0.803(0.002) |
0.719(0.003) |
Almost the same with the results reported in Appendix E. |
|
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