CC BY 4.0 (除特别声明或转载文章外)
李老师对于模型的可解释性的观点就是能让人开心的的解释,现在的研究现状正在体现这种观点,有可能某种解释不是模型真正决策的原因,但是在人看起来非常符合直觉,所以我们就把它当做模型的可解释性。
自大的人类(笑)


Local Explanation
Important Component


这个原理就是将灰色的方框在图中从左上角开始依次移动直到移动到右下角,每一次将带有灰色方框的图片交给分类模型进行判断。结果图解析:灰色方框所在处的分类模型判断结果,蓝色表示判断错误,红色表示判断正确。
观察可以知道,对于第一张图博美犬,蓝色部分集中到它的脸上,说明灰色方框在博美犬的脸周围时模型判断错误,说明博美犬的脸是 import component,分类模型判断是否是博美犬时是看它的脸,其他两张图片同理。
Saliency Map

相比于 Component,Saliency Map 关注的目标更小,是每个 pixel,对每个 pixel 加一个$\Delta X$然后计算梯度的变化,梯度变化越明显的地方在 Saliency Map 中的亮度越高。也就说明模型是关注这个亮度高的地方。
这是一个有趣的例子,对于用 PASCAL VOC 2007 这个数据集训练出的某个分类器进行计算 Saliency Map,结果发现分类这张图片(马)时,模型竟然关注的是左下角的区域。后续分析原因发现是因为这个数据集中马的照片大部分来自于某个网站,然后这个网站在左下角有水印,所以模型就学习到只要有这个水印就可以认为这种图片是马,这显然不是我们要的,这也体现了模型的可解释性对我们训练模型的帮助。
但是计算梯度也存在缺陷,上图举了一个例子是由鼻子的长度与是大象可能性之间的关系图,我们可以知道,在某个长度之后即使长度进一步变长但是是大象的可能性并不会发生改变,因为那只是鼻子更长的大象(哈哈哈哈),所以如果在那个点之后我们计算出的梯度的变化几乎为 0,就会得到鼻子长度对判断是否是大象没有作用的结论。说明了单纯计算梯度的变化是有一定局限性的。
How a network work?
Visualization

Probing


Global Explanation
What does a filter detect?


从这些模式里面我们可以发现第二层的卷积确实是去挖掘一些基本的模式,比如说类似笔画的东西,比如横线、直线、斜线,而且每一个滤波器都有自己独有的想要挖掘的模式。因为我们现在是在做手写的数字识别,手写数字就是有一些笔画所构成的,所以卷积层里面的每一个滤波器的工作就是去侦测某一个笔画,这件事情是非常合理的。

可以看出我们想单纯找出图片让其对应的数字的信心分数越高越好,结果得到的只是一堆杂讯,考虑到 Adversarial Attack 这个结果还算合理,有可能这就是模型决策的原因,只是人类无法理解,如果想要得到人类更容易接受的解释还需要其他人为的限制。
Constraint from Generator
