Learning and Evaluating Graph Neural Network Explanations based on
  Counterfactual and Factual Reasoning
  Structural data well exists in Web applications, such as social networks in
social media, citation networks in academic websites, and threads data in
online forums. Due to the complex topology, it is difficult to process and make
use of the rich information within such data. Graph Neural Networks (GNNs) have
shown great advantages on learning representations for structural data.
However, the non-transparency of the deep learning models makes it non-trivial
to explain and interpret the predictions made by GNNs. Meanwhile, it is also a
big challenge to evaluate the GNN explanations, since in many cases, the
ground-truth explanations are unavailable.
  In this paper, we take insights of Counterfactual and Factual (CF^2)
reasoning from causal inference theory, to solve both the learning and
evaluation problems in explainable GNNs. For generating explanations, we
propose a model-agnostic framework by formulating an optimization problem based
on both of the two casual perspectives. This distinguishes CF^2 from previous
explainable GNNs that only consider one of them. Another contribution of the
work is the evaluation of GNN explanations. For quantitatively evaluating the
generated explanations without the requirement of ground-truth, we design
metrics based on Counterfactual and Factual reasoning to evaluate the necessity
and sufficiency of the explanations. Experiments show that no matter
ground-truth explanations are available or not, CF^2 generates better
explanations than previous state-of-the-art methods on real-world datasets.
Moreover, the statistic analysis justifies the correlation between the
performance on ground-truth evaluation and our proposed metrics. Source code is
available at https://github.com/chrisjtan/gnn_cff.
