fickleNet论文笔记
@(论文笔记)
abstract
弱监督学习的语义分割最大的阻碍是难以从粗糙的图像级标记中获取像素级的信息。大多数基于图像级标记的方法是利用的从分类器获取的位置映射图,但是他们仅仅集中在对象的具有鉴别性的部分,不能够捕捉准确的边界信息。FickleNet探索了从通用CNN获取的特征图位置的各种组合。它随机地挑选隐藏单元,并使用他们来获得为分类的激活得分。FickleNet隐形地学习了那些特征图的位置的一致性,得到一个既识别对象具有鉴别性的部分,又识别其他的部分的位置图。通过随机地挑选隐藏单元,从单一网络就能够获取全集效应,这意味着可以从单一图像中生成各种位置信息图。我们的方法不要求任何额外的训练步骤,只在标准的CNN网络中添加简单的一层。尽管如此,它任然优于最近的在弱监督和半监督学习下的Pascal Voc 2012标准数据集训练的对比方法。
输入图像,经过卷积层提取对象特征,这里在每个卷积层加入一个隐藏单元随机挑选的步骤,增加了最后某一个分类的位置映射图的随机性,并不唯一的映射到对象的具有鉴别性的部分,使得对单张图像求出的位置图每次都不一样,具有一定随机性,同时有具对象收敛性。对同一分类,进行多次求位置特征图后进行整合,形成一个对象较好的分割。
对滑动窗口的随机灭活,实质上实现了卷积模板的变形。
本文贡献
- 提出了FickleNet,基于随机灭活的方法发现了图像位置关系,扩大了分类器所激活的区域。
- 提出一种仅多加一点GPU代价,能够让本文算法更快的放大特征图的方法
- 在弱监督和半监督学习下载VOC2012数据集实现了最好表现
- a朴素实现,要求在每个滑动窗口处调用dropout和卷积函数。这会大大增大计算量,一次运算复杂度(h*w)
- b使用映射扩张的实现。只需要运行一次步长为s的卷积。输入特征图扩张至连续地滑动核而不会重叠。
具体地方式是,首先将 w ∗ h w*h w∗h图像用0填充的方法扩大至 k ∗ ( w + s − 1 ) ∗ ( h + s − 1 ) k*(w+s-1)*(h+s-1) k∗(w+s−1)∗(h+s−1),实现卷积前与卷积后图像尺寸不变;再将图像尺寸放大至 k ∗ s w ∗ s h k*sw*sh k∗sw∗sh(这里不明白为什么不直接放大至这个尺寸)
算法过程。
针对弱监督学习,使用DeepLab-vgg16的图像分割的性能对,以及使用ResNet DeepLab的图像分割方法性能对比
针对半监督学习,分割方法性能对比
从结果图直观上看,不论是弱监督学习还是半监督学习,结果都不理想。
对于FickleNet,随着dropout rate的增加,mIou在增大。作者的解释是随着dropout rate的增大,能够让具有强鉴别能力的单元灭火,有效地抑制分类激活区域,增加非鉴别性部分的区域,从而增加分割对象的区域。
a 使用图直观说明dropout rate对分类激活区域的影响
b 表说明迭代推理位置图次数N对模型性能的影响,N在达到200次时收敛。