李宏毅2020ML——P24-31可解释性ML

introduce

在分类问题中,我们输入一张猫的图片,machine会告诉我们这是”猫“,但是为什么?

问题1:为什么machine会认为这个是猫呢?
问题2:machine眼中的猫是什么样子的呢?
在这里插入图片描述
或者是machine在日常生活中的应用,很多时候我们需要一个解释:
在这里插入图片描述
或者是通过machine的解释提升我们的model:
在这里插入图片描述
那需要解释的到底是什么,是告诉我们machine是如何工作的吗? 并不是。
在这里插入图片描述
我们对于可解释性和性能的比较,哪一个是我们需要的呢?
有一些本身就可以解释的model,但是效果却并不好,因为可以解释,所以我们就选择他们吗?
在这里插入图片描述
那有没有即可解释又很强大的model呢?决策树
但是当事实上,真正去解决问题时,一颗决策树是不够的,通常都是一片森林,这个时候还能解释吗?
在这里插入图片描述
在这里插入图片描述
所以,我们需要可解释性的ML

Local Explainable

局部可解释性:去解释给出的结果,比如说为什么这个是”猫“

基本的思想:

让machine告诉我们哪些部分是对最后的结果是重要的
在这里插入图片描述
方法一——灰色方块遮挡去看最后结果:
在这里插入图片描述
方法二——saliency map:告诉我们哪些component是重要的
通过改变每一个部分组成的值,来看最后结果的变化
在这里插入图片描述
但是这种问题的局限性在于——梯度饱和问题
在这里插入图片描述
并且现在有很多的Attach Interpretation,给图片加上一些noise让最后machine的结果发生巨大的变化
在这里插入图片描述

global Explainable

全局解释:让machine告诉我们它心中的猫是什么样子

方法1——activation maximization

可视化每一个神经元的输入偏好:
在这里插入图片描述
通常会像图一那样出现很多白点,但是我们知道手写数字,只需要少数的地方有墨水就可以,所以我们需要去加一个R(x),这个函数是可以自己根据需要去调整的。
在这里插入图片描述
别人的一些好的结果,让machine画出他们认为的样子:
在这里插入图片描述

方法二

训练一个生成器,去生成我们想要的结果:
在这里插入图片描述
一些好的结果:
在这里插入图片描述

利用一个可解释model去解释不可解释的model

有一些模型是很容易去解释的,我们可以用这些模型去解释那些不可解释的model

Linear Model

我们训练两个model最后的输出的结果越近越好:
在这里插入图片描述
但是linear model不能模拟整个NN,却可以去模拟局部的局域,利用LIME的方法:
在这里插入图片描述
这个步骤中的nearby选择也是很重要的:
在这里插入图片描述
用LIME对图像举例:
在这里插入图片描述

在这里插入图片描述

决策数

可解释的model,除了linear model 还有决策树,我们并不希望这棵树太大,希望深度是有限制的
在这里插入图片描述
NN并不容易被决策树表示,所以我们需要训练容易被决策树解释的NN:
在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值