/ProxyExplainer

ProxyExplainer for Graph Neural Networks

Primary LanguagePython

Generating In-Distribution Proxy Graphs for Explaining Graph Neural Networks

This is a PyTorch implementation for ProxyExplainer.

Requirements

  • python==3.9
  • torch==2.0.1

Datasets

Real-world datasets:

Synthetic datasets:

Baselines

Usage

  • By default, the experiment will use the pretrained models that are saved in ExplanationEvaluation/models/pretrained/GNN/.

Citation

If you find this resource helpful, please consider starting this repository and cite our research:

@inproceedings{chen2024proxy,
      title={Generating In-Distribution Proxy Graphs for Explaining Graph Neural Networks}, 
      author={Zhuomin Chen, Jiaxing Zhang, Jingchao Ni, Xiaoting Li, Yuchen Bian, Md Mezbahul Isam, Ananda Mondal, Hua Wei, Dongsheng Luo},
      year={2024},
      booktitle={Proceedings of the 41st International Conference on Machine Learning}
}

Using robust fidelity as metric

If you want to use robust fidelity for evaluation, please refer to: https://github.com/AslanDing/Fidelity.

Further reading

For the most comprehensive collection of graph explainability papers, please refer to: https://github.com/flyingdoog/awesome-graph-explainability-papers.

Acknowledgement

Our code are based on [Re] Parameterized Explainer for Graph Neural Network. Thanks to the original authors for open-sourcing their work.