ICode9

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

【李宏毅2020 ML/DL】P26-33 Explainable ML

2021-06-22 17:01:29  阅读:352  来源: 互联网

标签:DL 机器 33 ML Decision Explanation Local 李老师 LIME


我已经有两年 ML 经历,这系列课主要用来查缺补漏,会记录一些细节的、自己不知道的东西。

已经有人记了笔记(很用心,强烈推荐):https://github.com/Sakura-gh/ML-notes

本节内容综述
  1. 机器为什么“能”知道?可以从两个角度考虑,比如对于一个分类问题,可以考虑:Local Explanation: Why do you think this image is a cat?,还有Global Explanation: What do you think a "cat" looks like?
  2. 此外,解释性机器学习可解释机器学习也有现实意义,比如“证据何在?”,“凭什么给你贷款?”;毕竟,模型可能正确率高,但是什么都没学到;此外,如果你知道哪里出了什么问题,我们也多了一些参考。
  3. 李老师讲了他自己的观点,见[小细节](#Lee’s Point of View)
  4. Interpretable与Powerful是存在博弈的。深度模型可能很强大,但也因此难以解释。Let's make deep network explainable.此外,决策树可能是一个既强大由可解释的模型;但是有时,问题复杂了,也难以解释。
  5. 先从Local Explanation: Explain the Decision讲起。具体讲了基于梯度的Saliency Map,以及一些局限性和***方法。
  6. 接着,做了一个 Case Study ,区分数码宝贝和神奇宝贝。(过程充满欢乐…)
  7. 接着开始Global Explanation: Explain the Whole Model部分。之前在P17 CNN中,有讲过Activation Maximization,知道DNN很容易被迷惑。本节课进行了简单复习。
  8. "Regularization from Generator",向机器输入一个低纬度向量,机器输出图片。因此要Training a generator(GAN, VAE, etc.)。
  9. 接着分享的是,USING A MODEL TO EXPLAIN ANOTHER;用一个模型去解释另一个模型。讲到了Local Interpretable Model-Agnostic Explanations(LIME)。LIME很有趣,举了两个例子,展示其应用。
  10. 此外,还讲了 Decision Tree 。Decision Tree 可以无限深度,来模仿黑盒子;但是,决策树太深了,也不便于解释,因此,如何限制决策树深度并且起到模拟作用的难题值得讨论。

 

文章目录

 

小细节

Lee’s Point of View


李老师观点:可解释机器学习可能不需要一定解释出来什么,但是要让人决定“爽”。

Local Explanation: Explain the Decision

我们期望知道,变量中哪些值起了作用。

如何做?把一些数据去掉,看看影响。

如上图,如果把灰色方块放在狗头上,机器认为其是狗的概率大大降低了。

此外,还有一种方法,如下图,在某一个变量上加一个小小的扰动,看y值的变化。

如上,根据每个值对目标值得偏微分,我们可以画出一个Saliency Map,可以看出,机器真的看出了什么是动物。

Limitation of Gradient based Approaches


如上,大象的鼻子对于机器来讲,可能很重要;但是对于Gradient based Approaches来讲,把大象鼻子长一点、短一点都是看不出影响的,因为在大象鼻子长度可能处于一个平滑区间,梯度是饱和的(Gradient Saturation)。

解决方案可以是用的别的指标,而非梯度,如右边两篇论文。

Attack Interpretation

此外,基于梯度与Saliency Map,可以进行些***行为。

如上,可以像下面两张图一样,加一些人眼注意不到的noise,来误导机器认知,进而产生***作用。

Case Study: Pokemon v.s. Digimon


如上,网上有相关数据集。即便是人类,可能也很难分辨一些特殊物种,到底是数码宝贝还是宠物小精灵。

机器能否做到呢?

胡乱叠了几层 CNN ,训练集准确率98.9%;测试集98.4%。很惊人。

于是李老师做了Saliency Map。


发现机器更在意的是图片的边缘。

李老师回去看了下数据,发现:

  • 宝可梦的图片大多是PNG;
  • 而Digimon大多是JPEG??????

非常幽默了,可以说是。

Regularization from Generator


如图,我们将问题转化为“找一个最好的z”。效果如下。

USING A MODEL TO EXPLAIN ANOTHER

我们用一个具有解释能力的模型,去模仿一个不可解释的模型。

但是难题在于,线性模型可能不能很好地模仿其他模型如神经网络的行为。

然而,我们可以模仿一个 local 部分,而非全貌。

Local Interpretable Model-Agnostic Explanations(LIME)


LIME四步如上,其中,注意第二部找到nearby的数据很重要。这个nearby的决定直接影响效果。

LIME: Image


如上,先手动将图片分成许多小部分,再随机丢掉某些部分,生成一个新数据,将新数据放入黑盒,查看分数。


如图,如果想用线性函数,我们需要对输入数据降维:

  • 对于这个例子,我们可以用0-1变量表示某个小块是否存在。


如上,我们现在则可以分析这些参数:

  • 如果权重接近0,则说明这个区域与青蛙无关;
  • 如果正数,则说明这个区域与青蛙相关;
  • 如果负数,则说明这个区域让机器认为其不是青蛙。


如图,李老师用自己的照片做了个实验。

机器认为李老师的照片和服可能性0.25,实验袍可能性0.05。于是李老师进行了LIME。

最后得出与实验袍相关的segment;以及与和服相关的segment。

Decision Tree


如上,我们规定一个指标,描述决策树的深度。


如上,在训练神经网络时,就把“树的复杂度”考虑为优化目标。

但是,这个指标难以微分。于是这篇文章训练了另一个神经网络,那个神经网络用于把主神经网络的参数作为输入,预测树的深度,然后对主神经网络的参数做微分...

 

标签:DL,机器,33,ML,Decision,Explanation,Local,李老师,LIME
来源: https://blog.51cto.com/u_15279775/2938551

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

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

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

ICode9版权所有