Hyperbolic Graph Convolutional Neural Networks

GNN-Explainer is a general tool for explaining predictions made by graph neural networks (GNNs). Given a trained GNN model and an instance as its input, the GNN-Explainer produces an explanation of the GNN model prediction via a compact subgraph structure, as well as a set of feature dimensions important for its prediction.

Motivation

Graph Neural Networks (GNNs) are a powerful tool for machine learning on graphs. GNNs combine node feature information with the graph structure by recursively passing neural messages along edges of the input graph. However, incorporating both graph structure and feature information leads to complex models and explaining predictions made by GNNs remains unsolved.



GNN-Explainer is task agnostic: it can be applied to

GNN-Explainer can be applied to many common GNN models: GCN, GraphSAGE, GAT, SGC, hypergraph convolutional networks etc.


Method

GNN-Explainer specifies an explanation as a rich subgraph of the entire graph the GNN was trained on, such that the subgraph maximizes the mutual information with GNN’s prediction(s). This is achieved by formulating a mean field variational approximation and learning a real-valued graph mask which selects the important subgraph of the GNN’s computation graph. Simultaneously, GNN-Explainer also learns a feature mask that masks out unimportant node features.

Please refer to our paper for detailed explanations and more results.

Code

A reference implementation of GNN-Explainer and interactive notebook demo will be made public on Nov 15th 2019.

Datasets

Mutagenicity and Reddit-Binary datasets can be found here.

Contributors

The following people contributed to GNN-Explainer:
Rex Ying
Dylan Bourgeois
Jiaxuan You
Marinka Zitnik
Jure Leskovec

References

GNNExplainer: Generating Explanations for Graph Neural Networks, . R. Ying, D. Bourgeois, J. You, M. Zitnik, J. Leskovec. Neural Information Processing Systems (NeurIPS), 2019.