论文阅读:机器学习模型可解释性方法、应用与安全研究综述

近日阅读了一篇讲述可解释性的中文综述文章机器学习模型可解释性方法、应用与安全研究综述,对模型可解释性的相关知识有了进一步的了解。本文是阅读这篇综述的一些笔记以内容摘要。

0 引言

背景:虽然机器学习和人工智能技术在人脸识别、自动驾驶、恶意软件检测和智慧医疗分析等领域得到了广泛的应用,但大多数情况下机器学习模型尤其是深度神经网络如同黑盒一般,人们无法确切地知道模型背后的决策依据是什么,也无法保证决策的可靠性。缺乏可解释性称为机器学习在现实任务中的进一步发展和应用的主要障碍之一。

本文的工作:

  • 阐述可解释性的定义和所解决的问题
  • 对现有的可解释性方法进行系统的总结和归类,并讨论相关方法的局限性
  • 简单介绍模型可解释性相关技术的实际应用场景
  • 详细分析可解释性中的安全问题
  • 讨论面临的挑战和未来的研究方向

1 机器学习可解释性问题

可解释性的目的:帮助人们理解机器学习模型是如何学习的,它从数据中学习到了什么,针对每一个输入它为什么会做出如此决策以及它所做的决策是否可靠

可解释性与模型复杂度、准确度之间的关系:通常情况下,结构简单的模型可解释性好,但拟合能力差,往往准确度不高、结构复杂的模型,拟合能力强,准确度高,但由于模型参数量大、工作机制复杂、透明度低,因而可解释性差。

可解释性分类:主要有两种分类角度:

  • ante-hoc可解释性与post-hoc可解释性:ante-hoc可解释性指的是通过训练结构简单、可解释性好的模型或将可解释性结合到具体的模型结构中的自解释模型使模型本身具备可解释能力;post-hoc可解释性指的是通过开发可解释技术解释已经训练好的机器学习模型。
  • global可解释性与local可解释性:全局可解释性旨在帮助人们理解复杂模型背后的整体逻辑以及内部的工作机制;局部可解释性旨在帮助人们理解机器学习模型针对每一个输入样本的决策过程和决策依据。

2 Ante-hoc可解释性

​ Ante-hoc可解释性发生在模型训练之前,因而也称为事前可解释性。学习任务中,选择结构简单、易于理解的自解释模型,比如朴素贝叶斯、线性回归、决策树、基于规则的模型等,来实现Ante-hoc可解释性。另外,也可以构建将可解释性直接结合到具体的模型结构中的学习模型来实现Ante-hoc可解释性。

2.1 自解释模型

对于对自解释模型,从两个角度考虑其可解释性:

  • 模型整体的可模拟性(Simulatability):能够从整体上完全理解模型,将输入数据连同参数一起,在合理时间步骤内完成产生预测所需的每一个计算。
  • 模型各个组件的可分解性(Decomposition):模型的每一个部分,包括模型结构、模型参数、模型的每一个输入和每一维特征都允许直观的解释。

也要注意,自解释模型也需要具有合理的规模,对于高维的线性模型、深度太深的树模型,其可解释性未必很好。

2.2 广义加性模型

广义加性模型(GAM)既能提高简单线性模型的准确率,又能保留线性模型好的内置可解释性,其一般形式为:
g ( y ) = f 1 ( x 1 ) + f 2 ( x 2 ) + ⋅ ⋅ ⋅ + f n ( x n ) g(y)=f_1(x_1)+f_2(x_2)+ ···+f_n(x_n) g(y)=f1(x1)+f2(x2)++fn(xn)
其中, f i ( ⋅ ) f_i(·) fi()称为特征 x i x_i xi对应的形函数(shape function),是一个单特征模型,它可能是非线性模型,也可以是线性模型。广义加性模型通过线性组合每一个单特征模型得到最终的决策形式,由于每个形函数可以是非线性的,所以它可以捕捉到特征与最终决策目标之间的非线性关系,从而提高准确率;另外,它消除了特征之间的相互作用,所以可以 保留线性模型良好的可解释性。

相关研究工作:

  • Lou等人提出了一种新的基于有限大小的梯度提升树加性模型方法,该方法在回归和分类问题上精度显著优于传统方法,同时还保持了GAM模型的可解释性。
  • Ravikumar等人结合稀疏线性建模和加性非参数回归的思想,提出了一种称之为稀疏加性模型的高维非参数回归分类方法,解决了高维空间中加性模型的拟合问题,同时基于 l 1 l_1 l1正则的稀疏性,可实现特征的有效选择。
  • Poulin等人 开发 了一个 图形化解释框架, 提供了对加性模型的图形化解释 ,包括对模型整体的理解以及决策特征的可视化,以帮助建立用户与决策系统之间的信任关系统。

2.3 注意力机制

神经网络模型本身的可解释性很差,因此其自身可解释性只能通过额外引入可解释性模块来实现,一种有效的方法就是引入注意力机制(Attention Mechanism)。

人脑的注意力机制指的是从大量输入信息中选择小部分有用信息来重点处理,将有限的信息处理资源分配给重要的任务,解决信息超载问题。另外,注意力机制具有良好的可解释性,注意力权重矩阵直接体现了模型在决策过程中感兴趣的区域。

相关研究工作:

  • Bahdanau等人将注意力机制引入到基于编码器-解码器的机器翻译中,有效提高了‘英语-法语’翻译性能,并通过可视化注意力权重,用户可以清楚地理解一种语言中的单词是如何依赖另一种语言中的单词进行翻译的。
  • Yang等人将分层注意力机制引入到文本分类中,显著提高了情感分析的性能,同时注意力权重量化了每一个词的重要性,可以帮助人们理解每一个词对最终情感分类结果的贡献。
  • Xu等人将注意力机制应用于看图说话任务中,首先用CNN提取特征,然后基于特征利用带注意力机制的RNN生成图片描述。注意力实现了单词与图片之间的对齐,通过可视化注意力权重矩阵了解到模型在生成每一个单词时所对应的感兴趣的图片区域。

3 Post-hoc可解释性

Post-hoc可解释性旨在利用解释方法或构建解释模型,解释一个给定的训练好的学习模型的工作机制、决策行为和决策依据,也称为事后可解释性。Post-hoc可解释性可以分为全局可解释性和局部可解释性。

3.1 全局解释

典型的全局解释方法:

  • 解释模型或解释规则的提取
  • 模型蒸馏
  • 激活最大化解释

3.1.1 规则提取

解释模型或解释规则提取:通过从受训模型中提取解释规则的方式,提供对复杂模型尤其是黑盒模型整体决策逻辑的理解。

根据解释对象不同,规则提取方法可分为:

  • 针对复杂的树集成模型的规则提取方法:首先将每一棵树中的根节点到子节点的路径表示成一条条规则;其次,基于规则长度、规则频率、误差等指标对提取的规则进行排序;接着,对规则中的无关项和冗余项进行剪枝并选择一组相关的非冗余规则;最后,基于挑选的规则构建一个可解释的规则学习器用于决策和解释。
  • 针对神经网络的规则提取方法:可以划分为两种:
    • 分解法(Decomposition Method)
    • 教学法(Pedagogical Method)

缺点:

  • 准确度不够,只能提供近似解释,不一定能反映待解释模型的真实行为;
  • 规则性能受规则本身复杂度的制约

3.1.2 模型蒸馏

模型蒸馏是一种经典的压缩模型、降低模型复杂度方法,目的在于将复杂模型学习的函数压缩为具有可比性能的更小、更快的模型。模型蒸馏的核心思想是利用结构紧凑的学生模型(student model)来模拟结构复杂的教师模型(teacher model),从而完成从教师模型到学生模型的知识迁移过程,实现对复杂教师模型的知识蒸馏。蒸馏的难点在于压缩模型结构的同时如何保留教师模型从海量数据中学习到的知识和模型的泛化能力。

通常采用可解释性好的模型作为学生模型,来全局近似教师模型,比如线性模型、决策树、广义加性模型以及浅层神经网络等。

同样,模型蒸馏是一种全局近似,不一定能反映教师模型的真实行为。

3.1.3 激活最大化

许多研究者探索如何在输入空间实现对DNN任意层神经元计算内容的可视化,并使其尽可能通用,以便能够深入了解神经网络不同单元代表的特定含义。其中,最有效和使用最广泛的一种方法是通过在特定的层上找到神经元的首选输入最大化神经元激活,称为激活最大化(Activation Maximization,AM)方法。

激活最大化方法思想较为简单,即通过寻找有界范数的输入模式,最大限度地激活给定的隐藏单元。给定一个DNN模型,寻找最大化神经元激活的原型样本 x ∗ x^* x的问题可以被定义成一个优化问题,其形式化定义如下:
x ∗ = a r g m a x x f l ( x ) − λ ∣ ∣ x ∣ ∣ 2 x^*=\underset{x}{argmax}f_l(x)-\lambda ||x||^2 x=xargmaxfl(x)λx2
其中,优化目标第一项是DNN第 l l l层某一个神经元在当前输入 x x x下的激活值,第二项是正则化项,以保证输入有界。最后可以通过可视化生成的原型样本 x ∗ x^* x帮助我们理解该神经元在其感受野中所捕捉到的内容。我们也可以分析不同层所编码的不同表示内容。当我们分析输出层神经元的最大激活时,我们可以找到某一类别所对应的最具代表性的原型样本。

优点:

  • 解释结果更准确,更能反映待解释模型的真实行为
  • 可以从语义上、视觉上帮助人们理解模型是怎样学习的

缺点:

  • 优化问题产生的最优原型样本可能难以理解
  • 只能用于优化连续性数据,无法直接应用于文本、图数据等离散型数据,因此难以直接用于NLP和图神经网络模型。

3.2 局部解释

模型的局部可解释性以输入样本为导向,通常可以通过分析输入样本的每一维特征对模型最终决策结果的贡献来实现。经典的局部解释方法包括敏感性分析解释、局部近似解释、梯度反向传播解释、特征反演解释以及类激活映射解释等。

3.2.1 敏感性分析

敏感性分析是指在给定的一组假设上,从定量分析的角度研究相关自变量发生某种变化对某一特定因变量影响程度的一种不确定分析技术。其核心思想是通过逐一改变自变量的值来解释因变量受自变量变化影响大小的规律。

3.2.2 局部近似

局部近似解释方法的核心思想是利用结构简单的可解释模型拟合待解释模型针对某一输入实例的决策结果,然后基于解释模型对该决策结果进行解释。该方法通常基于如下假设:给定一个输入实例,模型针对该实例以及该实例邻域内样本的决策边界可以通过可解释的白盒模型来近似。在整个数据空间中,待解释模型的决策边界可以任意的复杂,但模型针对某一特定实例的决策边界通常是简单的,甚至是近线性的[13]。我们通常很难也不需要对待解释模型的整体决策边界进行全局近似,但可在给定的实例及其邻域内利用可解释模型对待解释模型的局部决策边界进行近似,然后基于可解释模型提供对待解释模型的决策依据的解释。

常见的方法有:

  • LIME
  • LORE
  • Anchors
  • LEMNA

优缺点:

  • 优点:实现简单、易于理解、不依赖模型具体结构
  • 缺点:只能捕捉局部特征;重训练效率低

3.2.3 反向传播

基于反向传播的解释方法的核心思想是利用DNN的反向传播机制将模型的决策重要性信号从模型的输出层逐层传播到模型的输入以推导输入样本的特征重要性。

  • Simonyan等人最先提出了利用反向传播推断特征重要性的解释方法(Grad),具体的,Grad方法通过利用反向传播算法来计算模型的输出相对于输入图片的梯度来求解该输入图片所对应的分类显著图(Saliency Map)。

  • 与Grad方法类似,Zeiler等人提出了反卷积网络(DeconvNet),通过将DNN的高层激活反向传播到模型的输入以识别输入图片中负责激活的重要部分。不同的是,在处理ReLu过程中,当使用Grad方法反向传播重要性时,如果正向传播过程中传入ReLu的梯度值为0,而在反卷积网络中反向传播一个重要信号时,当且仅当信号值为负,进入ReLu的重要信号被置零,而不考虑前向传播过程中输入到ReLu的信号的符号。

  • Springenberg等人将Grad方法与反卷积网络相结合提出了导向反向传播方法(GuidedBP),通过在反向传播过程中丢弃负值来修改ReLu函数的梯度。

  • 与只计算输出对当前输入的梯度不同,Sundararajan等人提出了一种集成梯度方法(Intergrated Gradient),该方法通过计算输入从某些起始值按比例放大到当前值的梯度的积分代替单一梯度,有效地解决了DNN中神经元饱和问题导致无法利用梯度信息反映特征重要性的问题。

  • 但是,Grad、GuidedBP以及 Integrated等方法通过反向传播所得到的显著图包含很多视觉可见的噪音(如下图所示),我们无法确定这种噪音是否真实地反映了模型在分类过程中的决策依据。为此,Smilkov等人提出了一种平滑梯度的反向传播解释方法(SmoothGrad),该方法通过想输入样本中引入噪声解决了Grad等方法中存在的视觉噪音问题。其核心思想是通过向待解释样本中添加噪声对相似的样本进行采样,然后利用反向传播方法求解每个采样样本的决策显著图,最后将所有求解得到的显著图进行平均并将其作为对模型针对该样本的决策结果的解释。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3swRFSln-1652334326249)(C:\Users\lenovo\AppData\Roaming\Typora\typora-user-images\image-20220511201531941.png)]

  • Landecker等人提出一种贡献传播方法,使得不仅可以定位样本中的重要特征,还能量化每一个特征对于分类结果的重要性。

3.2.4 特征反演

敏感性分析、局部近似以及梯度反向传播在一定程度上可以提供对待解释模型决策结果的局部解释,但他们通常忽略了待解释模型的中间层,因而遗漏了大量的中间信息。而利用模型的中间层信息,我们能更容易地表征模型在正常工作条件下的决策行为,进而可提供更准确的解释结果。特征反演(feature inversion)作为一种可视化和理解DNN中间特征表征的技术,可以充分利用模型的中间层信息,以提供对模型整体行为及模型决策结果的解释。

特征反演解释方法可分为模型级(Model-level)解释方法和实例级(Instance-level)解释方法 。模型级解释方法旨在从输 入空间中寻找可以表示 DNN神经元所学到的抽象概念解释原型(如激活最大化方法),并通过可视化和理解 DNN每一层特征表示的方式,提供对DNN每一层所提取信息的理解。然而,模型级解释方法的反演结果通常相对粗糙且难以理解,此外,如何从输入样本中自动化提取用于模型决策的重要特征仍然面临着巨大的挑战。针对模型级方法的不足,实例级特征反演方法试图回答输入样本的哪些特征被用于激活DNN的神经元以做出特定的决策。

3.2.5 类激活映射

最新研究表明,CNN不同层次的卷积单元包含大量的位置信息,使其具有良好的定位能力。基于卷积单元的定位能力,我们可以定位出输入样本中用于CNN决策的核心区域。然而,传统CNN通常在卷积池化之后 采用全连接层对卷积层提取的特征图进行组合用于最终的决策,因而导致网络的定位能力丧失。

为了解决这一问题,Zhou等人提出了类激活映射(class activation mapping, CAM)解释方法,该方法利用全局平均池化层来替代传统CNN模型中除softmax层以外的所有全连接层,并通过输出层的权重投影到卷积特征图来识别图像的重要区域。

然而CAM方法需要修改网络结构并重训练,因而在实际应用中并不实用,为此,Selvaraju等人提出了一种将梯度信息和特征映射相结合的梯度加权类激活映射方法(Grad-CAM)。这样,无需修改网络结构或重训练,避免了模的可解释性与准确性之间的权衡,适用于多种任务。

不过这些方法都只能定位到相关图像区域,缺乏像素级别梯度可视化解释方法显示细粒度特征重要性的能力,因此有进一步的改进得到导向梯度加权类激活映射方法(Guided Grad-CAM)

4 可解释性的应用

  • 模型验证:传统的模型验证通常用测试集上的泛化误差实现,但数据集可能存在偏差,并且验证集与训练集同分布,很难通过泛化性能来验证模型的可靠性。因此可以利用模型的可解释性以及相关解释方法对模型的可靠性进行更细粒度的评估和验证,从而消除模型在实际部署中的潜在风险。
  • 模型诊断:模型可解释性相关技术作为一种细粒度分析和解释模型的有效手段,可以用于分析和调试模型的错误决策行为,以诊断模型中存在的缺陷,并为修复模型中的缺陷提供有力的支撑。
  • 辅助分析:还可以用于辅助分析和决策,提高人工分析和决策的效率,比如在医疗数据分析、分子模拟以及基因分析等领域的应用。
  • 知识发现:将可解释性相关技术与基于机器学习的自动决策系统相结合,可以有效地挖掘出自动决策系统从数据中学到的新知识,提供对所研究科学问题的深入理解,弥补人类认知与领域知识的局限性。

5 可解释性与安全性分析

模型可解释性研究的初衷是提高模型的透明度,验证和评估模型决策行为和决策结果的可靠性和安全性,消除模型在实际部署中的潜在安全隐患。然而,模型可解释性相关技术也可被攻击者利用以探测机器学习模型中的漏洞,因此会给机器学习模型以及真实应用场景中尤其是风险敏感场景中的机器学习应用带来威胁。

6 当前挑战与未来方向

可解释性研究当前面临的一个挑战就是如何设计更精确、更友好的解释方法,消除解释结果与模型真实行为之间的不一致;第二个挑战就是如何设计更科学、更统一的可解释性评估指标,以评估可解释方法解释性能和安全性。

6.1 解释方法设计

对于事前可解释性方法,主要是考虑如何设计可解释的机器学习模型以消除模型准确性与可解释性之间的制约;对于事后可解释性方法,大部分研究都尝试采用近似的方法来模拟模型的全局或局部的决策逻辑,因此要考虑如何设计忠实于决策模型的安全可保障的精确解释方法,以消除解释结果与模型真实行为之间的不一致性,从而保证解释结果的可靠性和安全性。

6.2 解释方法评估

目前,可解释性研究领域缺乏一个用于评估解释方法的科学评估体系,在CV领域,许多解释方法的评估依赖人类的认识,只能定性评估,无法对解释方法的性能进行量化,也无法对同类型的研究工作进行精确地比较。对于事前可解释性方法,其评估挑战在于如何量化模型的内在解释能力;对于事后可解释性方法,其评估挑战在于如何量化解释结果的保真度和一致性。

你可能感兴趣的:(机器学习,人工智能)