Home

Awesome

STABLE KDD2022

This repo is for source code of KDD 2022 paper "Reliable Representations Make A Stronger Defender: Unsupervised Structure Refinement for Robust GNN".

Paper Link: https://arxiv.org/abs/2207.00012

Environment

Perturbed Datasets

First, you need to install Deeprobust to prepare the perturbed dataset. Here we only provide the example of MetaAttack. If you need graphs attacked by other methods (DICE, Random), you can refer to: https://github.com/DSE-MSU/DeepRobust/tree/master/examples/graph. Likewise, you can also prepare your own perturbed graphs you need in any way.

pip install deeprobust

Then, you can generate the perturbed graphs via

python generate_attack.py --dataset cora --ptb_rate 0.05

Main Method

After obtaining the perturbed graphs, you can run STABLE via

python main.py --dataset cora --ptb_rate 0.05 --alpha -0.3 --beta 2 --k 5 --jt 0.03 --cos 0.1 --log

Hyper-parameters

Though we have five hyper-parameters, they can be easily tuned according to the perturbation rate. Here we provide guidance and the specific values which achieve the peak performance against MetaAttack in our experiments.

Cora

ptb_rate0%5%10%15%20%
alpha-0.5-0.30.30.60.6
beta22222
k15777
jt0.00.030.030.030.03
cos0.10.10.10.20.25

Citeseer

ptb_rate0%5%10%15%20%
alpha-0.5-0.3-0.1-0.10.1
beta22222
k33555
jt0.00.020.020.040.03
cos0.10.10.10.10.1

Polblogs

ptb_rate0%5%10%15%20%
alpha-0.50.30.522
beta21122
k03333
jt/////
cos0.10.10.10.10.1

Citation

@inproceedings{li2022reliable,
  title={Reliable Representations Make A Stronger Defender: Unsupervised Structure Refinement for Robust GNN},
  author={Li, Kuan and Liu, Yang and Ao, Xiang and Chi, Jianfeng and Feng, Jinghua and Yang, Hao and He, Qing},
  booktitle={Proceedings of the 28th ACM SIGKDD Conference on Knowledge Discovery and Data Mining},
  pages={925--935},
  year={2022}
}

Contact

If you have any questions, please feel free to contact me with likuan.ppd@gmail.com.