PGM-Explainer建立了一个概率图模型,为GNN提供实例级解释。

  • 论文标题:PGM-Explainer: Probabilistic Graphical Model Explanations for Graph Neural Networks

  • 论文地址:2010.05788.pdf (arxiv.org)

实验

本节提供了我们的实验,比较了PGM-Explainer与现有GNN解释方法的性能,包括GNNExplainer[24]和我们将Shapley Additive Explainer(Shap)[17]扩展到GNN的实现。我们选择Shap来表示基于梯度的方法有两个原因。首先,GNN基于梯度的方法的源代码要么不可用,要么仅限于特定的模型/应用。其次,Shap是一种加性特征属性方法,统一了传统神经网络的解释方法[17]。通过PGM-Explainer和Shap的比较,我们的目的是证明解释特征的线性无关假设在解释GNN预测时的缺陷。我们还证明了基于香草梯度的解释方法和GNNExplainer可以被认为是附录A中的附加特征属性方法。我们的源代码可以在[34]中找到。

数据集和实验设置

合成节点分类任务

考虑了附录I中详细说明的六个合成数据集。我们重用了[24]的源代码,因为我们希望在相同的设置下评估解释器。在这些数据集中,每个输入图都是一个基图和一组主题的组合。基于每个节点在该主题中的角色来确定该主题上每个节点的地面真实标签。由于标签是根据母题的结构确定的,因此对节点角色预测的解释是同一母题中的节点。因此,这些数据集中的地面真相解释是与目标处于同一主题的节点。由于基本事实的解释是清楚的,我们使用准确度作为评估标准。

现实世界中的节点分类任务

我们使用可信加权符号网络比特币-阿尔法和比特币-场外交易数据集[35]。这是由3,783个和5,881个账户组成的网络,分别在名为比特币-Alpha和比特币-OTC的平台上交易比特币。在每个网络中,成员对其他成员的评分范围从-10(完全不信任)到+10(完全信任)。对于每个账户,它的功能都会对账户的外发信息进行编码,比如该账户的平均得票率或该账户的归一化票数。由于每个账户都是由许多其他账户评级的,我们并不确切知道GNN利用哪些邻居的信息来做出预测,所以我们基于精度而不是准确性来评估解释。解释中未对目标进行评级或对目标进行负面评级的任何帐户都将被视为\“错误帐户\”。解释的精确度是通过将\“没有错误的帐户\”除以该解释中的帐户总数来计算的。

现实世界中的图形分类任务

我们使用MNIST SuperPixel-Graph数据集[36],其每个样本是对应于手写数字MNIST数据集[37]中的图像样本的图。在这个数据集中,原始的MNIST图像被转换成使用超像素的图形,超像素代表图像中均匀强度的小区域。在给定的图形中,每个节点代表原始图像中的一个超像素,而节点的特征是超像素的强度和位置(例如参见图5(A))。由于本实验无法获得基本事实的解释,因此我们采用人-主观测试来评估讲解员的结果。

模型和实验设置

对于每个数据集,我们使用ADAM优化器[38]为相应的任务训练单个GNN。对于合成数据集、比特币-Alpha数据集和BitcoinOTC数据集,我们使用了[24]提供的GNN模型。所有型号都有3个图层,参数数量在1102到1548之间。培训/验证/测试的比例为80/10/10%。这些模型经过1000次训练,学习率为0.001。对于MNIST SuperPixel-Graph数据集,数据集分为55K/5K/10K。我们使用由[36]实现的图卷积网络(GCN)模型[5],因为它在训练中的普及性和有效性。该模型有101365个参数,在历元188收敛,学习率在10−3和10−4之间自动选择。模型的测试集精度和pgm-explainer用来生成解释的样本数量如表1所示。

关于合成数据集的结果

表2显示了不同解释器生成的解释的准确性。这里为输入图的主题中的所有节点生成解释。所有解释器都被编程为将最重要的节点返回到目标预测,其中k是目标主题中的节点数。对于GNNExplainer,我们使用[39]中提供的默认实现获得的精度低于相应论文[24]中报告的精度。也许我们无法通过[39]获得在[24]中使用的GNNExplainer的调谐参数。为了保持一致,我们将GNNExplainer的原始结果用黑色报告,我们的结果用蓝色报告。

可以看出,PGM-Explainer的性能优于其他解释方法,特别是在数据集2和6上。我们专门设计了数据集6,这样就不能通过只知道一个邻居来确定节点在模体上的角色。此外,对于一些节点,例如图1B中的节点D和EIN,只能使用几乎所有的2跳邻居来确定角色。为了在此数据集上实现高预测性能,GNN必须以非线性方式集成网络功能。具体地说,只观测红色节点A并不能给GNN提供关于目标的太多信息。知道两个蓝色节点B和C中的一个也不能为预测提供太多信息。然而,关于所有这三个节点的知识可以帮助GNN充分确定E的角色。要忠实地解释GNN,解释者必须能够捕捉到这些非线性行为。

真实数据集上的结果

表3报告了信任加权符号网络数据集上每个解释器在解释中的节点精度。在这里,我们测试了每个解释器在3、4和5个解释中的总帐号数。我们的结果表明,在这些实验中,PGM-Explainer的准确率明显高于其他方法。

图5中报告了MNIST SuperPixel-Graph数据集的一些示例解释。这里我们没有GNNExplainer的结果,因为[36]为该数据集实现的测试模型不支持分数邻接矩阵的输入,而分数邻接矩阵是GNNExplainer工作的要求。相反,我们将PGM-Explainer与针对GNN和Grad的Shap扩展进行了比较,后者是一种简单的梯度方法。在本实验中,我们不限制PGM-Explainer返回的节点数。事实上,只要节点在目标变量的马尔可夫范围内,它们就会被包括在内。由此,我们可以得到包含2个、3个或4个节点的解释,平均为3.08。由于其他方法没有同等的特征选择机制,我们将它们的返回节点数设置为3。在梯度算法中,根据GNN损失函数相对于相关节点特征的和梯度来选择前3个节点。

在我们的人-主观测试中,我们随机选择了48个GNN预测正确的图表。然后使用PGM-Explainer、Shap和Grad生成相应的解释。图5(A)中提供了这些解释的两个示例,其中在解释中返回的节点在红色框中突出显示。10名最终用户被要求根据他们对突出显示的节点对GNN预测的重要性的看法,为每种解释打分(从0到10分)。从图5(B)中分数的分布来看,PGM-Explainer的解释被评价得比其他方法高得多。这意味着PGM-Explainer生成的解释中的节点更直观,对GNN的预测可能比其他解释方法更重要。

图5:在MNIST SuperPixel-Graph数据集上由不同解释人员生成的大量解释的示例和分布。(A)每个解释中返回的节点以红色方框突出显示。(B)最终用户对解释的评分分布情况。红点和红条分别是平均值和中值。

总结

在本文中,我们提出了PGM-Explainer,这是一种以可解释的方式忠实地解释任何GNN的预测的解释方法。通过用图形模型近似目标预测,PGM-Explainer能够证明被解释特征对预测的非线性贡献。我们的实验不仅显示了PGMExplainer的高准确度和精确度,而且也暗示了PGM解释受到最终用户的青睐。虽然我们只采用贝叶斯网络作为可解释模型,但我们的PGM-Explainer公式支持对其他图形模型的探索,如马尔可夫网络和依赖网络。在未来的研究中,我们将分析不同的目标函数和结构学习方法对讲解员素质和运行时间的影响

本文提出了PGM-Explainer,它以一种可解释的方式解释了任何GNN模型的决策,涵盖了图形数据的一个关键方面–特征之间的非线性依赖关系。因此,本文的贡献是根本性的,并将对大量的应用产生更广泛的影响,特别是当许多复杂的GNN最近被提出并部署在各个领域时。本文将在可解释性、透明性和公平性方面为各种基于GNN的高影响力应用程序带来好处,包括社会网络分析、神经科学、团队科学管理、智能交通系统和关键基础设施,仅举几例。

PGM-Explainer相关推荐

  1. 概率图论PGM的D-Separation(D分离)

    为什么80%的码农都做不了架构师?>>>    本文大部分来自:http://www.zhujun.me/d-separation-separation-d.html 其中找了一些资 ...

  2. ZeroMQ接口函数之 :zmq_pgm – ØMQ 使用PGM 进行可靠的多路传输

    ZeroMQ API 目录 :http://www.cnblogs.com/fengbohello/p/4230135.html ----------------------------------- ...

  3. Algorithm之PGM之BNet:贝叶斯网络BNet的相关论文、过程原理、关键步骤等相关配图

    Algorithm之PGM之BNet:贝叶斯网络BNet的相关论文.过程原理.关键步骤等相关配图 目录 BNet的相关论文 BNet的过程原理 BNet的关键步骤 BNet的相关论文 更新-- BNe ...

  4. PPM / PGM / PBM 图像文件格式

    PPM / PGM / PBM 图像文件格式 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 说明:在进行图像压缩后传输,然后解压缩显示的过程中,通常会用到P ...

  5. MATLAB中将pgm图片二值化

    读取 pgm文件 L=imread('XXX.pgm') 二值化 logicalMap=imbinarize(L) 等比例缩放 map = binaryOccupancyMap(logicalMap, ...

  6. DCMTK:读取DICOM图像,并使用设置创建PGM位图

    DCMTK:读取DICOM图像,并使用设置创建PGM位图 读取DICOM图像,并使用设置创建PGM位图 读取DICOM图像,并使用设置创建PGM位图 #include "dcmtk/conf ...

  7. DCMTK:使用dcmimage 库将DICOM图像转换为PPM或PGM

    DCMTK:使用dcmimage库将DICOM图像转换为PPM或PGM 使用dcmimage库将DICOM图像转换为PPM或PGM 使用dcmimage库将DICOM图像转换为PPM或PGM #inc ...

  8. DCMTK:使用dcmimage库将DICOM图像转换为PPM或PGM

    DCMTK:使用dcmimage库将DICOM图像转换为PPM或PGM 使用dcmimage库将DICOM图像转换为PPM或PGM 使用dcmimage库将DICOM图像转换为PPM或PGM #inc ...

  9. PGM中置信传递、和—积算法

    PGM中置信传递.和-积算法讲的比较好的,简单容易理解.含有公式推导: https://blog.csdn.net/u011531010/article/details/53826431

  10. 机器学习数据挖掘笔记_25(PGM练习九:HMM用于分类)

    前言: 本次实验是用EM来学习HMM中的参数,并用学好了的HMM对一些kinect数据进行动作分类.实验内容请参考coursera课程:Probabilistic Graphical Models 中 ...

最新文章

  1. 为什么二级菜单会被挡住_武夷红茶为什么是二级茶?我们平时喝的红茶会不会被加了糖?...
  2. 成功解决Fatal error in launcher: Unable to create process using ‘“f:\program files\python\python36\pytho
  3. Java 解析XML的几种方法
  4. 奇妙的安全旅行之加密算法概述
  5. C++第一个综合项目
  6. myeclipse 快捷键(转载)
  7. Matrix67:漫话中文分词算法
  8. notesDocument类的HTTP URL属性 和note URL属性的区别
  9. 80ms 求解世上最难数独 —— DFS的灵活运用
  10. 番外4. Python OpenCV 中鼠标事件相关处理与常见问题解决方案
  11. 快速预警、高效疏通,ZBOX打造高速公路智慧通信站
  12. 读《男子为让孩子成为北京人执意找京籍女结婚(图)》有感——致北漂的XDJM
  13. 酷狗导致django8000端口占用
  14. 计算机广东大专院校排名2018,重磅!广东85所专科院校官方排名刚刚出炉,这所高职回归第一!...
  15. ESD静电保护二极管的优点有哪些?
  16. XPS文件转换为PDF不再愁!全新XPS/EPS文档处理神器Aspose.Page来啦!
  17. uniApp的基本教程
  18. 杰理之杰理之家,播歌声音小,杰理之家调EQ声音小【篇】
  19. AB报,开创网上免费看原版报纸的新模式!
  20. WIN10计算机不支持3D游戏怎么办,Win10系统玩游戏提示显卡不支持3d图形加速功能如何解决...

热门文章

  1. 你还记得大明湖畔的我吗?来自黑莓的呼喊
  2. 联通将推自有品牌手机沃Phone 基于Android
  3. Koo叔说Shader-描边效果
  4. 【云学习笔记】二、免费云服务器与免费域名组合打造自己的个人空间
  5. 《新说文解字》太极初成:道生一,一生二,二生三,三生万物
  6. mac下用mysql执行sql文件完整
  7. 即构SDK新增变声、立体声(3D环绕)、混响三大功能
  8. 股票学习-量柱和k线-第一天
  9. mysql localhost值_jdbc:mysql://localhost:3306/mysql这句话中localhost具体指什么的localhost?能修改么?在哪里配置的?...
  10. debian7修改密码