A Survey on Neural Network Interpretability(2021 Trans)

A Survey on Neural Network Interpretability----《神经网络可解释性调查》

摘要

  随着深度神经网络的巨大成功,人们也越来越担心它们的黑盒性质。可解释性问题影响了人们对深度学习系统的信任。它还与许多伦理问题有关,例如算法歧视。此外,可解释性是深度网络成为其他研究领域强大工具的理想属性,例如,药物发现和基因组学。在本次调查中,我们对神经网络可解释性研究进行了全面回顾。我们首先澄清可解释性的定义,因为它已在许多不同的上下文中使用。然后,我们阐述了可解释性的重要性,并提出了一个新的分类方法,沿着三个维度组织:参与的类型(被动和主动解释方法),解释的类型,以及重点(从局部到全局的可解释性)。这种分类法为相关文献中的论文分布提供了一个有意义的3D视图,因为其中的两个维度不是简单的分类,而是允许有序的子类别。最后,我们总结了现有的解释性评价方法,并在此基础上提出了可能的研究方向。

引言

  近年来,深度神经网络(dnn)在计算机视觉[2]、[3]、语音识别[4]、自然语言处理[5]等领域取得了巨大的成功,而最新的应用则出现在这些研究中[7]-[9]。他们不仅击败了许多以前的机器学习技术(例如,决策树,支持向量机),而且在某些现实世界的任务[4],[10]上实现了最先进的性能。由 DNN 支持的产品现已被数十亿人使用,例如面部和语音识别。DNN 也已成为许多科学领域的强大工具,例如医学 [11]、生物信息学 [12]、[13] 和天文学 [14],这些领域通常涉及大量数据。
  然而,深度学习仍然有一些明显的缺点。作为一个具有数百万个自由参数的非常复杂的模型(例如,AlexNet [2],6200 万个),DNN 经常被发现表现出意想不到的行为。例如,即使一个网络可以获得最先进的性能,并且似乎在物体识别任务上表现得很好,Szegedy等人[15]找到了一种方法,通过对输入图像施加某种不可察觉的变化,可以任意改变网络的预测。这种修改后的输入称为“对抗例子”。Nguyen等人[16]展示了另一种产生完全无法识别的图像(例如,看起来像白噪声)的方法,然而,DNN以99.99%的置信度将其识别为特定的对象。这些观察结果表明,尽管DNN可以在许多任务中获得卓越的表现,但它们的潜在机制可能与人类的机制非常不同,而且还没有被很好地理解。

A、可解释性的定义

  为了打开深层网络的黑匣子,许多研究者开始关注模型的可解释性。虽然已在各种文件中探讨了这一主题,但尚未就可解释性的定义达成明确的共识。之前的大部分作品都忽略了澄清问题,将其保留为“一看就知道”。如果我们仔细观察,就会发现可解释性的定义和动机通常是不同的,甚至是不一致的。
  之前对可解释性的一个定义是,在术语“解释”本身仍然难以理解的情况下,用人类[18]可理解的术语提供解释的能力。在回顾了之前的文献之后,我们在[18]的基础上对“解释”和“可理解的术语”做了进一步的澄清。
  可解释性是用可理解的语言向人类提供解释的能力。 其中,(1)理想情况下,解释应该是符合逻辑的决策规则(if-then规则),或者可以转换成符合逻辑的规则。然而,人们通常不要求以规则的形式明确地解释(但只要求一些可以用来构造解释的关键元素)。(2)易于理解的术语应该来自与任务相关的领域知识(或根据任务的常识)。
  我们的定义为可解释性研究提供了新的视角:(1)我们强调解释的形式而不是特定的解释者。毕竟,解释是用某种“语言”来表达的,无论是自然语言、逻辑规则还是其他东西。最近,人们强烈倾向于解释语言尽可能接近逻辑[19]。在实践中,人们并不总是需要一个完整的“句子”,它允许各种解释(规则、显着性掩码等)。这是对现有文献中的研究方法进行分类的一个重要角度。(2)领域知识是构建解释的基本单元。由于深度学习已经显示出其处理原始形式数据的能力,因此人们很难用其原始输入表示来解释模型。有了更多的领域知识,我们就可以得到更多可理解的表示,这些表示可以由领域专家进行评估。表1列出了不同任务中常用的几种表示。
  我们注意到一些研究区分了interpretability和explainability(或understandability、comprehensibility、transparency、human-simulatability等[17]、[23])。在本文中,我们不强调这些术语之间的细微差别。具体来说,我们专注于(深度)神经网络(很少是循环神经网络)的可解释性,其目的是提供对其内部工作原理和输入输出映射的解释。还有一些关于生成对抗网络(GAN)的可解释性研究。然而,作为一种生成模型,它与用作判别模型的常见神经网络略有不同。对于这个主题,我们希望读者参考最新的作品[24]-[29],其中许多作品与本文的“hidden semantics”部分(见第二节)有相似的观点,试图解释隐藏神经元或潜在空间的含义。
  根据我们的定义,Linux 操作系统的源代码是可解释的,尽管它对于开发人员来说可能会令人不知所措。深度决策树或高维线性模型(在可解释的输入表示之上)也是可解释的。有人可能会说它们是不可模拟的[17](即人类能够在短时间内在他/她的脑海中模拟模型从输入到输出的处理过程)。然而,我们声称它们仍然是可以解释的。
  除了上述(训练有素的神经网络)可解释性的限制范围外,还有一个更广泛的理解一般神经网络方法的领域,这是本文无法涵盖的。例如,DNN的经验成功给理论家提出了许多未解决的问题[30]。DNN 架构 [31]、[32] 的优点(或归纳偏差)是什么?DNN 的损失面/临界点 [33]-[36] 有哪些特性?为什么 DNN 仅通过简单的正则化就能很好地泛化 [37]-[39]?DNN 的鲁棒性/稳定性如何[40]-[45]?还有关于如何生成对抗性示例 [46]、[47] 和检测对抗性输入 [48] 的研究。

B、可解释性的重要性

  许多论文[17]、[18]、[49]已经强调了可解释性的必要性,强调缺乏可解释性可能有害的情况。然而,缺乏对此类论证的清晰组织的阐述。我们将可解释性重要性的论点归纳为三类。
  1)高可靠性要求:尽管深度网络在一些相对较大的测试集上表现出了良好的性能,但实际环境仍然要复杂得多。由于一些意外的失败是不可避免的,我们需要一些方法来确保我们仍然在控制中。深度神经网络不提供这样的选择。在实践中,它们经常被观察到在某些情况下会出现意想不到的性能下降,更不用说来自敌对示例[50]、[51]的潜在攻击了。
  可解释性并不总是需要的,但对于一些需要高度可靠的预测系统来说很重要,因为错误可能会导致灾难性结果(例如,人员生命、重大经济损失)。可解释性可以使潜在的故障更容易检测(借助领域知识),避免严重后果。此外,它可以帮助工程师查明根本原因并提供相应的解决方案。可解释性并不会使模型更可靠或其性能更好,但它是构建高度可靠系统的重要组成部分。
  2)伦理和法律要求: 第一个要求是避免算法歧视。由于机器学习技术的性质,经过训练的深度神经网络可能会继承训练集中的偏差,这有时很难注意到。当 DNN 在我们的日常生活中使用时,例如抵押贷款资格、信用和保险风险评估,会存在公平性问题。
  深度神经网络也已用于新药发现和设计[52]。计算药物设计领域由传统的机器学习方法(如随机森林和广义相加模型)主导,部分原因是当时它们的高效学习算法,也因为领域化学解释是可能的。新药要获得监管机构(如食品和药物管理局)的批准,也需要可解释性。除了临床试验的结果,通常还需要支持这些结果的生物学机制。医疗设备也是如此。
  可解释性的另一个法律要求是“解释权”[53]。根据《欧盟通用数据保护条例》(GDPR)[54]第22条,人们有权不受到对其产生法律效力或类似重大影响的自动决策的约束。数据控制者应保障数据所有者获得人为干预、表达观点和对决定提出异议的权利。如果我们不知道网络如何做出决定,就无法确保这些权利。
  3)科学用法:深度神经网络正在成为科学研究领域的强大工具,这些领域的数据可能具有复杂的内在模式(例如基因组学[55]、天文学[14]、物理学[56]甚至社会科学[57])。“科学”一词源自拉丁语“scientia”,意思是“知识”。当深度网络达到比旧模型更好的性能时,它们一定发现了一些未知的“知识”。可解释性是揭示它的一种方式。

C. 相关工作和贡献

  已经有人尝试总结神经网络可解释性的技术。然而,它们大多数只提供基本的分类或枚举,没有明确的分类法。Lipton [17] 指出,可解释性一词并没有明确的定义,并且在不同的研究中通常具有不同的含义。然后,他对可解释性研究中的需求(如信任、因果关系、公平决策等)和方法(事后解释)进行了简单的分类。Doshi-Velez和Kim[18]对可解释性的定义和评价进行了讨论,启发我们制定更严格的定义,并在此基础上对现有的方法进行分类。Montavon等人[58]将解释的定义限定为特征重要性(在其他地方也称为解释向量),并回顾了通过网络解释已学习概念和个体预测的技术。它们的目的不是提供一个全面的概述,只是包括一些有代表性的方法。Gilpin等人[59]将方法分为三类:解释数据处理、解释数据表示和解释生成网络。在这种分类下,线性代理模型方法和规则提取方法同样被视为代理方法,而没有注意到它们之间有很多差异(前者是局部方法,而后者通常是全局方法,并且它们产生的解释不同,我们将请参阅我们的分类法)。Guidotti等人[49]考虑了所有的黑箱模型(包括树集合、支持向量机等),并给出了一个基于四个维度(可解释性问题的类型、解释器的类型、黑箱模型的类型、数据的类型)的细粒度分类。然而,他们将决策树、决策规则、显着性掩模、敏感性分析、激活最大化等视为解释器。在我们看来,有些是某种类型的解释,有些是用于产生解释的方法。Zhang和Zhu[60]回顾了在计算机视觉领域中理解网络中间层表示或使用可解释表示学习网络的方法。
  本调查有以下贡献:(1)在参考文献[18]的基础上,我们进一步向可解释性的定义迈进了一步。在这个定义中,我们强调解释的类型(或格式)(例如,规则形式,包括决策树和决策规则集)。这是我们提出的分类法中的一个重要维度。以前的论文通常将现有方法组织成各种孤立的(在很大程度上)解释器(例如决策树、决策规则、特征重要性、显着性图等)。(2)我们分析了可解释性的真正需求,并将其总结为三组:可解释性作为系统的重要组成部分,应该具有高度可靠性;道德或法律要求;并且可解释性提供增强相关科学领域知识的工具。相比之下,之前的一项调查[49]仅通过提供黑盒模型可能存在危险的几种案例来显示可解释性的重要性。(3)我们提出了一种新的分类法,包括三个维度(被动与主动方法、解释格式以及局部-半局部-全局可解释性)。请注意,尽管以前的文献中已经讨论了分类学的许多成分,但它们要么是在完全不同的上下文中提到的,要么是相互交织的。据我们所知,我们的分类法提供了现有方法最全面、最清晰的分类。
  我们的分类组织的三个自由度允许一个示意图的3D视图,说明了在深层网络可解释性方面的各种尝试是如何相关的。它还通过填补可解释性研究中的一些空白,为可能的未来工作提供了建议(参见图2)。
在这里插入图片描述

分类方法

  我们提出了一种具有三个维度的新分类法(见图 1):(1)被动与主动方法维度,(2)产生的解释的类型/格式,以及(3)分别从局部到全局的可解释性维度。 第一个维度是分类的,有两个可能的值:被动解释和主动可解释性干预。它根据是否需要改变网络架构或优化过程对现有方法进行划分。被动解释过程从经过训练的网络开始,所有权重均已从训练集中学习。此后,这些方法尝试提取逻辑规则或提取一些可理解的模式。而主动方法则需要在训练前进行一些改变,如引入额外的网络结构或修改训练过程。这些修改使网络变得更加可解释(例如,更像一个决策树)。最常见的是,此类主动干预以正则化条款的形式出现。
在这里插入图片描述
  与以前的调查不同,其他两个维度允许序数值。例如,前面提出的解释器[49]的维度类型产生了诸如决策树、决策规则、特征重要性、敏感性分析等子类别。然而,这些预先认可的解释器之间并没有明确的联系(决策树和特征重要性之间的关系是什么)。相反,我们的第二个维度是解释的类型/格式。通过检查不同方法产生的各种解释,我们可以观察到它们的明确程度的差异。逻辑规则提供了最清晰和明确的解释,而其他类型的解释可能是隐含的。例如,显著性映射本身只是某个输入的掩码。通过观察显著性图,人们构建了一种解释:“模型之所以做出这种预测,是因为它聚焦于(输入的)这个高度有影响力的部分和那个部分”。希望这些部分对应于一些领域可理解的概念。严格来说,隐含的解释本身并不是完整的解释,需要进一步的人类解释,而这通常是人们在看到它们时自动完成的。我们在这里认识到四种主要的解释类型,逻辑规则、隐藏语义、归因和举例解释,并按解释能力递减的顺序排列。在之前的文献中也有类似的讨论,例如,Samek等人[61]提供了一个关于“解释类型”的简短小节(包括解释习得表征、解释个体预测等)。然而,它与我们将在下一段中介绍的可解释性研究的另一个独立维度混合在一起。最近的一项调查[62]遵循同样的哲学,将显著性映射和概念归因[63]视为不同类型的解释,而我们认为它们是相同的,只是在下面的维度上有所不同。
  最后一个维度,从局部可解释性到全局可解释性(相对于输入空间),在最近的论文中变得非常常见(例如,[18]、[49]、[58]、[64]),其中全局可解释性意味着能够理解模型的整体决策逻辑,局部可解释性侧重于单个预测的解释。然而,在我们提出的维度中,全局可解释性和局部可解释性(即半局部可解释性)之间存在过渡而不是硬性划分。局部解释通常利用目标输入的信息(例如,它的特征值,它的梯度)。但全局解释试图推广到尽可能广泛的输入(例如,规则学习中的顺序覆盖、特征重要性排名的边际贡献)。这种观点也得到了几种半局部解释方法[65]、[66]的存在的支持。也有人尝试以自下而上的方式将局部解释融合到全局解释中[19],[67],[68]。为了帮助理解后两个维度,表II列出了分类法下不同子类别产生的典型解释的示例。
在这里插入图片描述

对训练有素的网络进行被动解读

  现有的网络解释方法大多是被动方法。他们试图理解已经训练好的网络。我们现在根据产生的解释类型(即第二维)来介绍这些方法。

A. 被动,规则作为解释

  逻辑规则被普遍认为是可解释的,并且有着悠久的研究历史。因此,规则提取是解释神经网络的一种有吸引力的方法。在大多数情况下,规则提取方法提供全局解释,因为它们仅从目标模型中提取单个规则集或决策树。只有几种方法可以产生(半)局部规则形式解释,我们将在下面介绍(第 III-A1 节),接下来是全局方法(第 III-A2 节)。另一件需要注意的事情是,虽然规则和决策树(及其提取方法)可能有很大不同,但我们在这里没有明确区分它们,因为它们提供了类似的解释(决策树可以扁平化为决策规则集)。规则的基本形式是:如果是 P,则 Q。其中P被称为前因式,Q被称为后因式,在我们的上下文中语境中,后因式是网络的预测(例如,类别标签)。P 通常是几个输入特征的条件组合。对于复杂模型,解释规则可以是其他形式,如命题规则、一阶规则或模糊规则。
  (1) 被动,规则作为解释,(半)局部: 根据我们的分类法,此类方法侧重于经过训练的神经网络和特定输入(或一小组输入),并产生逻辑规则作为解释。Dhurandhar等人[69]通过找出应该最低限度且充分存在的特征和应该最低限度且必然不存在的特征来构建局部规则解释。简而言之,解释采用这种形式:“如果一个输入x被归为y类,这是因为特征fi,…, fk存在而特征fm,…, fp不存在”。这是通过寻找小的稀疏扰动来实现的,这些扰动足以确保自身的相同预测(或者如果应用于目标输入,将改变预测)。一种类似的方法是反事实解释[124]。通常,我们询问神经网络根据哪些特征(值)做出 c 类的预测。然而,Goyal等人[78]试图在输入图像上找到最小编辑量,这可以导致不同的预测类c’。换句话说,他们会问:“输入图像中的哪个区域使预测成为c类,而不是c’类”。Kanamori等[79]引入了分布感知的反事实解释,要求上述“编辑”遵循经验数据分布,而不是任意。
  Wang等人[77]提出了另一种局部可解释性方法,该方法为每个输入识别网络的关键数据路由路径(CDRPs)。在卷积神经网络中,每个卷积核都会生成一个特征图,该特征图将作为通道输入到下一层。Wang等人[77]将每一层上的每个输出通道与一个门(非负权)相关联,门表示该通道的关键程度。然后优化这些门权值,这样当它们与相应的输出通道相乘时,网络仍然可以做出与原始网络相同的预测(在给定的输入上)。重要的是,鼓励权重稀疏(大多数接近于零)。然后可以通过首先识别关键节点(即与正门相关的中间卷积核)来识别每个输入的 CDRP。我们可以探索关键节点并为其赋予意义,使关键路径成为局部解释。然而,由于原始论文没有进一步讨论人类可能无法理解的 CDRP 表示,因此它仍然更多地是一种激活模式,而不是真正的解释。
  我们还可以提取涵盖一组输入而不是单个输入的规则。Ribeiro等人[65]提出了锚点,这些锚点是(半)局部足够精确的if-then规则。换句话说,如果一个规则适用于一组类似的例子,它们的预测(几乎)总是相同的。它类似于(实际上是基于)归因方法 LIME,我们将在第 III-C 节中介绍它。然而,它们在生成的解释方面是不同的(LIME 生成单个示例的归因)。Wang等人[80]试图找到一个可解释的部分替换(一个规则集)来覆盖输入空间的某个子集。根据子集的大小,这种替换可以在不需要或低成本的情况下完成。
  (2)被动,规则解释,全局: 大多数时候,我们希望对网络有某种形式的整体解释,而不是它在单个点上的局部行为。我们再次将这些方法分为两组。一些规则提取方法利用网络特定的信息,如网络结构或学习的权重。这些方法在以前的文献中被称为分解方法[125]。其他方法将网络视为黑盒,仅使用它来生成经典规则学习算法的训练示例。它们被称为教学方法。
  a) 分解方法: 分解方法通过观察网络中的连接来生成规则。由于其中许多方法是在深度学习时代之前开发的,因此它们大多是为经典的全连接前馈网络设计的。考虑到全连接网络的单层设置(只有一个输出神经元),其中,σ为激活函数(通常为sigmoid, σ(x) = 1/(1+e−x)), w为可训练权值,x为输入向量,b为偏差项。规则提取的核心是搜索属性xi的某些值(或范围)的组合,使y接近1[82]。这只有在处理小型网络时才容易处理,因为随着属性的数量和每个属性的可能值的增加,搜索空间的大小很快就会增长到天文数字。假设我们有 n 个布尔属性 xi 作为输入,并且每个属性可以是 true 或 false 或不存在,则需要搜索 O(3n) 个组合。因此我们需要一些搜索策略。
  最早的方法之一是KT算法[81]。KT算法首先根据输入属性对应权值的符号,将输入属性分为post -att和negative -att两组。假设激活函数是 sigmoid,所有神经元都被布尔化为 true(如果足够接近 1)或 false(接近 0)。然后,如果组合本身可以使 y 为真(大于预定义的阈值 β,而不考虑 neg-atts),则选择 pos-atts 的所有组合,最后,它考虑了neg-atts。对于上面的每个 pos-atts 组合,它找到 neg-atts 的组合(例如,{x2, x5}),当不存在时,根据所选 pos-atts 和未选择的 neg-atts 计算的输出仍然为 true。类似地,该算法可以生成类别 0 的规则(首先搜索 neg-atts,然后添加 pos-atts)。为了应用于多层网络的情况,它首先逐层生成规则,然后重写规则以忽略隐藏的神经元。
  Towell 和 Shavlik [82] 关注另一种“M-of-N”风格的规则。这种规则不强调输入属性的个体重要性,其形式为:如果这 N 个表达式中的 M 个为真,则 Q。该算法有两个显着的特点。第一个是链接(权重)聚类,并为它们重新分配聚类内的平均权重。另一个特点是网络简化(消除不重要的簇)和重新训练。与子集搜索算法的指数复杂度相比,M-of-N方法由于其特殊的规则形式而近似三次。
  NeuroRule [83]引入了提取规则的三步过程:(1)训练网络并剪枝,(2)离散(聚类)隐藏神经元的激活值,(3)逐层提取规则并重写(与之前的方法类似)。NeuroLinear[84]对NeuroRule方法做了一点改变,让神经网络可以有连续的输入。Andrews等人[126]和Tickle等人[127]对1998年以前的规则提取技术进行了很好的总结。
  b)教学方法: 通过将神经网络视为黑盒,教学方法(或两者的混合)直接从网络生成的示例中学习规则。它本质上是一个传统的规则学习或决策树学习问题。对于规则集学习,我们有顺序覆盖框架(即一个一个学习规则)。对于决策树,有许多经典的算法,如CART[128]和C4.5[129]。决策树提取(从神经网络)的示例工作可以在参考文献[89]-[91]中找到。
  Odajima等[85]遵循了NeuroLinear的框架,但使用了贪婪形式的顺序覆盖算法来提取规则。据研究,它能够提取更简洁和精确的规则。Gyan方法[86]比提取命题规则更进一步。通过上述方法获得命题规则后,Gyan 使用最小泛化(LGG [130])方法从中生成一阶逻辑规则。还有一些方法试图从经过训练的神经网络中提取模糊逻辑[87]、[88]、[131]。两者的主要区别在于引入了语言词的隶属函数。
  上述大多数“规则作为解释,全局”方法都是在神经网络研究的早期阶段开发的,通常只应用于相对较小的数据集(例如 Iris 数据集、来自 UCI 机器学习存储库的 Wine 数据集)。然而,随着神经网络在最近的应用中越来越深入,单棵决策树不太可能准确地逼近深度网络的行为。我们可以看到,最近的“规则即解释”方法转向了局部或半局部可解释性[80],[118]。

B. 被动的、隐藏的语义作为解释

  第二种典型的解释是隐藏的神经元或层的含义。类似于神经科学中的祖母细胞假设,这是出于将抽象概念与一些隐藏神经元的激活关联的愿望。以动物分类为例,一些神经元可能对动物的头部有很高的反应,而另一些神经元可能会寻找身体、脚或其他部位。根据定义,这种解释提供了全局可解释性。
  (1) 被动的、隐藏的语义作为解释,全局: 现有的隐藏语义解释方法主要集中在计算机视觉领域。最直接的方式是展示神经元在“寻找”什么,即可视化。可视化的关键是找到一个能够最大化某个神经元、通道或层的激活的代表性输入,这通常称为激活最大化[93]。这是一个优化问题,其搜索空间是潜在的巨大输入(样本)空间。在实践中,虽然我们可以通过优化找到最大激活输入图像,但这可能是不现实且无法解释的。这种情况可以通过一些正则化技术或先验来帮助解决。
  我们现在概述这些技术。Erhan 等人[93]提出了激活最大化的框架 (尽管它被用在像深度置信网络这样的无监督深度模型中)。Simonyan等人[71]首次将激活最大化应用于有监督的深度卷积网络(用于ImageNet分类)它通过最大化一个类的分数(在softmax之前)来寻找代表性图像。Ω是图像的L2范数。后来,人们意识到高频噪声是一个主要的麻烦,使可视化无法识别[94],[98]。为了获得自然和有用的可视化,找到好的先验或正则化器Ω成为这种方法的核心任务。Yosinski等人[96]也包括了其他术语,即剪切那些值小或对激活不太重要的像素。Nguyen等人[97]建议使用生成模型学习的自然图像先验,而不是使用许多手工制作的正则化器(图像先验)。由于生成对抗网络(Generative Adversarial Networks, GAN)[132]最近在生成高分辨率逼真图像方面表现出极大的能力[133],[134],利用生成对抗网络的生成模型似乎是一个不错的选择。对于一个好的总结和许多令人印象深刻的可视化,我们建议读者参考[98]。当应用于某些任务时,研究人员可以从这些视觉解释中获得一些见解。例如,Minematsu等人[135],[136]检查了用于(在视频流中)变化检测的DNN的第一层和最后一层的行为,这可能暗示了一种新的背景建模策略的可能性。
  除了可视化,也有一些工作试图找到内核和视觉概念之间的联系(例如,材料,特定的对象)。Bau等人[21](网络剖析)收集了一个新的数据集 Broden,它为每个概念 c 和每个输入图像 x 提供了像素级二进制掩码 Lc(x)。同样,Fong 和 Vedaldi [99] 通过用多个内核的组合构造 M 来研究概念在多个内核上的嵌入。他们的实验表明,通常需要多个内核来编码一个概念,而内核嵌入是概念的更好表示。
  Dalvi等人[100]也分析了网络中单个单元/神经元对NLP任务的意义。他们在网络的隐藏神经元和输出之间建立了一个线性模型。然后根据线性模型权重的显著性对神经元进行排序。对于那些排名靠前的神经元来说,它们的语言意义是通过将它们在输入上的显著性图可视化来研究的,或者是通过找到它们被激活的最靠前的单词来研究的。

C. 被动,属性作为解释

  属性是根据输入特征对输出(预测)的影响来将功劳或归咎于输入特征。解释将是一个实值向量,它通过分数的符号和幅度来指示特征重要性[58]。对于具有有意义特征的简单模型(例如线性模型),我们也许能够为每个特征全局分配一个分数。当涉及更复杂的网络和输入(例如图像)时,很难说某个像素总是对输出具有类似的贡献。因此,许多方法都是局部属性。
  (1) 被动,属性作为解释,(半)局部: 与规则提取方法的分解与教学划分类似,属性方法也可以分为两组:梯度相关方法和模型不可知方法。
  (a) 梯度相关和反向传播方法: 使用梯度来解释各个分类决策是一个自然的想法,因为梯度代表损失函数最快增长的“方向”和速率。还可以相对于某个输出类别来计算梯度,例如,沿着哪个“方向”,扰动将使输入更可能/更不可能被预测为猫/狗。Baehrens等人[137]用它来解释高斯过程分类(GPC)、k-NN和SVM的预测。对于特殊情况,线性模型(或一般加性模型)中的特征系数已经是偏导数,换句话说,就是(全局)属性。因此人们可以直接知道这些特征如何影响预测,这也是线性模型通常被认为是可解释的一个重要原因。虽然普通梯度、离散梯度和路径集成梯度已经用于属性,但其他一些方法并不使用链式规则计算真正的梯度,而只是反向传播属性信号(例如,在反向传播时对每一层进行额外的归一化)。我们现在详细介绍这些方法。
在计算机视觉中,属性通常表示为显著性映射,即与输入图像大小相同的掩模。在文献[71]中,显著性图是由梯度(即所有通道上的偏导数的最大绝对值)生成的。这种显著性映射可以轻松获得,因为它们只需要一个反向传播通道。他们还表明,该方法与之前提出的反卷积网法[72]等效,但ReLU层梯度的计算存在差异。引导反向传播[102]结合了上述两种方法。它只考虑在通过ReLU层反向传播时具有正误差信号的梯度(前一种方法)。还有一种变体Guided Grad-CAM(梯度加权类激活映射)[103],它首先在最后的卷积层上计算一个粗粒度的属性映射(相对于某个类),然后将其与得到的属性图相乘。
  然而,梯度本身可能具有误导性。DeepLIFT[112]指出了这个问题,并强调了除了要解释的目标输入之外,还要有一个参考输入的重要性。参考输入是一种默认或“中性”输入,在不同的任务中会有所不同(例如,空白图像或零向量)。实际上,正如Sundararajan等人[114]指出的那样,DeepLIFT正在尝试计算“离散梯度”,而不是(瞬时)梯度。另一种类似的“离散梯度”方法是LRP113,不同的是如何计算离散梯度。这种观点也在文献[139]中提出,LRP和DeepLIFT本质上是计算修正梯度函数的反向传播。然而,离散梯度也有其缺点。由于链式法则不适用于离散梯度,DeepLIFT和LRP采用了修正后的反向传播形式。这使得它们的属性特定于网络的实现,换句话说,即使是两个功能等效的网络,其属性也可能不同(具体例子见参考文献[114]附录B)。人们提出了综合梯度[114]来解决这个问题。
  尽管我们有很多方法来生成合理的显着性图,但显着性图和真实的解释之间仍然存在很小的差距。甚至存在属性方法的对抗性示例,这些方法可以产生感知上无法区分的输入,导致相同的预测标签,但属性图却截然不同[140]-[142]。研究人员提出了显着图应该成为有效解释的几个属性。Sundararajan等人114引入了灵敏度和实现不变性两个需求。灵敏度要求的提出主要是因为(局部)梯度饱和问题(导致零梯度/属性)。实现不变性意味着两个功能等效的网络(考虑到 DNN 的过度参数化设置,它们可以具有不同的学习参数)应该具有相同的属性。Kindermans等人[143]引入了输入不变性。它需要属性方法来反映模型对于输入转换的不变性。例如,带有偏差项的模型可以很容易地处理输入(像素值)的恒定位移。显然,(普通的)梯度属性方法满足这种输入不变性。对于离散梯度法和其他使用参考点的方法,它们取决于参考点的选择。Adebayo等人[75]采用了不同的方法。他们发现,边缘检测器还可以产生与显著性掩模相似的掩模,并突出显示输入的一些特征。但边缘检测器与网络或训练数据无关。因此,他们提出了两个测试来验证属性方法是否会失败(1)如果用随机噪声替换网络的权值,或者(2)如果训练数据的标签被打乱。属性方法应该失败,否则它意味着该方法不能反映训练过的网络或训练数据(换句话说,它只是一个类似于边缘检测器的东西)。
  (b)模型不可知论属性 :LIME[20]是一种众所周知的方法,它可以提供局部属性解释(如果选择线性模型作为所谓的可解释组件)。MAPLE[101]是一种类似的方法,使用局部线性模型作为解释。不同之处在于,它将局部性定义为数据点落入代理随机森林中同一叶节点的频率(适合经过训练的网络)。
  敏感性分析也可以用来评估特征的重要性。具体来说,特征的重要性可以通过模型输出随着特征(或多个特征)的变化而变化的程度来衡量。有不同类型的变化,例如扰动、遮挡[72]、[108]等[109]。Chen等人[110]提出了一种基于实例的特征选择器E,它将一个输入x映射到一个条件分布P(S | x),其中S是原始特征集的任意子集(具有一定大小)。所选择的特征可以用xS表示。然后它们的目标是最大化所选特征与输出变量Y之间的互信息。
  (2) 被动,属性作为解释,全局: 获得全局属性的一种自然方法是将从上述局部/半局部方法获得的单个属性组合起来。SpRAy[67]对个体属性进行聚类,总结出一些预测策略。MAME[68]是一种类似的方法,可以生成多级(局部到全局)解释树。Salman等人[116]提供了一种不同的方法,它利用了多个神经网络。每个网络都可以提供自己的局部属性,在此基础上执行集群。这些集群,直观上是多个模型的共识,可以提供更有力的解释。
  属性并不一定要将“信用”或“责任”归于原始输入或功能。Kim等人[63]提出了一种TCAV (quantitative Testing with Concept Activation Vectors)方法,可以计算出任何用户感兴趣的概念的模型灵敏度。通过首先收集一些有和没有目标概念的例子(例如,动物身上有条纹),这个概念可以用超平面的法向量来表示,这些正/负的例子(有/没有条纹的动物图片)在一个隐藏层中分开。如果(输入x的)隐藏层表示沿概念向量移动了非常小的一步,这个概念的得分可以作为(平均)输出灵敏度来计算。这是一种全局可解释性方法,因为它解释了一个概念如何一般地影响输出。除了由人类手动挑选之外,这些概念还可以通过对输入片段进行聚类来自动发现[115]。

D. 被动,举例说明

  当要求对新输入进行解释时,这些方法会返回其他示例来支持或反例。一种基本直觉是找到模型认为最相似的示例(就潜在表示而言)[146]。这是局部可解释性,但我们也可以在一个类或更多类中寻找一组代表性样本,以提供全局可解释性。[147] 中提出了一种通用方法。还有其他方法,例如测量一个训练示例对目标输入的模型预测有多大影响。这里我们只关注与深度神经网络相关的工作。1)被动,举例说明,局部:Koh 和Liang [73] 提供了一种有趣的方法来评估训练示例对未见过的测试示例的模型预测的影响程度。首先用近似方法计算模型参数随训练实例变化的变化情况。此外,它对测试点损失的影响可以计算出来。通过检查最具影响力(积极或消极)的训练示例(对于测试示例),我们可以对模型预测有一些见解。Yeh等人[117]表明,logit (softmax之前的神经元)可以分解为pre-logit层中训练点激活的线性组合。训练点的系数表明与这些点的相似性是兴奋性还是抑制性。上述两种方法都提供了局部解释。

训练过程中主动解释性干预

  除了被动地从经过训练的网络中寻找人类可理解的模式外,研究者还试图在网络训练过程中施加可解释性限制,即我们分类法中的主动解释方法。一个流行的想法是在损失函数中加入一个特殊的正则化项Ω(θ),也称为“可解释性损失”(θ收集网络的所有权值)。

A. 主动,规则作为解释(半局部或全局)

  Wu等人[119]提出了树正则化,它偏爱那些可以用浅层决策树很好地逼近的模型。树正则化使全局可解释性成为可能,因为它迫使一个网络很容易被决策树近似。后来,作者还提出了区域树正则化,该方法采用半局部的方法来实现这一点[118]。

B. 主动,隐藏语义(全局)

  另一种方法旨在使卷积神经网络更好地学习隐藏语义。看了上面提到的特征可视化技术和一些实证研究[21]、[148],CNN被认为已经学习了层次结构中的一些低级到高级的表示。但即使高层已经学习了一些对象级概念(例如头、脚),这些概念通常也会相互纠缠在一起。换句话说,高层滤波器可以包含不同图案的混合。Zhang等人[70]提出了一个损失,鼓励高层滤波器代表一个单一的概念。

C. 主动,属性作为解释

  与树正则化有助于实现更好的全局可解释性(决策树)类似,ExpO [120]添加了可解释性正则化器以提高局部属性的质量。这种正则化要求模型具有保真度(高保真度)和稳定的局部属性。DAPr [121](深度属性先验)考虑了附加信息(例如,关于特征重要性的粗略先验)。先验将与主预测模型(作为正则化器)联合训练,并使模型具有与先验相似的属性。除了对单个输入(输入空间中的局部)进行归因之外,Dual-net[122]还被提出来决定群体特征的重要性,即为输入群体共同寻找“最佳”特征子集。在该方法中,选择器网络用于生成最佳特征子集,而算子网络则根据该特征集进行预测。这两个网络是联合训练的。训练后,选择器网络可用于对特征重要性进行排序。

D. 主动,原型解释(全局)

  Li等人[76]将原型层整合到网络中(具体来说,是一个自动编码器)。这个网络就像一个原型分类器,根据(编码的)输入和学习到的原型之间的接近程度进行预测。除了交叉熵损失和(自动编码器)重构误差,它们还包括两个可解释正则化术语,鼓励每个原型至少与一个编码输入相似,反之亦然。训练好网络后,这些原型就可以很自然地用作解释。Chen等人[123]在常规CNN中添加了原型层,而不是自动编码器。这个原型层包含被鼓励类似于输入部分的原型。当需要解释时,网络可以为输入图像的不同部分分别提供几个原型。

可解释性评价

  一般来说,可解释性很难客观评估,因为最终任务可能会有很大的分歧,可能需要来自专家[58]的领域知识。Doshi-Velez和Kim[18]提出了三种评估方法:基于应用、基于人、基于功能。第一个是衡量可解释性在多大程度上帮助最终任务(例如,更好地识别错误或减少歧视)。以人为本的方法是,例如,直接让人们通过人主体实验来评估解释的质量(例如,让用户在几个解释中选择哪个解释的质量最高)。基于功能的方法找到解释质量的代理(例如稀疏性)。最后一种方法不需要昂贵的人体实验,但如何正确确定代理是一个挑战。
  在我们的分类法中,解释分为不同的类型。虽然在不同类型的解释之间很难比较其可解释性,但已为此目的提出了一些测量方法。对于逻辑规则和决策树,通常以提取的规则模型的大小作为判断标准[85]、[119]、127。严格地说,这些标准更多地衡量的是解释是否可以有效地解释。隐藏语义方法产生对网络中某些隐藏单元的解释。网络剖析[21]通过计算隐藏单元与某些概念的匹配度来量化其可解释性。对于隐藏单元的可视化方法,目前还没有一个很好的度量方法。对于属性方法,它们的解释是显著性映射/掩模(或根据特定任务的特征重要性等)。Samek等人[149]在输入图像被噪声部分掩盖的情况下,按照从显著到不显著的顺序,通过性能退化来评估显著性映射。在[75]中提出了类似的评估方法,Hooker等人[150]建议使用一个固定的无信息值而不是噪声作为掩模,评估再训练模型的性能退化。Samek等人也使用熵作为另一种度量,认为好的显著性映射关注相关区域,不包含太多的无关信息和噪声。Montavon等人[58]希望解释函数(将输入映射到显著性图)是连续的/平滑的,这意味着当看到类似的输入时,解释(显著性图)不应该有太多的变化。

讨论

  被动(事后)方法已经被广泛研究,因为它们可以以一种相对直接的方式应用于大多数现有的网络。人们可以选择利用网络内部信息(如连接权值、梯度)的方法,这些方法通常更有效(例如,见第III-C1a段)。另外,也有不需要模型体系结构的模型无关方法,它们通常计算某个输入特征的边际效应。但这种普遍性也是被动方法的一个缺点,特别是因为没有简单的方法来整合特定的领域知识/先验。主动(可解释性干预)方法提出了如何优化网络以获得可解释性的思想。这个网络可以被优化,可以很容易地被一个决策树所适应,或者具有首选的特征属性,更好地适应一个目标任务。然而,另一方面,这种主动干预需要网络和解释方法之间的兼容性。
  至于第二个维度,解释的格式,逻辑规则是最清楚的(不需要进一步的人的解释)。然而,我们应该谨慎地控制解释的复杂性(例如,决策树的深度),否则解释在实践中是没有用的。隐藏语义本质上解释了网络的一个子部分,大多数工作是在计算机视觉领域开发的。属性非常适合解释单个的输入。但通常很难从属性(例如,与逻辑规则相比)中获得对网络的总体理解。通过提供一个例子来解释是最低(最隐含的)解释力。
  对于最后一个维度,当我们更关注每一个预测(例如,信用或保险风险评估)时,局部解释更有用。对于一些研究领域,如基因组学和天文学,全局解释更受青睐,因为它们可能揭示一些普遍的“知识”。但是,请注意,并没有将局部解释性和全局解释性分开。借助解释融合方法(如MAME),我们可以得到从局部到全局的多级解释。

结论

  在这项调查中,我们对神经网络的可解释性进行了全面的回顾。首先,我们讨论了可解释性的定义,并强调了解释格式和领域知识/表示的重要性。具体来说,常见的解释有四种类型:逻辑规则、隐藏语义、归因和举例解释。然后,通过回顾以往的文献,我们总结了可解释性重要的三个本质原因:高可靠性系统的要求、伦理/法律要求和科学知识发现。之后,我们为现有的网络解释方法引入了一种新的分类法。它沿着三个维度发展:被动与主动、解释类型以及全局与局部可解释性。最后两个维度不是纯粹的分类维度,而是具有序数值(例如,半局部)。这是我们第一次对可解释性研究进行连贯的概述,而不是许多孤立的问题和方法。
  从新分类学的角度来看,可解释性研究仍然存在几个可能的研究方向。首先,主动的可解释性干预方法尚未得到充分探索。对被动方法的一些分析还表明,神经网络不一定学习人类可以轻松解释的表示。因此,如何主动使网络可解释而不损害其性能仍然是一个悬而未决的问题。在调查过程中,我们看到越来越多的近期工作填补了这一空白。
  另一个重要的研究方向可能是如何更好地将领域知识融入网络中。正如我们在本文中所看到的,可解释性就是提供解释。解释建立在可理解的术语(或概念)之上,这些术语(或概念)可以特定于目标任务。我们已经有很多方法来构建不同类型的解释,但解释中使用的与领域相关的术语仍然非常简单。如果我们可以使用与领域/任务更相关的术语,我们可以获得更丰富的解释和更好的可解释性。

  • 5
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值