专栏首页晓飞的算法工程笔记可变形卷积系列(二) MSRA提出升级版DCNv2,变形能力更强 | CVPR 2019
原创

可变形卷积系列(二) MSRA提出升级版DCNv2,变形能力更强 | CVPR 2019

论文提出DCNv2,不仅对DCNv1的结构进行了改进,还使用了有效的蒸馏学习策略,使得性能有很大的提升,各个方面都值得借鉴undefined 

来源:晓飞的算法工程笔记 公众号

论文: Deformable ConvNets v2: More Deformable, Better Results

Introduction


  在提出可变形卷积DCNv1后,论文提出新版本的可变形卷积DCNv2,通过两种互补的策略以及蒸馏学习来增强模型的性能:

  • 增加可变形卷积的层数,使得DCNv2拥有更强的几何变换的学习能力,能够进行准确地预测。
  • 在可变形卷积模块中增加调制机制,每次采样不仅进行偏移,还会使用学习到的权重进行调节,能够进行更复杂的几何变换学习。
  • 为了充分榨干DCNv2提升的能力,借用知识蒸馏的方法进行训练,以R-CNN作为指导网络(teacher network),在训练时模仿其特征值。

Analysis of Deformable ConvNet Behavior


Spatial Support Visualization

  论文从3个互补的视角来了解图像区域对输出的影响:

  • Effective sampling / bin locations,通过计算输出值对应像素位置上的梯度来表示像素的重要程度。
  • Effective receptive fields,理论感受域内的像素对输出的贡献是不一样的,贡献可以通过有效感受域来表示,通过计算输出值对应每个像素的值扰动时的梯度得出,具体可以看参考内容文章。
  • Error-bounded saliency regions,通过逐步掩盖图片的部分区域并计算输出值,找到与整图输出值差异在阈值范围内的最小显著区域。

Spatial Support of Deformable ConvNets

  对conv5阶段的最后一层输出进行了上述的3个视角计算,图1从左往右目标的逐渐变大,每个子图从上往下分别为关于绿点输出的3种指标的可视化结构,可以得出以下结论:

  • 得益于深度卷积网络强大的表达能力,常规卷积能在一定程度上对几何变换进行建模学习,主要受卷积权重的影响。
  • 通过引入可变形卷积,综合卷积核权重以及偏移值,模型能够很好地对几何变换进行建模学习,输出关联了更多的目标区域,但也会包含较多不相关的物体的区域。

  论文继续对RoI区域也进行了上述3个视角的计算,对于常规RoI pooling和可变形RoI pooling,目标区域内的bin对输出的贡献更高,在可变形RoI pooling更为明显。但两种方法的显著区域同样都不够准确,造成有较多的额外内容干扰着输出。

More Deformable ConvNets


Stacking More Deformable Conv Layers

  由于可变形卷积能够更好地学习几何变换,因此大胆地将ResNet-50中的conv3、conv4和conv5中的所有$3\times 3$卷积替换成可变形卷积,共12层。DCNv1仅使用了3层,主要由于当时替换实验是在比较简单的VOC数据集上进行的,效果很快就饱和了,而当时在COCO上的偏移值可视化有一定的误导性,本文补充了更准确的实验。

Modulated Deformable Modules

  为了进一步加强可变形卷积对几何变换学习的能力,加入调制机制,可变形卷积不仅能对输入进行偏移,还可以调整各位置输入的权重。极端地,当权重为0则忽略该位置输入,为模型提供了另一种调整目标区域的方式。

  可调制变形卷积如公式1,$\Delta p_k$和$\Delta m_k$分别为$k$位置的可学习偏移值和权重标量,$\Delta m_k$的范围为$0,1$,偏移后的值的计算依然用双线性插值计算。$\Delta p_k$和$\Delta m_k$通过相同旁路卷积层计算,旁路输出channel为$3K$,$K$为主干的卷积核大小,前$2K$维是每个位置的x和y偏移,后$K$维通过sigmoid层获得每个位置的权重。旁路卷积的参数初始为0,所以$\Delta p_k$和$\Delta m_k$初始为0和0.5,学习率为主干学习率的0.1倍。

  可调制的变形RoI pooling单个bin的计算如公式2,$n_k$为bin内的像素总数,$\Delta p_k$和$\Delta m_k$对应整个bin的偏移和权重。$\Delta p_k$和$\Delta m_k$通过旁路RoI pooling+2 x 1024-D fc + 3k-D fc计算,前$2K$维是归一化的bin偏移值,与RoI区域相乘后得到最终的bin偏移值,后$K$维通过sigmoid层获得每个bin的权重,初始化和学习率与上面的一致。

R-CNN Feature Mimicking

  从图2的Error-bounded saliency regions结果看到,不管常规卷积还是可变形卷积都会包含部分非目标区域,对最终的结果造成影响。论文通过实验发现,可调制变形卷积虽然有更强的几何变换建模能力,但常规的训练没有特定的损失,很难引导可调制变形卷积的学习。因此,考虑到性能和准确率的取舍,论文加入特征模仿(feature mimicking)引导可变形卷积生成类似R-CNN从croped图片中提取到的特征。由于背景的内容较为复杂,特征模仿损失仅用于正样本。

  整体的训练架构如图3,添加额外R-CNN分支用于特征模仿,分支的结构与主干网络类似。对于RoI区域$b$,从原图中crop下来并Resize后送到R-CNN分支得到$14\times 14$的特征图,再进行整图的可调制变形RoI pooling,通过两层全连接得到1024-D特征$f_{RCNN}(b)$,最后接$C+1$-way Sfotmax分类器预测分类结果。

  特征模仿损失通过余弦相似度的计算,如公式3,$\Omega$为用于特征模仿的所有RoI区域。在训练时,每次随机采样32个RPN生成的正样本构成$\Omega$,同时计算特征模块损失和R-CNN分支的分类交叉熵损失。RCNN分支的两个新损失的权重为主干对应项权重的0.1倍,RCNN分支除了最后的classification head外的模块均与主干共享。在推理时,仅使用Faster R-CNN模块。

Experiments


Enriched Deformation Modeling

  对DCNv2的两个结构改进进行了对比实验,表1和表2分别为短边1000和短边800的实验,结合图1和图2的可视化结果,两个改进都能有效地提高准确率。

R-CNN Feature Mimicking

  对于特征模仿学习,仅模仿正样本的效果最好。

Application on Stronger Backbones

Conclusion


  论文提出DCNv2,不仅对DCNv1的结构进行了改进,还使用了有效的蒸馏学习策略,使得性能有很大的提升,各个方面都值得借鉴。

参考内容

如果本文对你有帮助,麻烦点个赞或在看呗~undefined更多内容请关注 微信公众号【晓飞的算法工程笔记】

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • CSG:清华大学提出通过分化类特定卷积核来训练可解释的卷积网络 | ECCV 2020 Oral

    论文: Training Interpretable Convolutional Neural Networks by Differentiating Clas...

    VincentLee
  • 可变形卷积系列(三) Deformable Kernels,创意满满的可变形卷积核 | ICLR 2020

    论文: Deformable Kernels: Adapting Effective Receptive Fields for Object Deformati...

    VincentLee
  • DRConv:旷视提出区域感知动态卷积,多任务性能提升 | CVPR 2020

    目前主流的卷积操作都在空间域进行权值共享,而如果想得到更丰富的信息,只能通过增加卷积的数量来实现,这样不仅计算低效,也会带来网络优化困难。与主流卷积不同,loc...

    VincentLee
  • 深入理解卷积神经网络中的卷积

    小白也能看懂的TensorFlow上手系列 作者 | Divyanshu Mishra

    磐创AI
  • Network In Network

    本文主要是对 CNN网络中的 卷积层中使用 的 linear filter 改进的。很显然 有 线性就有非线性,非线性的表达能力要更加强大。这里使用一个 小网...

    用户1148525
  • 漫谈图神经网络 (二)

    在从图(Graph)到图卷积(Graph Convolution): 漫谈图神经网络 (一)中,我们简单介绍了基于循环图神经网络的两种重要模型,在本篇中,我们将...

    Houye
  • 用TensorFlow做Kaggle“手写识别”达到98%准确率-详解

    这是一个TensorFlow的系列文章,本文是第三篇,在这个系列中,你讲了解到机器学习的一些基本概念、TensorFlow的使用,并能实际完成手写数...

    用户1332428
  • 微软资深研究员详解基于交错组卷积的高效DNN | 公开课笔记

    用户1737318
  • 深度学习时代您应该阅读的10篇文章了解图像分类

    计算机视觉是将图像和视频转换成机器可理解的信号的主题。利用这些信号,程序员可以基于这种高级理解来进一步控制机器的行为。在许多计算机视觉任务中,图像分类是最基本的...

    计算机视觉联盟
  • 专栏 | MSRA视觉计算组提出第二代可变形卷积网络,增强形变,更好效果

    为了有效地利用这一更强的形变建模能力,研究员们提出了一种利用更精细的驱动力量来引导网络学习的方法,具体来说,考虑到 R-CNN 框架在进行候选框特征提取时能排除...

    机器之心

扫码关注云+社区

领取腾讯云代金券