可变形的卷积网络

机器学习_深度学习_入门经典(博主免费教学视频系列)

https://study.163.com/course/courseMain.htm?courseId=1006390023&share=2&shareId=400000000398149

本文链接:https://blog.csdn.net/yeler082/article/details/78370795
原文链接:Deformable Convolutional Networks 代码链接:https://github.com/msracver/Deformable-ConvNets

一、首先看看文章的摘要

由于构造卷积神经网络 (CNN) 所用的模块中几何结构是固定的,其几何变换建模的能力本质上是有限的。在我们的工作中,我们引入了两种新的模块来提高卷积神经网络 (CNN) 对变换的建模能力,即可变形卷积 (deformable convolution) 和可变形兴趣区域池化 (deformable ROI pooling)。它们都是基于在模块中对空间采样的位置信息作进一步位移调整的想法,该位移可在目标任务中学习得到,并不需要额外的监督信号。新的模块可以很方便在现有的卷积神经网络 (CNN) 中取代它们的一般版本,并能很容易进行标准反向传播端到端的训练,从而得到可变形卷积网络 (deformable convolutional network)。大量的实验验证了我们的方法在目标检测和语义分割这些复杂视觉任务上的有效性。

二、进一步的分析

这是一种对传统方块卷积的改进核,本质是一种抽样改进。

谈到抽样,人脑好像天生知道如何抽样获得有用特征,而现代机器学习就像婴儿一样蹒跚学步。我们学会用cnn自动提取有用特征,却不知用什么样的卷积才是最有效的。我们习惯于方块卷积核窗口,而Jifeng Dai的work认为方块不是最好的形状。

标准卷积中的规则格点采样是导致网络难以适应几何形变的“罪魁祸首”。为了削弱这个限制,研究员们对卷积核中每个采样点的位置都增加了一个偏移的变量。通过这些变量,卷积核就可以在当前位置附近随意的采样,而不再局限于之前的规则格点。这样扩展后的卷积操作被称为可变形卷积(deformable convolution)。

三、用图说话

图1:展示了卷积核大小为 3x3 的正常卷积和可变形卷积的采样方式,(a) 所示的正常卷积规律的采样 9 个点(绿点),(b)(c)(d) 为可变形卷积,在正常的采样坐标上加上一个位移量(蓝色箭头),其中(c)(d) 作为 (b) 的特殊情况,展示了可变形卷积可以作为尺度变换,比例变换和旋转变换的特殊情况

事实上,可变形卷积单元中增加的偏移量是网络结构的一部分,通过另外一个平行的标准卷积单元计算得到,进而也可以通过梯度反向传播进行端到端的学习。加上该偏移量的学习之后,可变形卷积核的大小和位置可以根据当前需要识别的图像内容进行动态调整,其直观效果就是不同位置的卷积核采样点位置会根据图像内容发生自适应的变化,从而适应不同物体的形状、大小等几何形变。然而,这样的操作引入了一个问题,即需要对不连续的位置变量求导。作者在这里借鉴了之前Spatial Transformer Network和若干Optical Flow中warp操作的想法,使用了bilinear插值将任何一个位置的输出,转换成对于feature map的插值操作。同理,类似的想法可以直接用于 (ROI) Pooling中改进。

Figure 2 展示了可变形卷积框架,首先通过一个小卷积层(绿色)的输出得到可变形卷积所需要的位移量,然后将其作用在卷积核(蓝色)上,达到可变形卷积的效果。

Figure 3 展示了可变形兴趣区域池化框架。首先通过标准的兴趣区域池化(绿色)获得兴趣区域对应的特征,该特征通过一个全连接层得到兴趣区域每个部位的位移量。用该位移作用在可变形兴趣区域池化(蓝色)上,以获得不局限于兴趣区域固定网格的特征

Figure 4 展示了两层结构,拥有标准固定感受野的卷积层 (a) 与拥有自适应感受野的可变性卷积层(b)。最上方是两个在不同大小的物体上的激活单元,中间是该单元所需的采样位置,最下方是中间的采样点分别所需的采样位置

Figure 5 对可变形卷积的效果进行了可视化,其中左中右分别展示了激活单元(绿点)倒推三层可变形卷积层以后在背景/小物体/大物体上的所采样的点

Figure 6 对可变形兴趣区域池化的效果进行可视化,使用了 R-FCN,兴趣区域网格大小为 3x3,可以发现现在池化区域基本覆盖在物体上。

Table 1 在各种方法和各种数据集上,使用不同层数的可变形卷积对结果带来的影响,其中 DeepLab 在 VOC2012 与 Cityscapes 的训练集上进行训练,在验证集上进行测试,class-aware RPN, Faster R-CNN 与 R-FCN 在 VOC2007 与 VOC2012 的训练验证集上进行训练,在 VOC2007 的测试集上进行测试。

四、可变卷积网络的新思路:简明深刻的网络结构变革

可变形卷积单元具有诸多良好的性质。它不需要任何额外的监督信号,可以直接通过目标任务学习得到。它可以方便地取代任何已有视觉识别任务的卷积神经网络中的若干个标准卷积单元,并通过标准的反向传播进行端到端的训练。是对于传统卷积网络简明而又意义深远的结构革新,具有重要的学术和实践意义。它适用于所有待识别目标具有一定几何形变的任务(几乎所有重要的视觉识别任务都有此特点,人脸、行人、车辆、文字、动物等),可以直接由已有网络结构扩充而来,无需重新预训练。它仅增加了很少的模型复杂度和计算量,且显著提高了识别精度。例如,在用于自动驾驶的图像语义分割数据集(CityScapes)上,可变形卷积神经网络将准确率由70%提高到了75%。

此外,通过增加偏移量来学习几何形变的思想还可方便地扩展到其它计算单元中去。例如,目前业界最好的物体检测方法都使用了基于规则块采样的兴趣区域(region of interests, ROI)池化(pooling)。在该操作中,对于每个采样的规则块增加类似的偏移量,从而得到可变形兴趣区域池化 (deformable ROI pooling)。由此所获得的新的物体检测方法也取得了显著的性能提升。

近年来,与神经网络结构相关的研究工作层出不穷,大多是对于各种基本网络单元连接关系的研究。不同于大部分已有的工作,可变形卷积网络首次表明了可以在卷积网络中显式地学习几何形变。它修改了已使用二十余年的基本卷积单元结构,在重要的物体检测和语义分割等计算机视觉任务上获得了重大的性能提升。

可以想象,在不远的未来,在更多的计算机视觉识别任务中(如文字检测、视频物体检测跟踪等)都将看到它的成功应用。

https://study.163.com/provider/400000000398149/index.htm?share=2&shareId=400000000398149(博主视频教学主页)

原文地址:https://www.cnblogs.com/webRobot/p/11785576.html

时间: 2024-08-28 19:09:49

可变形的卷积网络的相关文章

深度卷积网络CNN与图像语义分割

转载请注明出处: http://xiahouzuoxin.github.io/notes/ 级别1:DL快速上手 级别2:从Caffe着手实践 级别3:读paper,网络Train起来 级别3:Demo跑起来 读一些源码玩玩 熟悉Caffe接口,写Demo这是硬功夫 分析各层Layer输出特征 级别4:何不自己搭个CNN玩玩 级别5:加速吧,GPU编程 关于语义分割的一些其它工作 说好的要笔耕不缀,这开始一边实习一边找工作,还摊上了自己的一点私事困扰,这几个月的东西都没来得及总结一下.这就来记录

R-FCN:基于区域的全卷积网络来检测物体

http://blog.csdn.net/shadow_guo/article/details/51767036 原文标题为"R-FCN: Object Detection via Region-based Fully Convolutional Networks ",作者代季峰 1,14年毕业的清华博士到微软亚洲研究院的视觉计算组,CVPR 16 两篇一作的会议主持人~ ╰(°▽°)╯ 同时公布了源码~ 2 后面主要内容为原文随便的翻译或概括.必有不紧贴原文原意之处,曲解请指出,否则

深度卷积网络

深度卷积网络 涉及问题: 1.每个图如何卷积: (1)一个图如何变成几个? (2)卷积核如何选择? 2.节点之间如何连接? 3.S2-C3如何进行分配? 4.16-120全连接如何连接? 5.最后output输出什么形式? ①各个层解释: 我们先要明确一点:每个层有多个Feature Map,每个Feature Map通过一种卷积滤波器提取输入的一种特征,然后每个Feature Map有多个神经元. C1层是一个卷积层(为什么是卷积?卷积运算一个重要的特点就是,通过卷积运算,可以使原信号特征增强

全卷积网络 FCN 详解

背景 CNN能够对图片进行分类,可是怎么样才能识别图片中特定部分的物体,在2015年之前还是一个世界难题.神经网络大神Jonathan Long发表了<Fully Convolutional Networks for Semantic Segmentation>在图像语义分割挖了一个坑,于是无穷无尽的人往坑里面跳. 全卷积网络 Fully Convolutional Networks CNN 与 FCN 通常CNN网络在卷积层之后会接上若干个全连接层, 将卷积层产生的特征图(feature m

基于图卷积网络的图深度学习

基于图卷积网络的图深度学习 先简单回顾一下,深度学习到底干成功了哪些事情! 深度学习近些年在语音识别,图片识别,自然语音处理等领域可谓是屡建奇功.ImageNet:是一个计算机视觉系统识别项目, 是目前世界上图像识别最大的数据库,并且被业界熟知. 我们先回顾一下,没有大数据支撑的欧式深度学习技术.对于一个字母"Z"的识别,我们通常是建立一个2D网格(点阵),如果将其中的点连接起来,定义这样的连接方式所形成的就是"Z".然后是用其他字母来测试,这个模型的正确性. 传统

使用Caffe完成图像目标检测 和 caffe 全卷积网络

一.[用Python学习Caffe]2. 使用Caffe完成图像目标检测 标签: pythoncaffe深度学习目标检测ssd 2017-06-22 22:08 207人阅读 评论(0) 收藏 举报  分类: 机器学习(22)  深度学习(12)  版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] 2. 使用Caffe完成图像目标检测 本节将以一个快速的图像目标检测网络SSD作为例子,通过Python Caffe来进行图像目标检测. 必须安装windows-ssd版本的Ca

卷积网络训练太慢?Yann LeCun:已解决CIFAR-10,目标 ImageNet

卷积网络训练太慢?Yann LeCun:已解决CIFAR-10,目标 ImageNet Kaggle近期举办了一场 关于CIFAR-10数据集的竞赛,该数据集包含有6万个32*32的彩色图像,共分为10种类型,由 Alex Krizhevsky, Vinod Nair和 Geoffrey Hinton收集而来. 很多竞赛选手使用了卷积网络来完成这场竞赛,其中一些在该分类任务中靠着超乎人类能力的表现而得分.在本系列的博客中,我们将会分别采访三位选手和卷积网络之父.Facebook人工智能实验室主任

TensorFlow 中的卷积网络

TensorFlow 中的卷积网络 是时候看一下 TensorFlow 中的卷积神经网络的例子了. 网络的结构跟经典的 CNNs 结构一样,是卷积层,最大池化层和全链接层的混合. 这里你看到的代码与你在 TensorFlow 深度神经网络的代码类似,我们按 CNN 重新组织了结构. 如那一节一样,这里你将会学习如何分解一行一行的代码.你还可以下载代码自己运行. 感谢 Aymeric Damien 提供了这节课的原始 TensorFlow 模型. 现在开看下! 数据集 你从之前的课程中见过这节课的

1. CNN卷积网络初识

1. 前言 卷积神经网络是一种特殊的深层的神经网络模型,它的特殊性体现在两个方面, 它的神经元间的连接是非全连接的, 同一层中某些神经元之间的连接的权重是共享的(即相同的). 它的非全连接和权值共享的网络结构使之更类似于生物 神经网络,降低了网络模型的复杂度(对于很难学习的深层结构来说,这是非常重要的),减少了权值的数量. 2. CNN卷积网络结构 我们先重整体的角度观察一下CNN卷积网络的结构: 上图的结构从左到右是,输入层.卷积层(Convolution Layer).池化层(Pooling