ICML'21 | 基于子图结构的GNN解释模型

fig0
  • 论文标题:On Explainability of Graph Neural Networks via Subgraph Explorations

  • 论文地址:https://arxiv.org/pdf/2102.05152.pdf

  • 欢迎关注小编知乎:图子

目前针对GNN的可解释性提出了很多方法,但现有的方法(如 GNNExplainer、PGExplainer 和 PGM-Explainer) 都无法用子图结构解释GNN的预测。今天小编解读文章的最新发表于ICML 2021,论文通过明确地识别重要的子图来解释GNN模型。非常新颖的采用了蒙特卡洛树算法来探索不同的子图,使用 Shapley 值来衡量子图的重要性。

0.摘要

现有的GNN解释方法侧重于解释图的节点或边的重要性,但忽略了图子结构。事实上子结构更直观且容易被人理解。论文提出了一种通过识别重要的子图来解释GNNs 的方法,即 Subgraph X。给定一个经过训练的GNN模型和一个输入图,Subgraph X 通过蒙特卡洛树搜索有效地探索不同的子图来解释其预测。为了使树搜索更加有效,论文提出使用 Shapley 值作为子图重要性的衡量标准,这也可以捕捉到不同子图之间的相互作用。为了加快计算速度,论文提出了高效的近似方案来计算图数据的 Shapley 值。该论文是通过识别子图来解释 GNN 的第一次尝试,实验结果表明,Subgraph X 明显改善了解释结果,同时将计算量也相对合理。

1. Introduction

先说说为啥要关注图神经网络的可解释性?

现有的 GNN 模型大多被视为黑盒子,其预测结果缺乏可解释性。如果不理解和推理预测背后的关系,这些模型就不能被人们理解信任,阻碍了它们在关键领域的应用,因此研究深度图模型的可解释性十分必要。

本文的提出的解释方法的独特性在于?

很多文献在研究图像和文本上的深度模型的解释技术方面做了工作,这些方法可以通过不同的策略解释网络行为和特定输入的预测结果。然而,GNN 的可解释性仍未得到充分的探索。与图像和文本不同,图数据不是网格状的数据,它包含重要的结构信息。因此,图像和文本领域的方法不能直接应用。目前存在的GNN 解释方法,如 GNNExplainer、PGExplainer 和 PGM-Explainer,但它都是关注节点、边或节点特征层面的可解释性,没有进行子图层面的可解释性研究。本文认为子图层面的解释更加直观和有用,因为子图是复杂图的简单构件,与图的功能高度相关。

2. 相关工作

2.1. Graph Neural Networks

具有 个节点的图 可以表示成一个邻接矩阵 和一个特征矩阵 ,即每一个节点都有一个 维特征向量。GCN 中聚合操作的数学表达如下:

其中, 表示第 层 GCN的输出特征矩阵,设置 ,节点特征转换:由 转换到 ,令 ,即邻接矩阵添加了自环, 是归一化的 的节点度矩阵,即对角阵。 是可学习的权重矩阵,实现在特征矩阵上的线性变换, 为非线性激活函数。

2.2 GNN 的解释性

尽管解释 GNN 对于理解和信任深度图模型至关重要,但与图像和文本领域相比,对GNN的可解释性研究仍然较少。最近提出了一些专门用于解释深层图模型的方法,这些方法主要是通过识别重要的节点、边、节点特征来解释GNN。它们都不能提供依赖输入的子图层面的解释,子图对理解图模型很重要。根据最近的一项 GNN 解释性综述(Yuan等人,2020c),作者将GNN的解释方法分为几类:基于梯度/特征的方法、基于分解的方法、基于代理的方法、基于生成的方法和基于扰动的方法。

基于扰动的方法,通过扰动不同的输入特征来监测预测的变化,并确定对预测影响最大的特征。例如,GNNExplainer 优化了边和节点特征的软掩码,以最大化原始预测和新预测之间的互信息。优化后的掩码可以识别重要的边和特征。PGExplainer学习一个参数化的模型来预测一个边是否重要,该模型是用数据集中的所有边来训练的,它采用了重参数化技巧来获得近似的离散掩码,而不是软掩码。GraphMask 遵循与PGExplainer 类似的想法,训练一个分类器来预测是否可以放弃一条边而不影响模型的预测,然而它研究GNN每一层的边,而PGExplainer 只关注输入空间。

在之前的解释方法中,重要的节点或边并不保证是彼此连接的。由于GNN非常复杂,节点/边的重要性不能直接转换为子图的重要性。这些方法忽略了不同节点和边之间的相互作用,而这中相互作用可能包含重要信息。

3. SubgraphX

目前大多数 GNN 的解释方法都是基于识别重要的节点或边,但本文作者认为识别重要的子图更自然且可解释性更强。 Subgraph X 通过探索和识别重要的子图来解释GNN。

3.1 使用子图解释 GNN

GNN 解释性问题形成

表示要解释的GNN,将  视为一个图分类模型来介绍 Subgraph X。给定一个输入图 ,它的预测结果为 。解释任务的目标:

是找到对于预测结果 而言最重要的子图。由于不连接的节点很难理解,本文只考虑连接子图。那么 的连接子图的集合就表示为   ,其中   中不同连接子图的数量。

对于输入图 的预测结果 的,找到解释子图的目标函数为:

公式的基本思想就是找到输入图中得分最高的连接子图。

是评分函数,评估给定训练好的 GNN 以及输入图时,子图的重要程度。 是子图大小的上限,保证得到的解释足够简洁,获得 的简单方法是枚举所有可能的 ,并选择最重要的一个作为解释。

然而,当图是复杂和大规模的时候,粗暴的枚举方法是难以实现的。本文提出结合蒙特卡洛树搜索算法来有效地探索子图。GNN 中的信息聚合程序可以理解为不同图结构之间的相互作用,本文提出采用 Shapley 值作为评分函数,通过考虑这种相互作用来衡量不同子图的重要性。图1中说明了本文提出的SubgraphX。经过搜索,得分最高的子图被认为是对输入图 的预测结果为 的解释。此外,Subgraph X 可以很容易地扩展到使用其他搜索算法和评分函数的场景

fig1

最下面显示了搜索树中从根到叶的一条选定路径,这相当于MCTS的一次迭代。对于每个节点的选择,它的子图是通过蒙特卡洛抽样计算Shapley 值来评估的。

3.2. 蒙特卡洛算法

MCTS作为搜索算法来指导子图探索。作者建立了一个搜索树,其中根节点与输入图相关,其他每个节点都对应于一个连接的子图。搜索树中的每条边都表示与子节点相关的图可以通过对与其父节点相关的图进行节点剪枝而得到。搜索树中的一个节点定义为 表示根节点。搜索树中的边代表剪枝动作 。MCTS 算法记录访问次数和奖励的统计数据,以指导探索并减少搜索空间。对于节点和剪枝动作对 ,假设子图  是由动作 中得到的。MCTS 算法为   记录了四个变量,定义为:

  • 表示对节点 的选择动作 的次数。

  • 是对所有 访问的总的奖励。

  • 是多次访问的平均奖励。

  • 是在 上的选择 的直接奖励,用来衡量子图 的重要程度。作者提出在每次迭代中使用 。

在每次迭代中,MCTS 选择一条从根 开始到叶子节点 。叶子节点可以根据子图中的节点数量来定义,这样 。形式上,对于节点 的动作选择标准被定义为:

表示节点   所有可能行动的总访问次数。对叶子节点 的子图进行评估,重要性得分表示为Score 。最后,更新该路径中选择的所有节点和行动对:

经过几次迭代的搜索,选择叶子节点中得分最高的子图作为解释

3.3. 基于博弈论的评分函数

在 SubgraphX中,MCTS 的奖励和解释的选择都高度依赖于如何定义评分函数。最直接的解决办法是将子图送入训练好的GNNs  ,并使用预测的分数作为重要性分数。但它不能捕捉不同图结构之间的相互作用,从而影响解释结果。

论文提出采用 Shapley 值作为评分函数。Shapley 值是合作博弈理论中的一个概念,用于公平分配给不同游戏者的总游戏收益,这里我们可以看作是子图之间的博弈。作者将GNN预测作为游戏收益,将不同的图结构作为玩家

给定一个具有 个节点的输入图 和经过训练的 GNN   ,研究有   个节点的目标子图 的 Shapley 值。

 表示 中的所有节点,将其分成两部分: 中的节点是   ,不属于 的节点是   。玩家的集合定义为 ,将整个子图   视为一个玩家。玩家   的 Shapley 值为:

其中 是玩家的可能  coalition set。 是玩家 的marginalized contribution。它可以通过纳入集合 和不纳入集合 的预测之差计算出来。最终获得的 Shapley 值 考虑了不同的  coalition set 从而捕获不同玩家之间的交互。然而,上述公式计算 Shapley 值是很耗时的,因为它列举了所有可能的 coalitions,特别是对于大规模和复杂的图。因此,作者提出将GNN架构信息  纳入,以有效地逼近 Shapley 值。

3.4. 图结构辅助有效计算

利用图结构信息进行问题简化

GNN 中目标节点的新特征是通过聚合有限的邻居信息来获得的。假设图模型 中有L层GNN,那么L跳内的邻居节点会用于信息聚合。信息聚合模式可以被认为是不同图结构之间的相互作用。因此,子图 主要与L-hops内的邻居交互。基于这样的观察,作者提出只考虑 的 L-hop 邻居节点来计算其 Shapley 值。假设子图 的L-hop邻居中有 个节点,我们将这些节点表示为 。那么我们需要考虑的新的玩家集合就表示为   。通过纳入集合 的Shapley值可以定义为:

由于图数据是复杂的,不同的节点有不同数量的邻居,那么集合 可能仍然包含大量的玩家,影响计算的效率。SubgraphX 进一步结合蒙特卡洛抽样来计算 。对于抽样步骤 ,从玩家集合   中采样一个 coalition set ,并计算其边际贡献 。多个抽样步骤的平均贡献分数即 的近似值,数学上写为:

是总的采样步数。此外,为了计算边际化贡献,作者采用了零填充策略。为了计算   ,考虑不属于 coalition set 或子图的节点 ,将其节点特征设置为全零。将新的图送入GNNs ,预测的概率表示为 。类似地,我们可以通过将节点 的特征设置为零,并反馈给GNNs来计算 。只对节点特征进行扰动,而不是从输入图中删除节点,因为图对结构变化非常敏感。算法1和2中总结了SubgraphX的计算步骤

3.5. SubgraphX 用于其它任务

论文主要以图分类模型为例描述了SubgraphX。SubgraphX 可以很容易地推广到其他任务的解释图模型,如节点分类和链接预测。对于节点分类模型,解释的目标是给定输入图   的单个节点    的预测。假设GNN模型中有 层, 的预测只依赖于其 跳计算图,表示为 。SubgraphX 不是从输入图 开始搜索,而是将 设置为搜索树根 的对应图。此外,在计算边际化贡献时,零填充策略应排除目标节点 。同时,对于链接预测任务解释目标是对单一链接 的预测。那么搜索树的根对应于节点 的L-跳计算图。同样地,零填充策略在扰动节点特征时忽略了 。SubgraphX 在解释阶段将 GNN 视为黑盒子,只需要访问输入和输出。因此SubgraphX可以应用于一般的GNN模型系列,包括但不限于GCNs,  GATs ,GINs,Line-Graph NNs .

4. 实验

4.1. 数据集和实验设置

用五个数据集来评估我们的SubgraphX,包括:合成数据集、生物数据集、文本数据集,用于图分类和节点分类任务。

MUTAG and BBBP 用于图分类任务的分子数据集;Graph-SST2 用于图分类任务的情感图数据集;BA-2Motifs:合成的图分类数据集;BA-Shape 合成的节点分类数据集。

在这些数据集上使用了GNN的三种变体,包括GCNs、GATs 和GINs。然后将 Subgraph X 与几个基线进行比较,包括 MCTS GNN、GNNExplainer、PGExplainer。

4.2. 对图分类模型的解释

fig3

其中重要的子结构以粗体展示

图2是 BA-2Motifs 数据集的解释结果的可视化。使用GCNs作为图分类器,并展示正确和错误预测的解释。motifs 是解释的 ground truth 的合理近似。在第一行中,解释GNN模型的正确预测,SubgraphX 可以精确地识别出房子形状的 motif。在第二行,SubgraphX 解释 GNN 不正确的预测,即GNN 模型不能捕捉到 five-node cycle motif 循环图案,导致图模型预测是错误的。对于这两种情况,SubgraphX 可以提供更好的视觉解释。本文的解释是节点之间互相连接的子图,而PGExplainer和GNNExplainer是识别离散的边

fig4

图3中展示了MUTAG数据集的解释结果,由于MUTAG数据集是一个真实世界的数据集,没有解释的 ground truth ,我们根据化学领域的知识来评估解释结果,碳环和NO2基团往往具有诱变性。在这两个例子中,预测是 "致突变 "的,SubgraphX 精确地识别了碳环作为重要的子图。MCTS GNN 也可以捕捉到关键的子图,但包括几个额外的边。PGExplainer 和 GNNExplainer的结果仍然包含几个离散的边。

fig5

对于数据集Graph-SST2,采用GATs作为图模型。第一行中,预测是正确的,标签是积极。SubgraphX 和 MCTS GNN 都能找到具有积极语义的词组,如 "“makes old story new",可以合理地解释预测结果。然而,PGExplainer和GNNExplainer所提供的解释在语义上的关联性较小。在第二行中,输入是负面的,但预测是积极的的。除了PGExplainer之外,所有的方法都可以解释GNN模型将积极的短语 "truly going to inspire "视为重要的,从而产生一个积极但不正确的预测。

4.3. 解释节点分类模型

fig6

使用BA-Shape数据集并训练一个GCN模型来进行节点分类。图5展示了可视化的结果,其中重要的子结构以黑体表示。可以验证解释是否与规则(motifs)一致,以标记不同的节点。对于这两个例子,目标节点都被正确分类。SubgraphX 是以 motifs 为解释的目标,其它解释方法只包括部分motifs,并包括其他结构。

4.4. 定量评估

采用 Fidelity 和 Sparsity 指标来评估解释结果。

fig7

4.5. 效率评估

SubgraphX 方法能够在达到相同的 Fidelity 分数情况下,使用更少的时间。尽管我SubgraphX 比GNNExplainer和PGExplainer慢,但我们的解释的Fidelity分数比它们高300%。此外,PGExplainer需要使用整个数据集来训练它的模型,引入了额外的时间成本。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值