【读论文】A Survey on Neural Network Interpretability

目录

  • 摘要
    • 可解释性的定义
    • 可解释性的重要性
    • 相关工作
      • 本文贡献
  • 分类法
  • 被动解释
    • 被动,规则作为解释
      • 被动,规则作为解释,(半)局部
      • 被动,规则作为解释,全局

摘要

本文工作:

  1. 可解释性的定义
  2. 可解释性的重要性
  3. 新的分类法:三个维度进行分类:参与方式(主动/被动),解释类型,范围(局部/全局)

可解释性的定义

可解释性是用可理解的词汇(term)向一个人提供解释的能力。

理想情况下,解释应该是逻辑决策规则(如果-那么规则),或者可以转换为逻辑规则。然而,人们通常不要求解释明确地以规则形式出现(而只要求一些可以用来构建解释的关键元素)。

可理解的词汇(term)应该来自与任务相关的领域知识(或根据任务的常见知识)

本文的定义为可解释性研究提供了新的视角:

  1. 本文强调解释的形式,而不是特定的解释者。
  2. 领域知识是构建解释的基本单位。

可解释性的重要性

  1. 高性能要求:我们需要在复杂的真实场景(甚至对抗样本攻击)下保持DNN的行为可控。对要求高度可靠的系统来说,一个错误可能导致灾难性的结果。可解释性可以使潜在的故障更容易检测,帮助工程师找出根本原因,从而避免严重后果。
  2. 伦理和法律要求:训练好的DNN可能继承训练集中的bias。可解释性有助有避免算法歧视。为新药的设计提供领域解释。GDPR第22条要求解释权(对于会对其产生法律效力或类似重大影响的自动决定,人们有权不受其影响。数据控制者应保障数据所有者获得人工干预、表达观点和对决定提出异议的权利)。
  3. 科学用途:一些数据具有复杂的内在模式(基因组学、天文学、物理学、社会科学)当深度网络达到比旧模型更好的性能时,它们一定发现了一些未知的“知识”。可解释性是揭示它的一种方式

相关工作

现有工作大多只提供基本的分类或枚举,没有明确的分类法(taxonomy)。

Lipton[17]指出,可解释性这个术语并没有很好的定义,在不同的研究中往往有不同的含义。然后,他对可解释性研究中的需求(如信任、因果关系、公平决策等)和方法(事后解释)进行了简单的分类

Doshi-Velez和Kim[18]对可解释性的定义和评价进行了讨论,这启发我们制定更严格的定义,并在此基础上对现有的方法进行分类。

他们 的目的不在于提供全面的概述,而只是包括一些有代表性的方法。

吉尔平等[59]将这些方法分为三类:解释数据处理、解释数据表示和产生解释的网络。在这种分类下,线性代理模型方法和规则提取方法被同等地视为代理方法,而不会注意到它们之间的许多差异(前者是局部方法,而后者通常是全局方法,它们产生的解释是不同的,我们将在分类中看到它)。

Guidotti等[49]考虑了所有的黑箱模型(包括树集合、支持向量机等),并基于四个维度(可解释性问题的类型、解释器的类型、黑箱模型的类型和数据的类型)给出了细粒度的分类。但是,他们把决策树、决策规则、显著性掩模、敏感性分析、激活最大化等同等地作为解释者。在我们看来,其中有些是特定类型的解释,而有些是用来产生解释的方法

Zhang和Zhu[60]回顾了计算机视觉领域中理解网络中间层表示或学习计算机视觉领域具有可解释表示的网络的方法。

本文贡献

  • 在参考文献[18]的基础上进一步确定可解释性的定义。在这个定义中,我们强调解释的类型(或格式)(例如,规则形式,包括决策树和决策规则集)。这是我们提出的分类中的重要维度。以前的论文通常将现有的方法组织成各种孤立的(很大程度上)解释器(如决策树、决策规则、特征重要性、显著性图等)。
  • 我们分析可解释性的真实需求,把它们分成3组:可解释性作为一个需要可靠性的系统中的重要组件;道德或法律要求;和提供可解释性以增强相关科学领域中知识的工具。之前的调查[49]只通过提供黑箱模型可能是危险的几种情况,显示了可解释性的重要性。
  • 我们提出了一个新的分类法,包括三个维度(被动与主动方法、解释的格式,和局部-半局部-全局可解释性)。注意,尽管在以前的文献中已经讨论了该分类法的许多成分,但它们不是在完全不同的上下文中被提及,就是相互纠缠在一起。据我们所知,我们的分类法对现有方法进行了最全面、最清晰的分类。

分类法

【读论文】A Survey on Neural Network Interpretability_第1张图片
被动vs主动:第一个维度是绝对的(categorical,我觉得可以理解为离散的,与后面维度的序数或者semi相对),有两种可能的值:被动解释和主动解释性干预。根据是否需要改变网络结构或优化过程对现有方法进行了划分。被动解释过程从一个训练好的网络开始,所有的权重都已经从训练集中学习到了。然后,这些方法尝试提取或提取一些逻辑规则可以理解的模式。相比之下,主动的方法需要在训练前做一些改变,比如引入额外的网络结构或修改训练过程。这些修改鼓励网络变得更容易理解(例如,更像一个决策树)。这种积极的干预通常以正则项的形式出现。

解释的类型/格式:第二个维度允许序数值(不同解释类型之间没有明确联系,像分类问题一样编序号)。各种解释的明确性差异:逻辑规则提供了最清晰和明确的解释,而其他种类的解释可能是隐性的。例如,显著性映射本身只是某个输入上的掩码。通过观察显著性映射,人们构建了一个解释“模型之所以做出这样的预测,是因为它专注于这一高度有影响力的部分和那部分(输入)”,希望这些部分与一些领域概念相对应。严格地说,隐式解释本身并不是完整的解释,需要人类进一步的解释,而这种解释通常在人们看到隐式解释时自动完成。我们在这里认识到四种主要的解释类型:逻辑规则、隐藏语义、归因和例子解释,按解释能力递减的顺序列出。在以前的文献中也可以找到类似的讨论,例如,Samek等人[61]提供了一个关于“解释类型”的简短小节(包括解释学习到的表征,解释个体预测等)。然而,它与我们将在下一段介绍的另一个独立的可解释性研究维度混合在一起。最近的一项调查[62]也遵循了同样的理念,把显著性映射和概念归因[63]看作不同类型的解释,而我们认为它们属于同一类型,但在下面的维度上有所不同。

从局部可解释性到全局可解释性(w.r.t.输入空间):最后一个维度,在最近的论文中已经变得非常常见(例如,[18],[49],[58],[64]),其中全局可解释性意味着能够理解模型的整体决策逻辑,而局部可解释性则侧重于对单个预测的解释。然而,在我们提出的维度中,存在着全局可解释性和局部可解释性之间的过渡(即半局部可解释性),而不是硬性划分。局部解释通常利用目标输入的信息(例如,特征值,梯度)。但全局解释试图推广到尽可能广泛的输入范围(例如,规则学习中的顺序覆盖(sequential covering),特征重要性排名的边际贡献)。这一观点也得到了几种半局部解释方法的支持[65],[66]。也有人试图以一种自下而上的方式将局部解释融合到全局解释中[19],[67],[68]。
【读论文】A Survey on Neural Network Interpretability_第2张图片
为了帮助理解第二个维度,表2列出了分类法下不同子类别产生的典型解释的示例。

  1. 第1行规则作为解释
    1. 局部解释:只适用于给定输入x(i)的规则解释(及其相关的输出y(i)。其中一个解决方案是找出(通过干扰输入特征和观察输出如何改变)最小特征集xk…xl的存在支持预测y(i)。类似地,可以找到不应该出现的特征xm…xn(更大的值),否则y(i)将改变。那么x(i)的解释规则可以构造为“因为xk…xl都在,xm…xn不存在,所以x(i)被分类为y(i)“[69]。
    2. 如果一个规则不仅对输入x(i)有效,而且对它的“邻域”[65]也有效,我们得到一个半局部解释
    3. 从原始网络中提取规则集或决策树,可以解释整个网络的一般功能,从而提供全局可解释性
  2. 第2行解释隐藏语义
    1. 全局解释可视化一个隐藏神经元最敏感的图像(pattern)。这可以提供有关网络内部运作的线索。我们还可以采取更主动的方法,使隐藏的神经元更容易解释。由于高层隐藏神经元可能会学习到难以解释的模式混合,Zhang等人[70]引入了一个损失项,使高层滤波器(在不同输入之间)产生一致的激活映射,或保持不活跃(当没有看到某个模式时)。实验表明,这些过滤器更容易解释(例如,可以发现一个过滤器被动物的头部部分激活)。
  3. 第3行归因作为解释
    1. 通常提供局部可解释性:考虑一个动物分类任务,输入特征是输入图像的所有像素。属性允许人们看到图像的哪些区域(像素)对分类结果贡献最大。它可以通过输入特征(即所有像素)或某些变体的敏感性分析来计算[71],[72]。
    2. 全局可解释性:深度神经网络通常不能有像线性模型y = w t + b中的系数w那样直接的归因,这显示了全局特征重要性。Kim等人[63]对归因到一个“概念”(例如,预测斑马对条纹的存在有多敏感)感兴趣,而不是专注于输入特征(像素)。条纹的概念是用网络隐层空间中条纹训练样本和非条纹训练样本的区分平面法向量表示的。因此,可以计算出(斑马的)预测对(条纹的存在)概念的敏感度,从而具有某种形式的全局可解释性。
  4. 第4行通过举例解释
    1. 局部可解释性:展示与待解释样本x(i)在网络隐藏层产生激活最相似的已知样本。或测试从训练集中移除某一个样本会对待解释样本x(i)的预测产生多大影响[73]。
    2. 全局可解释性:向网络添加一个(可学习的)原型层。原型层使网络根据输入和学习到的原型之间的接近程度进行预测。学习到的可解释原型可以帮助解释网络的整体功能。[76]

被动解释

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

被动,规则作为解释

逻辑规则被普遍认为是可解释的,研究历史悠久。因此,规则提取是解释神经网络的一种很有吸引力的方法。在大多数情况下,规则提取方法提供全局解释,因为它们只从目标模型中提取单个规则集或决策树。只有少数几种方法产生(半)局部规则形式的解释。另一件需要注意的事情是,尽管规则和决策树(以及它们的提取方法)可能非常不同,但我们在这里没有显式地区分它们,因为它们提供了类似的解释(决策树可以扁平化为决策规则集)

规则的基本形式是:如果P,那么Q

其中P称为先行项,Q称为后项,在我们的语境中是网络的预测(例如,类标签)。P通常是若干输入特征条件的组合。对于复杂模型,解释规则可以是其他形式的,如命题规则、一阶规则或模糊规则。

被动,规则作为解释,(半)局部

根据我们的分类,这一类的方法专注于一个训练过的神经网络和某个输入(或一小组输入),并产生一个逻辑规则作为解释

Dhurandhar等[69]通过寻找应该最低限度地、充分地呈现的特征和应该最低限度地、必要地缺席的特征构建局部规则解释。简而言之,解释是这样的:“如果输入x被归类为y类,那是因为特征fi…fk存在,特征fm…fp缺席”。这是通过找到小的,足以独自确保相同预测(或将改变预测,如果应用到目标输入)的稀疏扰动。

类似的方法是反事实解释[124]。通常,我们会问神经网络基于哪些特征(值)预测为c类。然而,Goyal等人[78]试图在输入图像上找到最小改动(edit)量,这可能会导致不同的预测c类’。换句话说,他们问:“输入图像中的哪个区域使预测成为c类,而不是c’”。

Kanamori等人[79]引入了分布敏感反事实解释,要求上述“改动(edit)”遵循经验数据分布,而不是任意。

Wang等人[77]提出了另一种局部可解释性方法,该方法为每个输入样本确定网络的关键数据路由路径(CDRPs,critical data routing paths)。在卷积神经网络中,每个核产生一个特征映射,将作为通道被送入下一层。Wang等人[77]将每一层上的每个输出通道与一个门(非负权)相关联,这表明该通道的关键程度。然后对这些门的权值进行优化,当这些门与相应的输出通道相乘时,网络仍然可以做出与原始网络相同的预测(在给定的输入上)。重要的是,稀疏权重(大多数接近于零)得到鼓励。通过首先识别关键节点,即与正值门相关的中间内核,就可以识别每个输入样本的CDRP。我们可以探索关键节点并为之赋予意义,使关键路径成为局部解释。然而,由于原始论文没有进一步阐述CDRPs的表述,这可能是人类无法理解的,所以它仍然是一种激活模式,而不是真正的解释。

我们还可以提取覆盖一组输入而不是单个输入的规则。Ribeiro等人[65]提出了**(半)局部足够精确的if-then规则锚点**。换句话说,如果一个规则适用于一组类似的例子,它们的预测(几乎)总是相同的。它类似于(实际上,在此基础上)我们将在第III-C节(被动,属性作为解释)中介绍的一个归因方法LIME。然而,它们在产生的解释方面是不同的(LIME为个别例子产生归因)。Wang等人[80]试图找到一个可解释的规则集来覆盖输入空间的某个子集。根据子集的大小,这种替换可以在模型精度上不花费或花费较低的成本。

被动,规则作为解释,全局

TBC

你可能感兴趣的:(读论文,人工智能,算法)