Advertisement

论文笔记:Grad-CAM: Visual Explanations from Deep Networks via Gradient-based Localization

阅读量:

一、这篇论文解决什么问题

模型的可解释性:

  1. 类别判别性(class-discriminative):不同类别画出来的区域不一样
  2. 高分辨率(high resolution):最好是和原图一样,可以找到细粒度的信息,从像素级别可以知道到底是哪部分使得网络预测出相应的类别
  3. 与人类直觉一致

CAM的局限性:

  1. 必须有GAP层,所以得修改模型结构,换来了可解释性的同时牺牲了精度
  2. 必须有GAP层,修改了模型结构后,需要重新训练
  3. 必须有GAP层,所以能应用的场景也有限
  4. 只能分析最后一层卷积操作后的输出

**本文提出的:**Grad-CAM(Gradient-weighted Class Activation Mapping)

二、Grad-CAM、Guided Grad-CAM

Grad-CAM:

如何计算针对第c类的第k个channel的权重:

lpha {k}^{c} = rac{1}{Z}um{i}{}\sum_{j}{}rac{artial y^{c}}{artial A_{ij}^{k}}

,其中

rac{artial y^c}{artial A_{ij}^{k}}

为梯度,且

y^{c}

没必要是类别的预测分数,可以是网络中任何一个可微分的激活值

如何得到Grad-CAM:

L_{Grad-CAM}^{c}=ReLU

,通过ReLU可以过滤无关特征

从公式可以看出,Grad-CAM几乎不受限制,可以用来分析不同层、不同模型、不同任务,是个通用的方法

此外,其实可以从数学上证明,Grad-CAM本质上是CAM的推广

Guided Grad-CAM:

在类别判别性上,单纯的Grad-CAM和CAM差不多,但都不是高分辨率的,而Guided Backpropagation方法是高分辨率的,可以找到细粒度的信息,两者结合就是Guided Grad-CAM

如何得到Guided Grad-CAM:

  1. 得到原图size的Grad-CAM:得到Grad-CAM后,通过上采样方法得到原图size的Grad-CAM
  2. 得到Guided Backpropagation
  3. 将Guided Backpropagation和原图size的Grad-CAM进行逐元素的相乘即可得到Guided Grad-CAM

三、如何评价模型的可解释性好不好

这部分问卷的设计,很好地证明了本文的模型解释是符合人类直觉的,也就是说解释性很强

评价不同可视化方法的类别判别性:

给一张图和选项,如果用户所选和标签一致,证明这种可视化方法比较好:例如下面的两幅图里,第一幅图的可视化方法就不如第二幅图的好,第一幅图很难判断是人还是马,但是第二幅图一看就是人

评价模型本身:

单纯从模型预测结果无法判断模型的好坏,但是有下面这样的可视化,就可以知道,如果都是预测为人,右图对应模型的判断依据更靠谱一些

四、思考

  1. 相比于CAM,Grad-CAM最大的优势还是通用,至于说Grad-CAM可以做到的事情,CAM基本也可以做到
  2. 这篇论文的一个巧妙之处,就是如何评价模型的可解释性与人类直觉是一致的

PS:本文大部分公式和图片都来自于,对本文的理解来自于对论文Grad-CAM: Visual Explanations from Deep Networks via Gradient-based Localization的学习及对同济子豪兄讲解的学习(其实了解过CAM后,对这篇论文的理解就容易得多)有理解不对的地方,欢迎指正

全部评论 (0)

还没有任何评论哟~