Explainability in Graph Neural Networks: A Taxonomic Survey阅读笔记
Explainability in Graph Neural Networks: A Taxonomic Survey阅读笔记
摘要
深度学习方法的性能正在不断的提高,但是目前的局限是它们不易于解释。目前在图像和文本上的可解释性取得了重大进展,但是目前GNN的可解释性还没有统一的处理办法。这篇文章为GNN可解释性方法提供了一个统一的分类视角
介绍
文章介绍了一些解释文本和图片的深度学习模型,有提供依赖输入的解释(input-dependent explanations)以及独立输入的解释(input-independent explanations)两种模型
依赖输入的解释可以有研究输入特征的重要程度或者对深度学习模型的一般方式的高水平理解,例如可以通过研究梯度或权值来分析输入特征和预测之间的敏感性
还可以通过掩盖不同的输入特征来观察和监测结果的变化从而识别重要的特征
独立输入的解释可以有研究使某一类别预测得分最大化的输入模式以及研究隐藏神经元的含义
文章主要的贡献如下:
- 对现存的深度的图模型可解释技术提供一个系统和综合的视角进行阐述
- 对现存的GNN解释方法提出了一个新的分类法
- 对每一种GNN解释方法比较详细的介绍,包括方法,优点,缺点与其他方法的区别
- 总结了GNN解释任务中常用的数据集和评价指标
Explainability和Interpretability的区别:
当模型本身能够为它的预测提供人类可以理解的解释,那么它就是Interpretable的
当模型是个黑箱,但它的预测能够被事后解释技术所理解,那么它就是explainable的
现存挑战
1.图不是网格状的数据,意味着没有局部信息。图也包含重要的拓扑信息,表现为特征矩阵和邻接矩阵。
- 邻接矩阵不能进行反向传播优化
- 使用掩码会破坏离散性的性质
- 图节点和边之间的相互作用也比较重要
2.图结构信息比较重要,但是目前的方法都没有考虑图结构信息
3.图形数据不够直观,理解起来比较困难
分类方法阐述
目前提出的方法来解释深度图模型的预测,关注于图形模型的不同方面,提供了不同的视图来理解这些模型,其中一些是哪些输入边更重要,哪些输入节点更重要,哪个节点的特性更重要,什么样的图形模型将最大化对某个类的预测
不同的技术分为两大类,实例级方法和模型级方法
实例级方法
实例级方法为每个输入图提供依赖于输入的解释。给定一个输入图,这些方法通过识别预测模型的重要输入特征来解释深度模型。根据重要性分数的获取方式,我们将这些方法分为四个不同的分支:基于梯度/特征的方法,基于扰动的方法,分解方法,代理方法
- 基于梯度/特征的方法:使用梯度或特征值来表示不同输入特征的重要性
- 基于扰动的方法:监测不同扰动的预测变化
- 分解方法:首先将预测分数,如预测概率,分解为最后一个隐藏层的神经元。然后他们一层一层地传播这些分数,直到输入空间,并使用分解的分数作为重要性分数。
- 代理方法:基于代理的方法首先从给定示例的邻居中抽取一个数据集。接下来,这些方法拟合一个简单和可解释的模型,如决策树,到采样数据集。然后用替代模型的解释来解释最初的预测
模型级方法
模型级方法解释图神经网络而不涉及任何特定的输入示例,独立输入的解释是高水平的,可以解释图神经网络而不考虑任何特定的输入。独立输入的解释是高水平的,可以解释一般的行为。现存的模型级方法主要是使用生成方法
两种方法对比
实例级方法提供了特定于实例的解释,而模型级方法提供了高级的见解和通用的理解
为了验证和信任深度图模型,它需要人工监督来检查解释,对于实例级的方法,需要更多的人工监督,因为专家需要探索对不同输入图的解释。对于模型级的方法,由于解释是高水平的,较少涉及到人为监督。
实例级方法的解释是基于真实的输入实例,因此它们更容易理解。然而,对模型级方法的解释可能难以被人类理解,因为所获得的图模式甚至可能不存在于现实世界中。
实例级方法
基于梯度和特征的方法
是最直接的解决方案
基于梯度的方法通过反向传播计算目标预测相对于输入特征的梯度。同时基于特征的方法通过插值将隐藏的特征映射到输入空间,以衡量重要性得分。
一般来说,梯度或特征值越大,重要性就越高
梯度和特征值都与模型的参数高度相关,这样的解释可以反映模型中包含的信息
目前有的方法包括SA、Guided BP、CAM、Grad-CAM,这些方法的关键区别在于梯度反向传播的过程以及不同的隐藏特征图如何组合
方法
SA:
SA采用梯度的平方值作为不同输入的重要性得分,这个可以直接通过反向传播来计算,与网络的训练相同,不过目标不是输入特征而是模型参数,输入的特征可以是图节点,图的边或者图的节点特征。它假设较高的绝对梯度值表示相应的输入特征越重要。虽然简单有效,但是也很有局限
SA只能反映输入和输出之间的敏感度,不能准确地显示其重要性。此外,它还存在饱和问题。在模型的饱和区域,模型输出相对于任何输入变化变化最小,梯度几乎不能反映输入的贡献。
Guided BP
与SA相似,不过Guided BP认为负梯度很难解释,所以Guided BP只反向传播正梯度。Guided BP与SA具有相同的限制
CAM
CAM将最后一层中的节点特征映射到输入空间,以识别重要的节点。它要求GNN模型使用一个全局平均池化(GAP)层和一个全连接(FC)层作为最终的分类器。具体来说,CAM采用最终的节点嵌入,并通过加权求和结合不同的特征图,获得输入节点的重要性得分。权值是从与目标预测连接的最终全连接(FC)层中获得的。
局限性:首先,CAM对GNN结构有特殊的要求,这限制了其应用和泛化。其次,它假设最终的节点嵌入可以反映输入的重要性,这是启发式的,可能不是真的。此外,它只能解释图的分类模型,不能直接应用于节点分类任务。
Grad-CAM
通过消除GAP层的约束,将CAM扩展到一般的图分类模型。
没有使用GAP输出和FC输出之间的权值,而是使用梯度作为权值来组合不同的特征图。
首先计算目标预测相对于最终节点嵌入的梯度。然后对这些梯度进行平均,以获得每个特征图的权重。
基于启发式的假设,并不能解释节点分类模型。
基于扰动的方法
潜在的动机是研究与不同的输入扰动相关的输出变化。直观地说,当保留了重要的输入信息时,预测应该与原始预测相似。
现有的方法学习一个生成器来生成一个mask来选择重要的输入像素来解释深度图像模型。然而,这种方法不能直接应用于图模型。
为了解释深度图模型,提出了几种基于扰动的方法:GNNExplainer,PGExplainer,ZORRO,GraphMASK,Causal Screening,SubgraphX
这些共享一个相似的框架
首先,给定输入图,以不同的方式获得掩模来表示重要的输入特征。请注意,根据解释任务,会生成不同的掩码,如节点掩码、边缘掩码和节点特征掩码。然后,将生成的掩码与输入图结合,得到一个包含重要输入信息的新图。最后,将新的图输入训练后的gnn,对掩码进行评估并更新掩码生成算法。
掩码捕获的重要特征越高传递关键的语义含义,从而使得新的预测与原始的预测基本相同。
这些方法的主要区别在于三个地方:mask生成算法,mask类型和目标函数
掩码有三种不同的类型:
- 用于节点特征的soft masks
- 用于边的discrete masks
- 用于节点的approximated masks
soft masks包含[0,1]之间的连续值,mask生成算法可以通过反向传播直接更新。然而,soft masks受到“引入证据”问题的影响,即掩模中的任何非零或非一值都可能会给输入图引入新的语义意义或新的噪声,从而影响解释结果。
discrete masks只包含离散值0和1,由于没有引入新的数值,可以避免“引入证据”的问题。然而,discrete masks总是涉及不可微的操作,如采样。解决这个问题的一个方法是策略梯度算法
最近的研究提出了重新参数化技术,比如Gumbel-Softmax估计和稀疏松弛来近似discrete mask,输出掩码不是严格离散的,而是提供了一个很好的近似,这不仅支持反向传播,还缓解了"introduced evidence"问题
方法
GNNExplainer
学习边和节点特征的soft masks,通过优化mask来解释预测。进行随机初始化mask,然后将其作为可训练变量来处理。然后GNNExplainer通过元素级乘法将mask和原始图结合在一起。通过最大化原始图的预测和新获得的图预测之间的互信息来对mask进行优化。但是即使采用各种不同的正则化条件得到的mask依然是soft masks。因此这个模型无法避免introduced evidence的问题
PGExplainer
学习了边和特征的近似离散mask,训练一个参数化的mask预测器来预测边缘mask。给定一个输入图,它首先通过连接相应的节点嵌入来获得每条边的嵌入。然后预测器使用边缘嵌入来预测每条边被选择的概率,这可以作为重要性得分来处理。接下来,通过重新参数化技巧对近似的离散mask进行采样。最后,通过最大化原始预测和新预测之间的互信息来训练mask预测器。虽然获得的mask也不是严格离散的,但是很大程度上能够缓解“证据引入”的问题。最后,由于数据集的所有边共享一个predictor,对于一个训练好的GNN模型能有一个全局的理解
GraphMask
一种事后分析方法,解释每个GNN层中边的重要性。与PGExplainer类似,它训练分类器来预测是否可以在不影响原始预测的情况下删除边缘。不同的是,GraphMask为每个GNN层获得一个边缘掩码,而PGExplainer只聚焦于输入层。并且为了避免图结构的变化,被丢弃的边可以用learnable baseline connections替换。这些链接有于节点嵌入具有相同维度的向量。然后有两个方法用来近似离散mask,binary concrete distribution和reparameterization trick。分类器通过最小化一个散度项来对整个数据集进行训练,它度量了网络预测之间的差异。于PGExplainer相似,也能很大程度上缓解introduced evidence问题。并且对训练好的GNN有一个全局的理解
ZORRO
使用离散掩模来识别重要的输入节点和节点特征。给定一个输入图,利用贪婪算法逐步选择节点或节点特征,得到节点和特征的离散掩模。对于每一步,ZORRO选择一个节点或一个fidelity score最高的节点特征。目标函数和fidelity score通过固定所选的节点/特征,并用随机噪声值替换其他节点,来衡量新的预测如何与模型的原始预测相匹配。因为没有训练过程,避免了离散的mask不可微。使用hard masks,没有introduced evidence的问题。但是贪心的masks算法可能会导致局部最优解释。并且这些解释缺乏全局的理解
Causal Screening
研究输入图中不同边的因果归因作为解释,在解释子图中标记了edge mask。因果属性的核心思想是在当前解释子图中添加一条边时来学习预测的变化,称为因果效应。在每一步中为了获取edge mask,并且选择因果效应最高的边添加到解释子图中。具体来说,它使用个体因果效应(ICE)来选择边,它通过在子图中添加不同的边来测量原始图的预测和解释子图之间互信息的差异。与ZORRO相似的时,这种方法也是贪心算法,不需要训练,没有“introduced evidence”的问题,缺乏全局理解,容易陷入局部最优。
SubgraphX
探索了深度图模型的子图级解释。采用蒙特卡罗树搜索(MCTS)算法,通过节点剪枝来有效地探索不同的子图,并从搜索树的叶子中选择最重要的子图作为预测的解释。此外,它利用Shapley作为MCTS的奖励来衡量子图的重要性,并通过只考虑消息传递范围内的交互,提出了一种有效的Shapley近似方法。虽然SubgraphX并不是直接研究掩模,但MCTS算法可以理解为掩模生成算法,其节点剪枝动作可以看作是不同的掩模来获得子图。此外,还可以将Shapley值作为更新掩码生成算法的目标函数。与其他基于扰动的方法相比,其得到的子图更易于人理解,更适用于图数据。然而,由于需要使用MCTS算法来探索不同的子图,因此计算成本更高。
代理方法
基本思想是使用一个简单且可解释的替代模型来近似于输入示例的邻近区域的复杂深度模型的预测。这些方法假设输入示例中相邻区域的关系不那么复杂,并且可以通过一个更简单的代理模型很好地捕获。然后利用可解释的替代模型的解释来解释原始的预测。由于图数据是离散的,并且包含拓扑信息。那么就不清楚如何定义输入图的邻近区域,以及哪些可解释的代理模型是合适的。
最近提出了一些代理方法包括GraphLime,RelEx和PGM-Explainer。为了解释对给定输入图的预测,他们首先获得一个包含多个相邻数据对象及其预测的局部数据集。然后,他们拟合了一个可解释的模型来学习本地数据集。最后,将可解释模型的解释作为对输入图的原始模型的解释。虽然这些方法具有相似的高级思想,但关键的区别在于两个方面:如何获取本地数据集和要使用什么可解释的代理模型。
代理方法的示意图:
代理方法的一般管道。给定一个输入图及其预测,他们首先采样一个本地数据集来表示目标数据周围的关系。然后应用不同的代理方法来拟合局部数据集。请注意,代理模型通常是简单和可解释的ML模型。最后,对替代模型的解释可以看作是对原始预测的解释。
方法
GraphLime
扩展了深度图模型的LIME算法并且学习了不同节点特征对节点分类任务的重要性,给定输入图中的一个目标节点,GraphLime将其N跳相邻节点及其预测作为其局部数据集,N是GNN的层数,然后利用非线性替代模型Hilbert-Schmidt Independence Criterion (HSIC) Lasso来拟合这个数据集。HSIC Lasso是一种基于内核的特征选择算法。最后,基于HSIC Lasso中不同特征的权重,可以选择重要的特征来解释HSIC Lasso的预测。这些被选择的特征被认为是对原始GNN预测的解释。
但是,GraphLime只能提供对节点特征的解释,而忽略了图的结构,如节点和边,这对图的数据更为重要。此外,GraphLime被提出用来解释节点分类预测,但不能直接应用于图分类模型。
RelEx
结合代理方法和基于扰动的方法的思想研究了节点分类模型的可解释性。给定一个目标节点及其计算图(n跳邻居),首先从计算图中随机抽样连接子图,并将这些子图输入训练后的gnn,得到一个局部数据集。具体来说,从目标节点开始,以BFS的方式随机选择相邻的节点。接下来,它使用一个GCN模型作为替代模型来拟合局部数据集。与LIME和GraphLime不同,RelEx中的代理模型是不可解释的。经过训练后,它进一步应用上述基于扰动的方法,如生成soft masks或Gumbel-Softmax掩模,来解释预测。
与GraphLime相比,它可以提供关于重要节点的解释。然而,它包含了多个近似步骤,如使用代理模型来近似局部关系,以及使用mask来近似边缘的重要性,从而使解释不那么有说服力和可靠。此外,由于基于扰动的方法可以直接用来解释原始的深度图模型,因此无需建立另一个不可解释的深度模型作为替代模型来解释。它也不知道它如何应用于图形分类任务。
PGM-Explainer
构建了一个概率图形模型,为gnn提供实例级的解释。通过随机节点特征扰动得到局部数据集。具体来说,给定一个输入图,每次PGM-Explainer随机扰动计算图中几个随机节点的节点特征。然后对于计算图中的任何节点,PGM-Explainer记录一个随机变量,表明其特征是否被扰动及其对GNN预测的影响。通过多次重复这样的过程,可以得到一个局部数据集。
PGM-Explainer的本地数据集包含节点变量,而不是不同的相邻图样本。然后通过生长收缩(Grow-Shrink GS)算法选择顶部的因变量来减小局部数据集的大小。最后,利用可解释贝叶斯网络对拟合局部数据集进行分析,并解释原始GNN模型的预测。
PGM-Explainer可以提供关于图节点的解释,但忽略了包含重要的图拓扑信息的图边。此外,与GraphLime和RelEx不同,PGM-解释器可以用来解释节点分类和图分类任务。
分解方法
分解方法是通过将原始模型预测分解为几个术语来衡量输入特征的重要性。然后将这些项作为相应输入特征的重要性得分。这些方法直接研究模型参数,以揭示输入空间中的特征与输出预测之间的关系。conservative property方法要求分解后的项的和等于原始的预测分数。然而,由于图包含节点、边和节点特征,因此将这些方法直接应用于图域具有挑战性。
目前的分解方法有Layer-wise Relevance Propagation(LRP)、Excitation BP和GNN-LRP。这些算法的直觉是建立分数分解规则,将预测分数分配到输入空间。这些方法以反向传播的方式逐层分配预测分数,直到输入层。从输出层开始,将模型的预测作为初始目标得分。然后将分数进行分解,并按照分解规则分配到前一层的神经元中。通过重复这些过程直到输入空间,他们可以获得节点特征的重要性分数,这些分数可以组合来表示边缘重要性、节点重要性和行走重要性。所有这些算法都忽略了深度图模型中的激活函数。这些方法之间的主要区别是分数分解规则、分解的观点和解释的目标。
方法
LRP
将原始的LRP算法扩展到深度图模型。它将输出的预测分数分解为不同的节点重要性分数。基于隐藏特征和权值开发了分数分解规则。对于一个目标神经元,它的分数被表示为与前一层神经元分数的线性近似。直观地看,对目标神经元激活贡献较高的神经元接收到的目标神经元得分的比例更大。为了满足conservative property。在事后解释阶段将邻接矩阵作为GNN模型的一部分,在分数分布过程中忽略它;否则,相邻矩阵也会得到分解的分数,从而使conservative property无效。无效。由于LRP是直接基于模型参数开发的,因此其解释结果更加可靠。然而,它只能研究不同节点的重要性,不能应用于图结构,如子图和图游走。
Excitation BP
与LRP算法有相似的想法,但它是从总概率定律的角度发展起来的。它定义了当前层中一个神经元的概率等于它输出到下一层中所有连接神经元的总概率。分数分解规则可以看作是将目标概率分解为几个条件概率项。与LRP算法有相同的优缺点
GNN-LRP
研究了不同图游走的重要性。提供了一个高阶泰勒分解的视图来发展分数分解规则。从理论上证明了泰勒分解(在根0处)只包含T阶项,其中T是训练后的gnn中的层数,每个项对应一个T步图行走。那么这些项可以看作是图行走的重要性分数。由于不可能直接计算泰勒展开给出的高阶导数,GNN-LRP也遵循反向传播过程来近似高阶项。请注意,GNN-LRP中的反向传播计算类似于LRP算法。然而,GNN-LRP没有将分数分配到节点或边,而是将分数分配到不同的图游走,它记录了从一层层的分布过程的路径。这些路径被认为是不同的行走,并从它们对应的节点中获得分数。虽然GNN-LRP有坚实的理论背景,但其计算中的近似可能不准确,并且计算的复杂度高。
模型级方法
模型级的方法旨在提供一般的见解和高级的理解来解释深度图模型。具体来说,他们研究了什么输入图模式可以导致特定的GNN行为。比如最大化一个目标预测。输入优化是获取图像分类器模型级解释的一个流行方向。然而,由于离散图拓扑信息,它不能直接应用于图模型,因此在模型水平上解释GNN更具挑战性。因此,它仍然是一个重要但研究较少的课题。据我们所知,唯一现有的解释图神经网络的模型级方法是XGNN
XGNN
提出通过图形生成来解释GNN。它不是直接优化输入图,而是训练一个图生成器,以便生成的图可以最大化目标图的预测。然后将生成的图作为目标预测的解释,并期望包含有区别的图模式。在XGNN中,图的生成被表示为一个强化学习问题。对于每一步,生成器将预测如何向当前图中添加一条边。然后将生成的图输入训练的GNN,通过策略梯度训练生成器。XGNN是生成模型级解释的通用框架,因此可以应用任何合适的图生成算法。此外,这些解释是一般性的,并提供了对训练过的GNN的全局理解。然而,所提出的XGNN仅证明了其在解释图分类模型方面的有效性,而XGNN是否可以应用于节点分类任务尚不清楚,这是未来研究中需要探索的一个重要方向。
综合比较分析
综合分析了不同的解释方法:
- Type表示解释的类型
- Learning表示解释的技术是否涉及到任何学习过程。一般来说,使用学习过程的解释方法往往能更好地捕捉输入和预测之间的关系。然而,当学习过程中引入额外的黑盒时,它们就变得不那么可靠了。
- Task意味着每个方法可以应用于什么任务。NC表示节点分类,GC表示图形分类
- Target显示了每种解释的目标,比如显示节点重要性,边缘重要性或者图行走的重要性。N表示节点,E表示边,NF表示节点特征,Walk表示图游走
- Black-box表示解释技术是否将训练过的GNN视为一个黑盒,只用输入输出解释模型的,意味着训练的GNN仍然是一个黑盒。需要使用GNN的参数和隐藏表示来解释模型的,就不是将GNN当做一个黑盒
- Flow解释训练的GNN的计算流程,是后向传播还是前向传播
- Design表示这种解释技术是对图形数据有特定的设计,还是只是从图像域中扩展出来的
评估
数据集
选择合适的数据集来评估不同的解释技术是至关重要的。由于人类的评估是必要的,所以解释需要被人类理解。因此,我们希望数据能够直观且易于可视化。此外,良好的数据集应该包含数据示例和标签之间的人类可以理解的理由,以便专家可以验证这些理由是否被解释算法识别。为了评估不同的解释技术,通常使用几种类型的数据集,包括合成数据(synthetic data)、情绪图数据(sentiment graph data)和分子数据(molecular data)
合成数据
人工建立了几个合成数据集来评估解释技术。数据示例和数据标签被很好的定义。下面是一些常见的数据集
- BA-shapes
- BA-community
- Tree-cycle
- Tree-Grids
- BA-2Motifs
在这些数据集中,所有节点特征都被初始化为全1的向量。经过训练的GNN模型被期望捕获图结构来进行预测。然后根据构建每个数据集的规则,对解释结果进行分析。例如,在BA-2Motifs数据集中,我们可以研究解释是否可以捕获图形结构。然而,合成数据集只包含图形和标签之间的简单关系,这可能不足以进行全面的评估。
文本数据
文本数据可以是图形解释任务的正确选择,因为它们由具有可理解的语义意义的单词和短语组成。然后,解释的结果就可以很容易地由人类来评估。因此,我们基于文本情绪分析数据构建了三个情绪图数据集,包括SST2 、SST5 和Twitter数据集。
对于每个文本序列,我们将其转换为一个图,每个节点代表一个单词,而边反映不同单词之间的关系。
以下是生成的情绪图的一个例子
生成的图是有向的,但边缘标签被忽略,因为大多数GNN不能捕获边缘标签信息。接下来,我们使用BERT来获得单词嵌入,并将这些嵌入作为图节点的初始嵌入。
分子数据
分子数据也广泛应用于解释任务,包括MUTAG,BBBP和Tox21。数据集中的每个图对应一个分子,节点表示原子,边表示化学键。分子图的标签通常由分子的化学功能或性质决定。
评价指标
Fidelity(忠诚度)
解释应该忠实于模型。它们应该识别出对模型很重要的输入特征,所以提出了Fidelity。直观地说,如果通过解释技术识别出的重要输入特征(节点/边/节点特征)对模型具有区别性,那么当这些特征被删除时,预测应该会发生显著变化。所以,Fidelity定义为经过mask重要输入特征后在原始预测和新预测之间准确率的差别
\(G_i\)表示第i个输入图,\(f(\cdot)\)表示GNN分类器,图的预测结果表示\(\bar{y_i}=argmaxf(G_i)\)。
解释可以被认为是一个重要性映射\(m_i\),其中每个元素都是0或1,以表示相应的特征是否重要。ZORRO和Causal Screening是生成离散的masks,可以直接用来作重要性映射。GNNExplainer和GraphLime重要性得分是连续的值。然后通过归一化和阈值处理或排序得到重要性映射。最终预测精度的Fidelity+score可以通过以下式子来计算:
N表示图的个数,i表示图的序号,\(y_i\)表示图的原始预测。\(1-m_i\)表示移除重要输入特征的complementary mask。\(\bar{y_i}^{1-m_i}\)表示将新图放入训练好的GNN函数\(f(\cdot)\) 中得到的预测。Fidelity+score研究了预测准确率的变化
还有一种是Fidelity+probability
\(G_i^{1-m_i}\)表示基于complementary mask\(1-m_i\)保持图\(G_i\)的特征而得到的新图。Fidelity+prob检测到预测概率的变化,对于这两个度量,得到的数值越大,就表示有更好的解释结果。从而识别出更多的具有区别性的特征。
Fidelity+度量通过去除重要的节点/边/节点特征来研究预测的变化。相反,Fidelity-通过保留重要的输入特征和去除不重要的特征来研究预测的变化。直观地说,重要的特征应该包含鉴别信息,这样它们就会导致类似的预测,即使原始的预测甚至不重要的特征也会被删除。Fidelity-度量的计算如下
\(G_i^m\)表示了基于解释\(m_i\)并且保存图\(G_i\)的重要特征的新图,\(\bar{y_i}^{m_i}\)表示了新的预测。较低的值表示删除了不重要的信息,以便解释结果更好。
Sparsity(稀疏性)
好的解释应该是稀疏的,这意味着它们应该捕获最重要的输入特征,而忽略那些无关的输入特征。它测量了由解释方法选择的重要特征的比例。给定一个图\(G_i\)和重要性映射\(m_i\),Sparsity指标的计算方法为
\(Sparsity=\frac{1}{N}\sum_{i=1}^N(1-\frac{|m_i|}{|M_i|})\)
其中\(|m_i|\)表示\(m_i\)中重要的输入特征(节点/边/节点特征)的数量,\(|M_i|\)表示在\(G_i\)中所有特征的数量,值越高说明越稀疏,捕获了最重要的输入信息
Stability(稳定性)
良好的解释应该是稳定的。直观地说,当在不影响预测的情况下对输入应用了小的变化时,解释应该保持相似。
最近提出的稳定性度量测量了一种解释方法是否是稳定的。给定一个输入图\(G_i\),其解释\(m_i\)被视为基本事实。然后对输入图\(G_i\)进行小变化的扰动,如附加新的节点/边,得到一个新的图\(G_i\)。对于原始图和新图都需要预测,然后得到了对两个图的解释\(m_i\)和\(\bar{m_i}\)来计算稳定性得分。较低的值表明解释技术对噪声信息更稳定和鲁棒。此外,由于图表示是敏感的,选择适当数量的扰动可能具有挑战性。
Accuracy(准确度)
Accuracy度量是根据合成数据集提出的,在合成数据集中,尽管不知道GNN是否以我们预期的方式做出预测,但构建这些数据集的规则,如graph motifs,可以用作基本事实的合理近似。然后,对于任何输入图,我们都可以将它的解释与这些基本事实进行比较。比较常用的指标有general accuracy,F1-score,ROC-AUC评分。较高的值表示解释与事实相接近,可以被认为是更好的结果。此外,由于缺乏基本事实,精度度量不能应用于真实世界的数据集。
最后,应该结合不同的度量标准来评估解释结果。例如Sparsity与Fidelity+高度相关。当解释的结果是soft values时,Sparsity有阈值决定。直观地说,较大的阈值倾向于识别较少的重要特征,从而增加Sparsity,降低Fidelity+分数。因此在比较不同的解释方法时,可以保证在相同水平的Sparsity分数下比较Fidelity分数。
此外,还有其他几个指标来评估解释结果,如对比度和一致性。对比度得分是基于一个强烈的假设,即对不同类别的解释应该是显著不同的,这忽略了不同类别之间的共同模式。同时,一致性度量假设高性能的模型体系结构应该有一致的解释。然而,不同的模型可能会捕获不同的关系,即使它们实现了具有竞争力的性能,特别是对于大规模和复杂的数据集。因此,我们认为这些指标可能对评估解释结果不够公平,而且它们没有被列为推荐的指标。