ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

可解释机器学习(李宏毅)学习笔记

2022-09-09 22:03:35  阅读:181  来源: 互联网

标签:解释 判断 特征 李宏毅 模型 解释性 笔记 决策 学习


可解释机器学习(李宏毅) 学习笔记

本文为李宏毅老师机器学习课程中的可解释章节学习总结。

可解释的需求

  1. 可解释性目的在于理解模型内部的决策逻辑。 如果我们不去分析模型的决策逻辑,那么我们无法理解模型学到了什么。甚至部分情况下模型并没有学到我们想要的决策逻辑。此处课程举出了一个有趣的例子。 一匹在人群中会用马蹄敲击回应算数的马。 并非马学会了算数,而是因为它通过判断人群反应(正确答案会有欢呼)来终止马蹄敲击,以此获取奖励,如果将此马放到无人处,马就会不停敲击马蹄而不知道何时停止。这与人们的判断不同,这匹马并未学会算数。可以类比马就是一个黑箱模型,解释马算数的决策逻辑,那么无法判断这匹马是否真的学会算数。
  2. 高风险场景,对可解释性的高要求 :法庭,医药,自动驾驶。这类应用涉及伦理,公平,安全等对人们具有重要影响的领域。
  3. 基于模型解释,改进模型性能。 通过解释性技术,分析影响模型性能的因素来针对性的提高模型性能。

可解释的挑战

可解释与性能相矛盾。简单的机器学习模型具备较好的可解释性,例如线性模型,人们可以依据每个特征的权重大小,判断模型决策时依赖那些特征。而复杂的深度学习模型虽然具有极高的性能,但是却因缺乏可解释性而常常被人诟病。所以,如何保证高性能,同时具备较好的可解释性是目前面临的主要挑战。

可解释的目标

目前,这个可解释性的目标还存在一些争论。部分学者认为可解释的目标是完全理解模型的内部结构,决策逻辑。在这里,李老师提出了另一个观点,即我们不需要完全理解模型,但是我们需要模型为它的决策结果给出一个人们信服的理由。正如我们无法理解人脑的决策逻辑,但是只要另一个人给出足够充分的理由,我们依旧可以去相信一个人。

可解释的分类

这里的分类是基于可解释所针对的范围,针对单个实例的解释称为 Local Explanation,针对整个模型的解释称为 Global Explanation。我们可以通过下面一个简单例子来区分两者。

  • Local Explanation 为什么判断这张图片是一只猫。
  • Global Explanation 模型认为猫具有哪些特征。

局部可解释性

特征重要性分析

通过依次移除每个特征,依据模型决策变化程度,来判断出最有效的特征。
Reference: Zeiler, M. D., & Fergus, R. (2014). Visualizing and understanding convolutional networks. In Computer Vision–ECCV 2014 (pp. 818-833)

Saliency Map

对特征施加扰动\(\Delta x\),损失函数会产生一定变化\(\Delta e\),然后使用损失函数的变化和特征扰动的比值\(\frac{\Delta e}{\Delta x}\)来判断该特征的重要性。比值越大,说明该特征越重要。

saliency map: Karen Simonyan, Andrea Vedaldi, Andrew Zisserman, “Deep Inside Convolutional
Networks: Visualising Image Classification Models and Saliency Maps”, ICLR, 2014

该方法存在两个问题。
第一个问题是,生成的saliency map,具有较大的噪音,如Typical所示,所以为了使得saliency map具有更小的噪音。学者们提出了saliency map 方法来获得噪音更小的图片。

解决办法:通过对输入图片随机施加噪音,然后每张生成的图片生成的 saliency map 取平均。
smooth grad: Smilkov, D., Thorat, N., Kim, B., Viégas, F. and Wattenberg, M., 2017. Smoothgrad: removing noise by adding noise. arXiv preprint arXiv:1706.03825.
SmoothGrad 不见得更能反应模型决策的逻辑,但是他给出的结果却更加符合人的直觉。
第二问题,梯度并不总能有效反应特征的重要性。下图举出了一个例子,即动物鼻子的长度在判断是否为大象时,在不同长度范围对判断结果具有不同程度的影响。在大象鼻子较短时,增加鼻子长度对判断结果具有较为重要的影响,但是大象鼻子较长时,增加鼻子长度并不能对判断结果有较大的影响。

为了解决该问题,学者们提出了IG方法。
Sundararajan, M., Taly, A. and Yan, Q., 2016. Gradients of counterfactuals. arXiv preprint arXiv:1611.02639.

理解网络工作模式

visualization 可视化方法

对网络的某一层输出结果降维,聚类等操作,进而可视化输出结果,来判断网络层作用。可以看出input的可视化结果(左图)和网络的第8层结果(右图)的区别。

Probing(探针)

通过利用网络中间层进行下游任务,判断网络性能。

  1. 将bert的中间层用于词性分类(POS Classifier),如果词性分类任务性能较好,那么证明中间层学到了比较多的有关词性的特征。另外,分类任务性能不仅和中间层特征有关,而且还和词性分类模型有关(例如,无法正确分类也有可能是分类模型没有得到很好的训练)。在分析结果时,需要避免分类模型对分类结果的影响。
  2. 将语音辨识模型的中间层重构出语音,重构结果不包含讲者的信息,那么可以判断语音识别模型中间层能够去除模型的讲者信息。

全局可解释性

构造输入法

在图像领域,通过构造一个输入,该输入能够将模型的某些filter最大化,进而判断该filter的主要识别的特征。输入构造的方法常见方法为gradient ascent。
\( X^* = \argmax_{X}\sum_{i}\sum_{j}a_{ij} \)
其中\(a_{ij}\)为filter在图片位置i,j的输出。
多数情况,该方法想得到理想效果需要大量调参数。部分论文中通过大量调参得到的结果如下。

引入生成器

基本思想与上面一致,但是主要通过引入生成器来达到较好的效果。原始的优化目标为\(X^* = \argmax_{X}y_{i}\), 引入图片生成器后,优化目标变为\(z^* = \argmax_{z}y_{i}\)。

Nguyen, A., Clune, J., Bengio, Y., Dosovitskiy, A. and Yosinski, J., 2017. Plug & play generative networks: Conditional iterative generation of images in latent space. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 4467-4477).

LIME

LIME的思想是使用简单模型在局部模仿全局模型。

标签:解释,判断,特征,李宏毅,模型,解释性,笔记,决策,学习
来源: https://www.cnblogs.com/lif323/p/16674023.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有