We investigate the explainability of graph neural networks (GNNs) as a step toward elucidating their working mechanisms. While most current methods focus on explaining graph nodes, edges, or features, we argue that, as the inherent functional mechanism of GNNs, message flows are more natural for performing explainability. To this end, we propose a novel method here, known as FlowX, to explain GNNs by identifying important message flows. To quantify the importance of flows, we propose to follow the philosophy of Shapley values from cooperative game theory. To tackle the complexity of computing all coalitions' marginal contributions, we propose a flow sampling scheme to compute Shapley value approximations as initial assessments of further training. We then propose an information-controlled learning algorithm to train flow scores toward diverse explanation targets: necessary or sufficient explanations. Experimental studies on both synthetic and real-world datasets demonstrate that our proposed FlowX and its variants lead to improved explainability of GNNs. The code is available at https://github.com/divelab/DIG.
翻译:本文研究图神经网络(GNNs)的可解释性,旨在阐明其工作机制。当前大多数方法聚焦于解释图节点、边或特征,但我们认为,作为GNNs固有功能机制的消息流,更适合用于实现可解释性。为此,我们提出一种名为FlowX的新方法,通过识别重要消息流来解释GNNs。为量化消息流的重要性,我们遵循合作博弈论中Shapley值的核心理念。针对计算所有联盟边际贡献的高复杂度问题,我们提出一种流采样方案来估计Shapley值的近似值,作为后续训练的初始评估。随后,我们设计了一种信息控制学习算法,针对不同的解释目标(必要解释或充分解释)训练流得分。在合成数据集和真实数据集上的实验表明,我们提出的FlowX及其变体显著提升了GNNs的可解释性。相关代码已开源至 https://github.com/divelab/DIG。