目录
概述
这篇论文提出了一个框架,可以使用弱监督的方法识别一个物体显著的局部特征。其实,这篇文章和Learning Deep Features for Discriminative Localization 类似。但是这篇论文有两个不同:1)它可以识别多个局部区域;而Learning Deep Feature for Discriminative Localization只能识别一个显著的区域。2)这篇文章将WILDCAT应用到了弱监督的语义分割上面。
如下图所示,WILDCAT可以识别狗的头部和腿部信息,从而利用这些信息来对狗进行Localization和segmentation.
从上图我们可以看出,整个网络的架构分成三个部分:最左边是FCN部分,主要是用来提取feature map; 中间的部分是Multi-map transfer layer,主要是将feature map分解为多通道的特征,每个通道对应于一个显著的局部特征;最右边是Pooling操作,主要是将生成的多通道feature map aggregate 到一个值,最后使用image level的ground truth信息进行学习。
全卷积结构
这篇论文的全卷积结果使用的是ResNet-101, 去掉最后一层,并用transfer layer和Pooling layer替代。其参数使用的在ImageNet上训练的参数。
Multi-map transfer layer
这篇文章使用1x1convolution将feature map由w x h x d 转变成 w x h x MC。 其中M代表通道的数目,代表feature map的个数; C表示类别数。
WILDCAT Pooling
由于我们的ground truth是image label,所以需要将transfer layer的信息aggregate到image level。这个Pooling层共有两种操作:1)class-wise pooling 2)spatial pooling。
- Class-wise pooling 是针对每类,将不同通道的feature map 合成一个,其公式如下,其将w x h x MC 转变为 w x h x C。
- Spatial pooling在某种意义上,它是一种general 的Pooling。是一种介于max Pooling和average Pooling之间的操作,除此之外,它还结合了 “negative evidence insight”,即使用了激活值比较低的值。其公式如下所示。其中,
表示激活值最高的k个值。 表示激活值最低的k个值。所以,最后的值与激活最高的k个值和激活最低的k个值相关,并且最后取平均数。所以,可以看出这个操作是2k个激活值的平均值。当然,α可以调节最高激活值和最低激活值之间的比例。
最后我们可以使用这个网络直接训练分类任务。同时,对于弱监督的Localization/detection, 作者使用spatial Pooling 前面的class-level feature map来生成Localization/detection的结果,使用的方法与论文Weakly supervised Localization using deep feature maps的方法类似。对于弱监督的semantic segmentation, 作者使用每个类中激活最大的值或者使用CRF最为最终的预测,方法和论文Semantic Image Segmentation With Deep Convolutional Nets and Fully Connected CRFs类似。
实验结果
- 准确率比Reset-101高3~5个百分点
-
随着α的取值不同,classification的准确率也不同,实验结果如下。可以看出α=0.6时,效果最好。这也说明, negative evidence对最终的分类结果有很大的影响。
-
Ablation study:这个实验表明各个部分是否可以提高实验结果
-
通道的数目:不同通道数的实验结果如下,可以看出M=8时可以取得比较理想的结果。
总结
这篇论文提出了一种框架WILDCAT,可以用弱监督的方法localize物体不同的显著局部特征。并能够取得较好的结果。