Advertisement

机器学习可解释性

阅读量:

目录

什么是可解释性

为什么需要可解释性

神经网络可解释性的分类

1. 按照逻辑规则解释(Rule as Explanation)

2. 按照语义进行解释

3. 通过示例进行解释

4. 按照属性解释

LIME相关介绍

可解释性总结


什么是可解释性

在最理想的状态下,精确的数学符号和严格的逻辑规则能够提供最精确的解释。然而,实际情况中,人们通常不需要'全面的解释',仅需关键信息和一些先验知识。

不同领域的模型解释需要建立在各自领域的专用术语基础之上,目前难以通过数学逻辑符号来实现。例如,在计算机视觉中,我们使用image patches;在自然语言处理中,我们使用单词。可解释性术语可以理解为计算机与人类之间能够有效沟通的语言。过去,我们主要研究计算机指令等人类与计算机之间的表达方式;如今,研究重点转向模型如何解释现有的计算机系统。

Lipton的文章旨在探讨可解释性,他提出了许多值得深思的问题。例如,何时需要可解释能力?如果一个模型的精度极高,几乎无误,我们可能无需过分关注其可解释性。相反,当模型的准确率较低时,我们可能会迫不及待地想知道机器为什么会出错。如果机器出错的场景与人类出错的场景高度吻合,人们可能会以理解为主,不会降低对机器的信任。然而,当人类容易出错而机器却出错时,这种反差会严重削弱人类对机器的信任。以对抗样本攻击为例,在一张熊猫图片中加入精心设计的噪声,人类依然能够轻松识别出这是熊猫,但机器却会误判为长臂猿。这时,人类自然会渴望了解机器为什么会做出这种判断。此外,机器与人类的目标存在偏差也是一个重要因素。有时,人类追求的是因果关系,但监督学习只能提供相关性。此外,机器可能在离线数据上经过了训练,但在实际应用中面临输入不一致、输入随时间变化、输入空间因部署而改变等各种问题。这种情况下,人类必然想知道:这种微小的输入变化是否会导致模型输出的巨大差异?类似的输入是否会得到一致的输出?我们是否了解模型中每一个参数的具体含义?

可解释性是一个较为宽泛的概念。例如,我们能够明确知道模型在多大程度上会出现错误,以及对于哪些特定输入会导致错误。此外,了解模型的运行机制,对输入的某个特征进行微调,使得模型的输出与人类的经验保持一致,也被认为是可解释性的一种表现。值得注意的是,线性模型并不一定比深度神经网络的可解释性更强。为了达到与深度神经网络相当的预测精度,线性模型可能需要依赖非常复杂的手工构造特征,其中许多特征都是不可分解的。相比之下,神经网络中的特征activation map可以通过语言描述、可视化技术和聚类方法被人类理解和解释。在图像分类任务中,对深度学习分类器进行语义解释的过程,就是一种典型的可解释性应用。而Saliency map则是一种常用的可视化解释工具。此外,聚类方法也是一种有效的解释手段,如果一只狗在形态上与猫非常相似,而机器将其误判为猫,这种情况的错误也容易被人类所接受。

为什么需要可解释性

机器学习模型主要分为白盒子模型和黑盒子模型两类。线性模型及其单棵决策树被视为白盒子模型,因其内部机制清晰,人类能够完全理解其运作原理。相比之下,随机森林、提升树以及深度神经网络等复杂结构则被视为黑盒子模型。这些模型将输入与输出之间的映射关系极为复杂,完全解析其内部运行机制几乎是不可能的。

  • 高可靠性的要求’

a)在实践中,神经网络常见地存在不可预知的错误行为。进一步的研究表明,对抗样本攻击与防御机制的研究仍处于探索阶段,这种现象对那些对可靠性要求极高的系统而言,确实构成了一种严重威胁。

b)可解释性有助于发现潜在的错误;也可以通过debug而改进模型

在重要领域部署前,机器学习模型需达到足够的预测精度。此精度不能因世异时移而降低,且模型应具备在线更新能力,并与时俱进。此外,模型应在对抗样本上经过充分训练,对简单的对抗样本具有免疫性。

  • t透明性

机器负责对不确定的输入和输出实施实时监控,发出警报,并将最终决策权转移给人类。其内部决策过程必须始终以可视化形式或图形化界面等人类可理解的方式呈现给人类观察员。信息的透明度至关重要,在最近的两起波音737 Max飞机坠毁事件中,其中一起事件中人类与自动控制系统对抗了10分钟,最终败下阵来。如果机器决策过程具备信息的透明度,具备预警功能,并及时将决策权转移给人类观察员,那么此类事故将可以避免。这一观点不恰当,因为波音飞机的这部分自动控制系统并未采用人工智能技术。

  • 伦理/法规的要求

其决策必须符合人类的价值观、世界观和道德观,必须公平、无偏见,同时具备对这个世界的热爱、对造物主人类的感恩以及对人类文明传承的责任感。斯坦福的人为AI研究院正是遵循这一理念。

神经网络可解释性的分类

1. 按照逻辑规则解释(Rule as Explanation)

第一种方法是分解法,遍历所有特征的排列组合

分解法相对而言最为简单,然而其缺点也显而易见,即时间复杂度过高。尽管KT算法在一定程度上进行了改进,但指数级别的复杂度仍然使得其难以直接应用于实际场景。

第二种方法:教育法[1]

DecText决策树抽取器主要基于经过黑箱子的数据提取黑箱子的规则。与传统决策树不同,DecText不仅利用标记数据,还可以结合未标记数据和随机数据进行抽取,只要数据经过神经网络处理就能获得标签。与仅依赖训练集相比,传统决策树在生成叶子节点时的可信度显著低于生成根部(因为能用于划分界限的数据越来越少)。因此,DecText的一个显著优势在于能够充分利用更多的无标记数据甚至随机数据进行补充。

该方法存在两个主要缺陷。首先,未标注数据或随机数据可能超出合理解释的范畴,例如在人脸识别任务中,若输入包含低质量或随机图像,决策树可能会过度拟合这些异常数据,导致真正用于解释人脸特征的图像占比显著降低。其次,决策树模型难以充分表达复杂的网络结构,随着树的深度增加,其性能将显著下降,同时可解释性也会相应降低。

Tree Regulartion[2]提出了树正则的方法,来抑制了树的深度。

树正则基于引入深度损失正则项,在优化过程中会抑制树的深度。树的深度则由一个相对简单的预估网络进行预估,所需的参数即为主网络的参数。

2. 按照语义进行解释

深入认识卷积神经网络架构,例如...。浅层卷积网络主要提取图像的基础特征,如纹理和颜色等。深层卷积网络则能够提取更高级的语义特征,例如识别面部特征如眼睛和鼻子。其中最具代表性的方法是计算机视觉领域中的可视化技术[3]。

可视化手段十分丰富。例如,一位来自华人的博士通过可视化手段实现了对CNN的展示,能够清晰地呈现各层结构。通过点击网页上的特定神经元,可以直观地观察其工作流程。

维也纳的一位年轻人原本专注于unity3D特效开发,他以三维形式展示了整个CNN网络的结构。

另外一种主动的基于语义进行解析的代表作:具有可解释性的卷积神经网络[4](Interpretable convolutional neural networks.)相较于传统卷积神经网络,ICNN在设计上具有显著的不同之处,即其每一个卷积核主要反映单一概念。例如,传统卷积核可能同时对猫的头部和四肢产生较大激活值,而ICNN则能够精准地选择并反映其中的最大特征。

3. 通过示例进行解释

该方法直观且易于理解,可被视为一种策略或方式。其目标是通过寻找与待解释样本最接近的一个训练样本,其代表性工作为Understanding black-box predictions via inflfluence functions[[5]](https://zhuanlan.zhihu.com/p/368755357#ref_5 "5”。

4. 按照属性解释

按照属性进行解释,目前内容的表达上最为简洁。在现有技术中,决策树等基于规则的透明模型难以准确模拟复杂的人工神经网络。为了解决这一问题,相关研究已提出多种解决方案。针对这一问题,相关研究已发表多篇具有重要影响的论文,例如,Goodfellow等学者提出的《Why Should I Trust You?》系统性地探讨了分类器预测的解释性问题。

值得注意的是,LIME方法不直接查看模型的内部机制,而是通过调整样本特征来进行分析。在这里,样本特征通常指的是图片中的像素点。然而,当LIME需要在特征空间中进行采样时,如果特征空间过于庞大,采样效率会显著降低。通常,一张普通图片的像素点数量超过一万是常见的。因此,如果将每个像素单独作为特征进行采样,采样空间会变得过于庞大,导致效率低下。相反,如果减少采样数量,虽然可以提高效率,但可能会导致结果不够准确。所以针对图像任务,使用LIME时需要特别注意图像的空间相关性和连续性。在不考虑一些极小特例的情况下,图片中的物体通常是由一个或几个连续的像素块构成的。所谓像素块,是指具有相似纹理、颜色、亮度等特征的相邻像素所形成的有一定视觉意义的不规则像素块,我们称之为超像素。

其他的还有:用意想空间的对话系统[8]

这种解释的类型具有极高的深度,同时也便于用户理解。然而,这也对AI模型的性能和训练难度提出了更高的要求。目前,该领域的研究仍处于较为稀缺的状态。

LIME相关介绍

LIME是一种基于局部线性模型的可解释性方法。基于这一假设,LIME通过构建一个线性模型来近似解释黑盒模型在特定输入点附近的决策机制。

如下图所示,任务目标是对红十字和蓝色圆点进行分类,神经网络学到的分类器可能给出很复杂的分类边界,即粉红区域与浅蓝区域的分界线,所有的红色十字都在边界包围的粉红区域内,而蓝色圆点在浅蓝区域。如果想从全局层面解释清楚此神经网络在整个输入空间如何工作,用语言描述则非常困难,因为无法精确表示这条弯弯曲曲的分界线。但如果用视觉来向另一个人类解释,则相对简单,只要用手指出整个边界即可。而物理学家做的,是用数学公式把这条分界线表示出来。数学公式可以被不同的人理解,所以是一种除了语言,视觉之外的可以实现共情的解释方式。LIME 做的就简单多了,只要找出那条虚线,就可以局部的解释为什么神经网络对一个特定的输入做出目前的分类。

当输入为图片时,LIME会通过基于边界的方式对图片进行分割,并将具有相似特性的像素归类为超级像素。随后,通过随机丢弃部分超级像素来构造不完整输入x',并将其输入到神经网络中,观察输入被部分丢弃后的分类概率变化f(x'),从而确定某些图像区域对分类结果的影响。LIME已公开开源,用户可通过简单的安装流程即可获取。

复制代码
    pip install lime
    
    AI助手

使用方法在GitHub页面https://link.zhihu.com/?target=https%3A//github.com/marcotcr/lime进行了详细介绍。

通过LIME方法对大象照片进行分析,可以揭示Inceptionv3模型如何判断该图像为大象。

可解释性总结


【参考资料】

  1. ^“Extracting Decision Trees From Trained Neural Networks”. SIGKDD. July 23-26,2002 Extracting decision trees from trained neural networks | Proceedings of the eighth ACM SIGKDD international conference on Knowledge discovery and data mining
  2. ^ M. Wu, S. Parbhoo, M. C. Hughes, R. Kindle, L. A. Celi, M. Zazzi, V. Roth, and F. Doshi-Velez, “Regional tree regularization for interpretability in deep neural networks.” in AAAI, 2020, pp. 6413–6421. https://arxiv.org/abs/1908.04494
  3. ^K. Simonyan, A. Vedaldi, and A. Zisserman, “Deep inside convolutional networks: Visualising image classification models and saliency maps,” arXiv preprint arXiv:1312.6034, 2013.
  4. ^Q. Zhang, Y. Nian Wu, and S.-C. Zhu, “Interpretable convolutional neural networks,” in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2018.
  5. ^P. W. Koh and P. Liang, “Understanding black-box predictions via influence functions,” in Proceedings of the 34th International Conference on Machine Learning-Volume 70, 2017.
  6. ^M. T. Ribeiro, S. Singh, and C. Guestrin, “Why should i trust you?: Explaining the predictions of any classifier,” in Proceedings of the 22nd ACM SIGKDD international conference on knowledge discovery and data mining, 2016.
  7. ^M. Wojtas and K. Chen, “Feature importance ranking for deep learning,” Advances in Neural Information Processing Systems, vol. 33, 2020.
  8. ^Open Domain Dialogue Generation with Latent Images Z Yang, W Wu, H Hu, C Xu, Z Li - arXiv preprint arXiv:2004.01981, 2020 - arxiv.org https://arxiv.org/abs/2004.01981

作为对机器学习的深入探讨,主要参考 机器学习小谈,其中提到了神经网络的可解释性综述 - 知乎 (zhihu.com)。

全部评论 (0)

还没有任何评论哟~