This is a Pytorch implementation of paper: DropEdge: Towards Deep Graph Convolutional Networks on Node Classification
- Python 3.6.2
- For the other packages, please refer to the requirements.txt.
To run the demo:
sh run.sh
All scripts of different models with parameters for Cora, Citeseer and Pubmed are in scripts
folder. You can reproduce the results by:
pip install -r requirements.txt
sh scripts/supervised/cora_IncepGCN.sh
The data format is same as GCN. We provide three benchmark datasets as examples (see data
folder). We use the public dataset splits provided by Planetoid. The semi-supervised setting strictly follows GCN, while the full-supervised setting strictly follows FastGCN and ASGCN.
For the details of backbones in Tables, please refer to the Appendix B.2 in the paper. All results are obtained on GPU (CUDA Version 9.0.176).
The following table demonstrates the testing accuracy (%) comparisons on different backbones and layers w and w/o DropEdge.
Dataset | Backbone | 2 layers | 4 layers | 8 layers | 16 layers | 32 layers | 64 layers | ||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Orignal | DropEdge | Orignal | DropEdge | Orignal | DropEdge | Orignal | DropEdge | Orignal | DropEdge | Orignal | DropEdge | ||
Cora | GCN | 86.10 | 86.50 | 85.50 | 87.60 | 78.70 | 85.80 | 82.10 | 84.30 | 71.60 | 74.60 | 52.00 | 53.20 |
ResGCN | - | - | 86.00 | 87.00 | 85.40 | 86.90 | 85.30 | 86.90 | 85.10 | 86.80 | 79.80 | 84.80 | |
JKNet | - | - | 86.90 | 87.70 | 86.70 | 87.80 | 86.20 | 88.00 | 87.10 | 87.60 | 86.30 | 87.90 | |
IncepGCN | - | - | 85.60 | 87.90 | 86.70 | 88.20 | 87.10 | 87.70 | 87.40 | 87.70 | 85.30 | 88.20 | |
GraphSage | 87.80 | 88.10 | 87.10 | 88.10 | 84.30 | 87.10 | 84.10 | 84.50 | 31.90 | 32.20 | 31.90 | 31.90 | |
Citeseer | GCN | 75.90 | 78.70 | 76.70 | 79.20 | 74.60 | 77.20 | 65.20 | 76.80 | 59.20 | 61.40 | 44.60 | 45.60 |
ResGCN | - | - | 78.90 | 78.80 | 77.80 | 78.80 | 78.20 | 79.40 | 74.40 | 77.90 | 21.20 | 75.30 | |
JKNet | - | - | 79.10 | 80.20 | 79.20 | 80.20 | 78.80 | 80.10 | 71.70 | 80.00 | 76.70 | 80.00 | |
IncepGCN | - | - | 79.50 | 79.90 | 79.60 | 80.50 | 78.50 | 80.20 | 72.60 | 80.30 | 79.00 | 79.90 | |
GraphSage | 78.40 | 80.00 | 77.30 | 79.20 | 74.10 | 77.10 | 72.90 | 74.50 | 37.00 | 53.60 | 16.90 | 25.10 | |
Pubmed | GCN | 90.20 | 91.20 | 88.70 | 91.30 | 90.10 | 90.90 | 88.10 | 90.30 | 84.60 | 86.20 | 79.70 | 79.00 |
ResGCN | - | - | 90.70 | 90.70 | 89.60 | 90.50 | 89.60 | 91.00 | 90.20 | 91.10 | 87.90 | 90.20 | |
JKNet | - | - | 90.50 | 91.30 | 90.60 | 91.20 | 89.90 | 91.50 | 89.20 | 91.30 | 90.60 | 91.60 | |
IncepGCN | - | - | 89.90 | 91.60 | 90.20 | 91.50 | 90.80 | 91.30 | OOM | 90.50 | OOM | 90.00 | |
GraphSage | 90.10 | 90.70 | 89.40 | 91.20 | 90.20 | 91.70 | 83.50 | 87.80 | 41.30 | 47.90 | 40.70 | 62.30 |
The following table demonstrates the testing accuracy (%) comparisons on different backbones and layers w and w/o DropEdge.
Dataset | Method | 2 layers | 4 laysers | 8 layers | 16 layers | 32 layers | 64 layers | ||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Orignal | DropEdge | Orignal | DropEdge | Orignal | DropEdge | Orignal | DropEdge | Orignal | DropEdge | Orignal | DropEdge | ||
Cora | GCN | 81.10 | 82.80 | 80.40 | 82.00 | 69.50 | 75.80 | 64.90 | 75.70 | 60.30 | 62.50 | 28.70 | 49.50 |
ResGCN | - | - | 78.80 | 83.30 | 75.60 | 82.80 | 72.20 | 82.70 | 76.60 | 81.10 | 61.10 | 78.90 | |
JKNet | - | - | 80.20 | 83.30 | 80.70 | 82.60 | 80.20 | 83.00 | 81.10 | 82.50 | 71.50 | 83.20 | |
IncepGCN | - | - | 77.60 | 82.90 | 76.50 | 82.50 | 81.70 | 83.10 | 81.70 | 83.10 | 80.00 | 83.50 | |
Citeseer | GCN | 70.80 | 72.30 | 67.60 | 70.60 | 30.20 | 61.40 | 18.30 | 57.20 | 25.00 | 41.60 | 20.00 | 34.40 |
ResGCN | - | - | 70.50 | 72.20 | 65.00 | 71.60 | 66.50 | 70.10 | 62.60 | 70.00 | 22.10 | 65.10 | |
JKNet | - | - | 68.70 | 72.60 | 67.70 | 71.80 | 69.80 | 72.60 | 68.20 | 70.80 | 63.40 | 72.20 | |
IncepGCN | - | - | 69.30 | 72.70 | 68.40 | 71.40 | 70.20 | 72.50 | 68.00 | 72.60 | 67.50 | 71.00 | |
Pubmed | GCN | 79.00 | 79.60 | 76.50 | 79.40 | 61.20 | 78.10 | 40.90 | 78.50 | 22.40 | 77.00 | 35.30 | 61.50 |
ResGCN | - | - | 78.60 | 78.80 | 78.10 | 78.90 | 75.50 | 78.00 | 67.90 | 78.20 | 66.90 | 76.90 | |
JKNet | - | - | 78.00 | 78.70 | 78.10 | 78.70 | 72.60 | 79.10 | 72.40 | 79.20 | 74.50 | 78.90 | |
IncepGCN | - | - | 77.70 | 79.50 | 77.90 | 78.60 | 74.90 | 79.00 | OOM | OOM | OOM | OOM |
- 2020-03-04: Support for
tensorboard
and added an example insrc/train_new.py
. Thanks for MihailSalnikov. - 2019-10-11: Support both full-supervised and semi-supervised task setting for
Cora
,Citeseer
andPubmed
. See--task_type
option.
@inproceedings{
rong2020dropedge,
title={DropEdge: Towards Deep Graph Convolutional Networks on Node Classification},
author={Yu Rong and Wenbing Huang and Tingyang Xu and Junzhou Huang},
booktitle={International Conference on Learning Representations},
year={2020},
url={https://openreview.net/forum?id=Hkx1qkrKPr}
}