谢谢大家点开这篇文章,话说最近的天气开始冷了,为了避免换季感冒,小编只能裹着大毛毯上班了,大家也要注意保暖呦,这个季节感冒太不好受了,爱你们哟,比心比心。
新智元报道
来源:arXiv、知乎
作者:Xizhou Zhu et. al. 编辑:肖琴
结果更好,在COCO基准测试中比上个版本提升了5个点。
如何适应这些复杂的几何形变是物体识别的主要难点,也是计算机视觉领域多年来关注的核心问题。
微软亚洲研究院视觉计算组提出了 “Deformable Convolutional Networks”(可变形卷积网络),首次在卷积神经网络(CNN)中引入了学习空间几何形变的能力,得到可变形卷积网络(Deformable ConvNets),从而更好地解决了具有空间形变的图像识别任务。
图像中的物体形状本来就是千奇百怪,方框型的卷积核,即使卷积多次反卷积回去仍然是方框,不能真实表达物体的形状,如果卷积核的形状是可以变化的,这样卷积后反卷积回去就可以形成一个多边形,更贴切的表达物体形状,从而可以更好地进行图像分割和物体检测。
首次表明在深度卷积神经网络(deep CNN)中学习空间上密集的几何形变是可行的。
例如,激活单元的样本倾向于集中在其所在对象的周围。然而,对象的覆盖是不精确的,显示出超出感兴趣区域的样本的扩散。在使用更具挑战性的COCO数据集进行分析时,研究人员发现这种倾向更加明显。这些研究结果表明,学习可变形卷积还有更大的可能性。
MSRA视觉组发布可变形卷积网络的升级版本:Deformable ConvNets v2 (DCNv2),论文标题也相当简单粗暴:更加可变形,更好的结果!
论文地址:
https://arxiv.org/pdf/1811.11168.pdf
体现在两种互补的形式:
第一种是网络中可变形卷积层的扩展使用。配备具有offset学习能力的更多卷积层允许DCNv2在更广泛的特征级别上控制采样。
其中每个样本不仅经过一个学习的offset,而且还被一个学习特征调制。因此,网络模块能够改变其样本的空间分布和相对影响。
需要进行有效的训练。受神经网络的knowledge distillation这一工作的启发,我们利用教师网络来实现这一目的,教师在训练期间提供指导。
可变形模块仍然是轻量级的,并且可以容易地结合到现有网络架构中。
我们将DCNv2合并到Faster R-CNN 和Mask R-CNN 系统,并具有各种backbone网络。在COCO基准测试上的大量实验证明了DCNv2相对于DCNv1在物体检测和实例分割方面都有显着改进。
我们将在不久后发布DCNv2的代码。
图1:常规ConvNet、DCNv1以及DCNv2中conv5 stage最后一层节点的空间支持。
图3:利用R-CNN feature mimicking的训练
结果
表4:COCO 2017 test-dev set 中各种backbones上的DCNv2、DCNv1和regular ConvNets的结果。
DCNv2和regular ConvNets(Faster R-CNN + ResNet-50 / ResNet-101)的APbbox分数。
表6:DCNv2、DCNv1和regular ConvNets的ImageNet分类准确度。
(1) 增加更多的 Deformable Convolution
还能学习每个采样点的权重(modulation)
(3)模拟 R-CNN 的 feature(knowledge distillation)
在 DCNV1 中只有 ResNet 的 Conv5 stage 中有 Deformable Conv,在 DCNV2 中把 Conv3-Conv5 的 3x3 convolution 都换成了 Deformable Conv
Deformable Conv 只学习 offset:
加入了对每个采样点的权重:
其中
对于某些不想要的采样点权重可以学成 0。
其实作者是我)发现把 R-CNN 和 Faster RCNN 的 classification score 结合起来可以提升 performance,说明 R-CNN 学到的 focus 在物体上的 feature 可以解决 redundant context 的问题。但是增加额外的 R-CNN 会使 inference 速度变慢很多。DCNV2 里的解决方法是把 R-CNN 当做 teacher network,让 DCNV2 的 ROIPooling 之后的 feature 去模拟 R-CNN 的 feature。(图里画的很清楚了)
其中 feature mimic 的 loss 定义是:
在 end-to-end train 的时候这个 loss 给了一个 0.1 的 weight。
在 ResNet-50 backbone COCO 上跟 DCNV1 比涨了 5 个点!这比目前大部分 detection paper 靠东拼西凑涨的那一两个点要强多了。我惊讶的是和 DCNV1 对比,在 image classification 上也有很大的提升。
DCNV2 方法简单,结果好,分析充分,我觉得和近期各种 detection paper 比算是业界良心了。我觉得还有可以学习的一点就是 context 的问题。很多 detection 的 paper 都在引入 context(大家都 claim 说小物体需要引入 context 来解决),其实我个人觉得有点在扯淡,物体小最直接的方法难道不是放大物体来解决吗?比如 SNIP/SNIPER 都是在 “放大” 物体。所以在 context 这个问题上我(详情见 [1] 和[2])跟 Jifeng 他们的看法是一样的,我们也许不需要那么多没用的 context。作者都是熟人,我也不多吹了,反正我是准备去 follow 这个工作了哈哈。
其实就是速度的问题。因为没有 cudnn 的加速,DCN 完全是靠 im2col 实现的(从目前的 MXNet 版本来看是这样的),当 batchsize 大的时候我感觉速度会比有 cudnn 加速的 3x3 conv 慢。很好奇当 batchsize 大的时候(比如 ImageNet)的 training 时间会慢多少。希望以后能和 dilated convolution 一样被加到 cudnn 里支持吧。
放张 network 的图(宣传一下自己的工作),DCN V2 的 mimic R-CNN 和 DCR V1 的结构类似,但是通过 knowledge distillation 很巧妙的在 inference 阶段把 R-CNN 给去掉了。
[1] Revisiting RCNN: On Awakening the Classification Power of Faster RCNN
[2] Decoupled Classification Refinement: Hard False Positive Suppression for Object Detection
COCO涨了5个点!
知乎用户孔涛的评价:
这是一篇干货满满,novelty 和 performance 双赢的 paper (COCO 直接涨了~ 5 个点啊)。
再加上之前在 MSRA 跟 Jifeng 及 CV 组的小伙伴共事过一段时间,努力给出客观的评价吧。
从 Deform ConvNet V1 说起
即所谓的几何形变问题(Geometric variations)。就拿人检测来讲,人的姿态有多种多样(想想跳舞的场景),这就需要我们设计的模型具备 deformation 的能力。通常情况下为了解决这类问题有两种思路:(a) 收集更多样的数据用于模型的训练;(b) 设计 transformation invariant 的特征来提升模型多样化能力。
对 transformation-invariant feature 的比较成功的尝试。思想非常直观,在标准的卷积核上加入了可学习的 offset,使得原来方方正正的卷积核具备了形变的能力。
deformable convolution
在大型的 object detection/instance segmentation 任务上的表现还蛮抢眼的。
Deform ConvNet V2 在干啥
Deform ConvNet 是在解决如何让学到的 offset 能更聚焦到感兴趣的物体上边,也就是提取到更聚焦的 feature 来帮助物体的识别定位。在下边的图片中,我们当然希望模型的 feature 能够聚焦到物体上边,这样才能提取到更有意义的 supporting feature。
作者主要用了几种策略:
这个不必细说;
这样既学到了 offset,又有了每个位置的重要性信息;
文章已经写完了,分开也是必然的,虽然分别的时候总是难受的,但是不再相见不等于,我不会想念大家,也希望你们能想念小编,毕竟小编的文章在你们的脑海中留下了一丝的痕迹,可能有那么一天,你们会想起小编写的这篇文章,祝福你们,最后能不能给小编点点关注,可以的话,留下只言片语也好!
领取专属 10元无门槛券
私享最新 技术干货