论文:Learning Deep Features for Discriminative Localization

CAM目标定位

简介

CAM目标定位
CAM全称class activation maps,该技术能让做了分类训练的CNN既能对图片进行分类,又能定位特定类别的图片区域。

CAM

生成类**图(class activation maps)的流程如下:
CAM目标定位
使用类似于network in network,GoogLeNet的网络架构,网络主要由卷积层组成,在最终输出层(分类时为softmax)之前,在卷积特征图上使用全局平均池化,并将其用作产生所需输出的完全连接层的特征。

对于全连接层来讲:
CAM目标定位
其中:

  • fkf_k 表示最后一个卷积层在 (x,y)(x,y)处 的第 kk 个单元(channel)的**值
  • wkcw_k^c 是第 kk 个单元对于类 cc 的权重

因此,对于类 ccScS_c 就是 softmaxsoftmax 层的输入,预测值 Pc=exp(Sc)cexp(Sc)P_c = \frac{exp(S_c)}{\sum_c exp(S_c)}

定义 McM_c 是类 cc 的CAM:
CAM目标定位
类**图就是 fkf_k 在不同 kk (channel)处的加权线性和,通过简单地将类**图向上采样到输入图像的大小,我们可以识别与特定类别最相关的图像区域。

CAM目标定位

CAM目标定位
图四可以看出不同类别的区分区域在相同的图像上也是不同的。

Global average pooling (GAP) vs global max pooling (GMP): 与GMP相比,GAP-loss鼓励网络识别对象的范围,而GMP只鼓励识别一个有区别的部分.

相关文章: