Grad-CAM的二三事

背景

While these deep neural networks enable superior performance, their lack of decomposability into intuitive and understandable components makes them hard to interpret.Consequently, when today’s intelligent systems fail, they fail spectacularly disgracefully, without warning or explanation, leaving a user staring at an incoherent output, wondering why.

虽然这些深度神经网络有着卓越的表现,但是他们缺乏可分解性,不能转化为直观和易于理解的组件,使得他们很难被解释。因此,当今天的智能系统出现错误时,他会令人失望的出现错误,并且没有警告或者解释,让用户盯着一个不连贯的输出,考虑为什么。

传统的基于规则或者专家系统是高度可解释的,但不是很准确。深度模型通过更好地抽象(更多层)和更紧密的集成(端到端训练)实现更高的性能和准确度。

现在做的就是探索深度神经网络中,解释性和准确性之间的关系。

前向传播、反向传播、反卷积、导向反向传播

对于一个深度卷积神经网络而言,多次卷积核池化后,最后一层卷积层包含了最丰富的特征信息。经过全连接层和softmax这一阶段的信息因为做了展平和全连接,于是对人类来说,里面的信息是难以理解的,很难以可视化的方式展示出来。

上周我们提到,反卷积是可以使图像与原来等大的。利用反卷积我们可以粗略的“看到”卷积神经网络中较深的卷积层所学习到的一些特征。(当然反卷积在语义分割方面也有重要的作用)其实除了反卷积外,还有另一较为经典的方法,导向反向传播——Guided-backpropagation。

反卷积和导向反向传播都是基于反向传播的,区别在于**函数对于梯度的不从处理策略。

传播 RELU处理方式
前向传播 梯度大于0的保留,小于0的赋0
普通反向传播 输入大于0的,相应的梯度传递回去
反卷积 梯度大于0的,梯度传递回去
导向反向传播 输入和梯度都大于0, 对应的梯度传递回去

最开始没明白什么叫做输入大于0的,相应的梯度传递回去,现在看了反向传播的梯度计算公式明白了。
普通反向传播
输入向量x, 经ReLU得到向量r,前向传播误差e,求e对x梯度。
x=(x1,x2,x3,,xk) x = (x_1, x_2, x_3, \cdots, x_k)
r=ReLU(x) r = ReLU(x)
e=forward(r) e = forward(r)
求解过程
KaTeX parse error: No such environment: equation at position 8: \begin{̲e̲q̲u̲a̲t̲i̲o̲n̲}̲ \frac{\mathrm…
m=(r1x1,r2x2,,rkxk) m = (\frac{\partial r_1}{ \partial x_1}, \frac{\partial r_2}{\partial x_2}, \cdots, \frac{\partial r_k}{\partial x_k})
e(r)=(er1,er2,,erk) \nabla e_(r) = (\frac{\partial e}{\partial r_1}, \frac{\partial e}{\partial r_2}, \cdots, \frac{\partial e}{\partial r_k})
exi=eririxi \frac{\partial e}{\partial x_i} = \frac{\partial e}{\partial r_i}\frac{\partial r_i}{\partial x_i}
e(x)=(ex1,ex2,,exk)=e(r)m \nabla e_(x) = (\frac{\partial e}{ \partial x_1}, \frac{\partial e}{\partial x_2}, \cdots, \frac{\partial e}{\partial x_k}) = \nabla e_(r) \otimes m

使用普通的反向传播噪声较多,基本看不出模型学到了什么东西。使用反卷积可以大体看出轮廓但是有大量噪声在物体以外的位置上。导向反向传播基本没有噪声,特征可以很明显的集中在物体上。

但是反卷积或者导向反向传播仅仅是把所有提取到的特征展示出来,不能拿来解释分类的结果,因为他们对类别并不敏感(not class-discriminative)。他会展示出所有的特征,包括不属于这一类的物体的轮廓。

为解决之一问题,我们见到了CAM。

论文浏览

我标注过的论文pdf
Grad-CAM_ Visual explanations from deep networks .pdf

bounding box样例

Grad-CAM的二三事

包含四个数值形成的坐标点,构成一个框型区域

PASCAL VOC 2017

PASCAL VOC为图像识别和分类提供了一整套标准化的优秀的数据集
转载博客,快点我呀,我等不及了

mAP 平均精度均值

快点我呀,我等不及了

参考文章

PASCAL VOC数据集分析
平均精度均值(mAP)——目标检测模型性能统计量
深度学习论文笔记(可解释性)——CAM与Grad-CAM