Interpretable Explanations of Black Boxes by Meaningful Perturbation【visual explanations】
这篇文章大概三个月之前就被打印下来过,但一直没有仔细阅读。最近终于花两个小时把论文和pytorch代码、作者写的详细代码
稍微啃了一下。写在前面:我虽然介绍的时候有一丢丢不屑,但其实相当佩服作者的,这篇论文在行文结构和实验设计上十分精妙。。
整体来说,该论文提出了一种新的visual explanation方法来解释分类系统。这种方法和LIME、RISE想法基本一致,选取图像中能够最大化Softmax分类值得区域,作为网络的解释。
作者的数学功底(看起来)很强,先将可解释问题抽象成了许多读不懂的数学公式。然后讨论了自己的方法实现,主要是deletion和preservation两种方法,其实原理一样。RISE作者称自己论文中的测评方法就来源于这个启发。
这篇文章亮点在于,作者从各个方面、利用多种实验证明自己方法的有效性,同时使用多种多样的手段展示。使得文章内容丰沛,十分得审稿人的喜欢。
作者的证明主要有:
-
利用bounded perturbation来覆盖不同visual explanation的方法,利用正确类别softmax分数的变化证明自己的解释区域最能够影响network的判断。
Interrogating suppressive effects
注意看row2 middle的图,遮住某种解释里最大的区域之后,反而分数上升了。
此处注意两个实验设计很严谨的地方:一是覆盖的区域是bounding box,可以控制面积(虽然作者也没有真正控制面积)。二是作者看的是softmax分数的上升。
作者写作很好的一个地方在于,分析了为什么row1巧克力酱图片里勺子更重要,可能是因为训练的时候很多巧克力酱的图中有勺子,而没有罐子。这个解释也与我的想法吻合,很多时候network识别图片并不是真的像人一样认识到了事物的本身,比如一只船。有时候系统误以为,船和水交融的状态才是船,或者船的特征里一定包含水的波纹。这种问题一定程度上是由于data biased,训练数据里面都有水。根本上也说明了神经网络还是一个基于规则计算机,不像人一样学习东西可以融会贯通。
deletion实验:作者利用三种不同的模糊方法,证明了如果覆盖visual explanation产生的重点区域,能够迅速降低正确类别的softmax分值。注意:此处使用的是normalized softmax probabilities。下面有公式,不过我觉得作者写错了,这个值应该是负的。我感觉应该是(p0-p)/(p0-pb)
normalized softmax probabilities这个实验和上一个实验差不多,作者证明了自己的方法可以用最小的boundingbox面积实现相应的Softmax分值衰减。
- Adversarial defense
作者先是利用ADVERSARIAL EXAMPLES IN THE PHYSICAL WORLD,代码1、代码2生成adversarial images, 然后利用自己的方法生成对 the top predicted class on the clean and adversarial images的mask,然后利用一个Alexnet网络进行分类。自己生成的mask能够最好的分类clean\adversarial images.
另外!!作者指出,如果用visual explanation mask对adversarial 图像进行覆盖,能够使得图像分类结果里正确类别的Softmax数值上升。甚至超过adversarial的类别分数。
我没有完全看懂作者的意图,但是这个实验是非常出彩的。因为对于adversarial image的研究是可解释很有必要的一个应用。这可以让我们理解,到底是什么地方让网络做出错误的决策。。
网友评论