DropEdge: Towards Deep Graph Convolutional Networks on Node Classification
This is a Pytorch implementation of paper: DropEdge: Towards Deep Graph Convolutional Networks on Node Classification
Requirements
- Python 3.6.2
- For the other packages, please refer to the requirements.txt.
Usage
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
Data
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.
Benchmark Results
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).
Full-supervised Setting Results
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 |
Semi-supervised Setting Results
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 |
Change Log
- 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.
References
@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}
}