机器学习笔记11_Explainable AI & Adversarial Attack

本文是李宏毅机器学习的笔记,这是第十一节,介绍了深度学习的可解释性和模型的攻击和防御。

1. AI的可解释性

为什么我们需要可解释性的AI,因为回答正确不一定代表它学到了东西,例如神马汉斯,宝可梦、数码宝贝分类器最初版。
下图是为什么AI需要可解释的一些其它原因,另外如果AI有了可解释性,当它预测错误时,我们就知道了它为什么预测错误,更方便进行改进。

对于模型的可解释性和性能,二者都是很重要的。

人脑其实也是一个黑盒子,为什么人可以相信人脑做出的判断,而不相信机器学习这个黑盒子做出的判断呢?也许对人类来说,一个理由对于人类来说是十分重要的,例如下面的一个心理学实验,同样的事情,都是要插队,但是不同的话,可能会让产生不同的想法,所以机器学习需要给人们一个可以让其相信的解释,即使,机器并不是根据此做出判断的。

所以我们需要给出一个理由,让这些人感到合理。

机器学习的可解释性可以分为两部分,分别是Local Explanation和Global Explanation

Local Explanation

Local Explanation也就是判断Why do you think this image is ***的问题,我们可以将图片拆分成很多个component,然后判断哪个component比较重要,去掉之后,network就不工作了。

一种比较简答的方法就是,把每个component都盖住,然后判断network是否还能正常工作。

首先e代表预测结果与真实结果之间的差距,当输入数据有微小变动时,相应的损失也会有变化,然后二者做除法,就可以近似为微分,对每个数据作微分,就可以得到Saliency Map。根据Saliency Map就可以判断模型认为图片的那一部分是很重要的。

在下图的例子中,如果只是简单的得到Saliency Map,会发现有很多"杂讯",草地、天空的因素可能也被考虑了进去,这不具备一个较好的解释性,所以采用SmoothGrad操作,之后就可以突出Gazelle,这样的解释性会更容易让人接受。

不过saliency map会有一些限制,例如大象的鼻子长度很重要,但是并不是鼻子越长越重要,IG对此做了改进。

下面介绍一些常见的网络数据处理过程,我们如何观察这个过程
将每一层的输出通过降维画出来进行分析。

语音数据经过第八个隐藏层之后的输出,就可以发现具有相同内容信息的不同演讲者的数据都聚在一起了。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值