Home

Awesome

Code for Graph-Revised Convolutional Network (ECML-PKDD 2020)

Requirements

python >= 3.6.0
pytorch = 1.5.0
tqdm
itermplot

The code is based on pyg. Please see instructions for its installation.

dataprocess.py is used for data spliting, edge sampling, and data loader.

Reproduce Results

Run our model GRCN under fixed train/val/test split

./run_fixed.sh 1(GPU No.) GRCN Cora(dataset: Cora, CiteSeer, PubMed) --sparse

To save the log result, add --save in the command.
You can change the parameters of run_fixed.sh and config/.

Run our model GRCN under random train/val/test split

./run_random.sh 1(GPU No.) GRCN Cora(dataset: Cora, CiteSeer, PubMed, CoraFull, Computers, CS) --sparse

When running on PubMed dataset, add --keep_train_num.
To save the log result, add --save in the command.
You can change the parameters of run_random.sh and config/.

Results

Our model achieves the following performance on :

semi-supervised node classification (fixed split)

ModelCoraCiteSeerPubMed
GCN81.4±0.570.9±0.579.0±0.3
GAT83.2±0.772.6±0.678.8±0.3
LDS84.0±0.474.8±0.5N/A
GLCN81.8±0.670.8±0.578.8±0.4
Fast-GRCN83.6±0.472.9±0.679.0±0.2
GRCN84.2±0.473.6±0.579.0±0.2

semi-supervised node classification (random splits)

ModelCoraCiteSeerPubMed
GCN81.2±1.969.8±1.977.7±2.9
GAT81.7±1.968.8±1.877.7±3.2
LDS81.6±1.071.0±0.9N/A
GLCN81.4±1.969.8±1.877.2±3.2
Fast-GRCN83.8±1.672.3±1.477.6±3.2
GRCN83.7±1.772.6±1.377.9±0.2