可变形卷积系列(三) Deformable Kernels,创意满满的可变形卷积核 | ICLR 2020
论文提出可变形卷积核(DK)来自适应有效感受域,每次进行卷积操作时都从原卷积中采样出新卷积,是一种新颖的可变形卷积的形式,从实验来看,是之前方法的一种有力的补充。
来源:晓飞的算法工程笔记 公众号
论文: Deformable Kernels: Adapting Effective Receptive Fields for Object Deformation
- 论文地址:https://arxiv.org/abs/1910.02940
- 代码地址:https://github.com/hangg7/deformable-kernels
Introduction
传统的卷积由于存在硬性的规则,在对于物体放大或旋转时,不能作出适应性的改变,而可变形卷积则通过改变输入的采样位置来进行适应性的改变,即改变理论感受域。但理论感受域并不能度量像素对输出的贡献,相比理论感受域,更重要的是有效感受域(ERF),通过计算输出对应输入的偏导获得(与卷积权重相关),改变理论感受域只是改变有效感受域的一种手段。
为此,论文提出可变形卷积核(Deformable Kernels, DK),用于进行可变形建模的新型卷积操作,在推理时根据输入直接生成新的卷积核来改变有效感受域。如图d,DK学习卷积核的偏移来对原卷积进行重新采样,而不改变输入数据。从实验结果来看,DK对分类任务和检测任务都十分有效,结合旧的可变形卷积方法能产生更好的结果。
Approach
对有效感受域概念不感兴趣的可以直奔后面对可变形卷积核的描述,前面有效感受域的介绍不影响后面内容。
A Dive into Convolutions
2D Convolution
大小为K×KK\times KK×K,stride为1的二维卷积操作如公式1,输出为目标区域像素与卷积核乘积的和,K=[−K/2,K/2]2\mathcal{K}=[-K/2,K/2]^2K=[−K/2,K/2]2。
Theoretical Receptive Field
卷积层单个输出相对于上一层的输入的感受域大小为卷积核大小K×KK\times KK×K,当卷积层叠加起来时,单个输出的对应的隔层感受域也会因此而叠加,得到的叠加区域即理论感受域,与卷积核大小KKK和网络深度nnn线性相关。
Effective Receptive Field
由于卷积的叠加以及非线性激活的引入,理论感受域内的像素对输出的贡献各不相同,可以使用有效感受域(ERF)来度量区域内每个像素对输出的影响,通过计算输出对应像素值的偏导得到,具体可以看参考论文。
Analysis on Effective Receptive Fields
这里主要分析如何根据输入和一系列卷积来计算有效感受域,先分析线性卷积网络的情景,再拓展到非线性卷积网络。
对于线性卷积网络,给定I(0)I^{(0)}I(0)为输入图片以及stride为1的K×KK\times KK×K卷积权重合集{W(s)}s=1n\{W^{(s)}\}_{s=1}^n{W(s)}s=1n,公式1可以展开为公式2,特征图III和卷积权重WWW的上标以及卷积核位置kkk的下标为层数s∈[1,n]s\in [1, n]s∈[1,n]。
根据ERF的定义,输出坐标jjj对应输入坐标iii的有效感受域值R(n)(i;j)=∂Ij(n)/∂Ii(0)\mathcal{R}^{(n)}(i;j)=\partial I_j^{(n)} / \partial I_i^{(0)}R(n)(i;j)=∂Ij(n)/∂Ii(0)计算为公式3,1[⋅]\Bbb{1}[\cdot]1[⋅]为指示函数。公式3的意义为所有从iii到jjj的路径的权重和,权重的计算为卷积核权重的累积,有效感受域值跟输出的采样位置jjj、卷积核位置kkk以及卷积核权重{W(s)}\{W^{(s)}\}{W(s)}有关。
假设将第mmm个卷积核W(m)W^{(m)}W(m)替换为1×11\times 11×1卷积核Wk~m(m)W_{\tilde{k}_m}^{(m)}Wk~m(m),ERF的计算会变为公式4,S=[1,n]S=[1,n]S=[1,n]\ mmm即不包含mmm层,这里每条路径权重直接乘上Wk~m(m)W_{\tilde{k}_m}^{(m)}Wk~m(m),因为mmm层只有一个路径,符合指示函数的路径必定包含kmk_mkm。
K×KK\times KK×K卷积可以看成分散在矩形区域内的K2K^2K2个1×11\times 11×1卷积,因此,公式3可以改写成公式5,将mmm层的K×KK\times KK×K卷积看成多个1×11\times 11×1卷积,相对的输出位置也要进行相应的修改(这里应该为j−kmj-k_mj−km比较合适)。
对于复杂的非线性卷积,在公式1中加入ReLU激活得到公式6,即每层卷积都接激活函数。
非线性版本的有效感受域值计算为上式,因子C\mathcal{C}C使得ERF值变成与数据相关,实际中的有效感受域是不规则的形状,包含许多不规则分布的零值。
需要注意,公式4和公式5的计算是线性的,使得有效感受域值计算能与内核的线性采样操作兼容,比如使用双线性插值获得小数位置的内核值,即可以认为内核采样等对数据进行线性ERF采样(ERF与输出的采样位置jjj、卷积核位置kkk以及卷积核权重{W(s)}\{W^{(s)}\}{W(s)}有关),这种兼容性也可以相似地推广到非线性的情况下。基于以上的分析,论文提出可变形卷积核(Deformable Kernels, DK)。
Deformable Kernels(DK)
DK添加了可学习的核偏移值,使得输出的计算从公式1变为公式7,ERF的计算也变成了与核偏移值相关的公式8。由于偏移值通常包含小数,使用双线性插值来计算偏移后的值。
原卷积核的大小称为score size,一般DK对scope size是没有约束的,即可以从大小为K′K^{'}K′的原卷积中采样出K2K^2K2的新卷积,然后用于大小为K2K^2K2区域上。这样网络能够尽可能使用更大的原卷积而不会带来太多的额外计算,论文最大的原卷积为9×99\times 99×9。
如图2,DK有两种实现形式,全局模式和局部模式,G\mathscr{G}G为可学习的核偏移值生成器,将输入块转换为内核的偏移值:
- 全局模式Gglobal\mathscr{G}_{global}Gglobal的实现为global average pooling层+全连接层,分别用于降维以及输出2K22K^22K2个偏移值。
- 局部模式Glocal\mathscr{G}_{local}Glocal的实现为与目标卷积大小一样的卷积操作,输出为2K22K^22K2维,最终输出为2K2×1×12K^2\times 1\times 12K2×1×1。
全局模式更关注整体图片,根据整图进行核偏移,而局部模式则更关注图片的局部区域,对于小物体,生成形状特别的核(值差异大),从而使得ERF更密集,而对于大物体,生成较扁平的核(值差异小),使得ERF更广阔。一般情况下,局部模式的自由度更高。
Computation Flow of Deformable Kernels
图5展示了局部DK的计算示意图,偏移值生成器根据输入生成偏移值,将目标卷积的点均匀平铺在原卷积中,然后根据偏移值进行偏移,使用双线性插值计算偏移后的权重更新目标卷积,最后使用目标卷积对输入进行卷积输出。
前向时,给予原卷积WWW和学习到的卷积核偏移{Δk}\{ \Delta k \}{Δk},结合双线性插值B\mathcal{B}B生成目标卷积W′W^{'}W′,然后使用目标卷积对输入进行常规的卷积输出。
DK的反向传播需要生成3种梯度:
- 前一层特征图的梯度
- 当前层原生卷积的梯度
- 当前层偏移值生成器的梯度
前两种的计算方法与普通的卷积一样,第三种则使用公式13结合双线性插值的计算方法。
Link with Deformable Convolutions
DK的核心是学习适应输入的偏移值来原卷积进行采样,从而达到可变形的目的,整体思想可能与可变形卷积类似。
可变形卷积的计算如公式9,主要是对数据进行偏移,而有效感受域则为公式10。如前面说到的,有效感受域与输出的采样位置以及卷积核位置有关,这在一定程度上了解释可变形卷积为何适用于学习形状多变的目标。
假设同时对数据和核进行偏移,输出的计算以及有效感受域的计算如公式11,尽管两种方法的目的是类似的,但在实际中发现,两种方法协作能够带来很好更好的效果。
Experiments
实验主要针对深度卷积(depthwise convolutions)进行优化,内核偏移不能超过越过score size。基础模型为ResNet-50-DW和MobileNetV2,对比实验加入条件卷积(Conditional Convolutions)和可变形卷积(Deformable Convolutions)的对比。
Image Classification
Object Detection
What do Deformable Kernels Learn?
将MobileNet-V2的最后一层卷积进行t-SNE降维得到可视化结果,点的颜色为类别(10类)或bbox尺寸(10等分),对比DK和条件卷积,条件卷积学习到语义相关的特征,而DK则学习到尺寸相关的特征,这解释了前面的实验两种方法同时使用效果更好。
对不同的卷积的有效感受域进行了可视化,可变形卷积与DK都能产生类似的适应ERF,但可变形卷积倾向于更广阔的响应,DK则倾向于集中在物体内部,两者结合效果最佳。
CONCLUSION
论文提出可变形卷积核(DK)来自适应有效感受域,每次进行卷积操作时都从原卷积中采样出新卷积,是一种新颖的可变形卷积的形式,从实验来看,是之前方法的一种有力的补充。
如果本文对你有帮助,麻烦点个赞或在看呗~
更多内容请关注 微信公众号【晓飞的算法工程笔记】
可变形卷积系列(三) Deformable Kernels,创意满满的可变形卷积核 | ICLR 2020相关推荐
- 可变形卷积神经网络 | Deformable Network
论文标题:Deformable Convolutional Networks 论文链接:https://arxiv.org/abs/1703.06211 所要解决的问题 视觉识别的关键挑战是如何在对象 ...
- Deformable Convolutional可变形卷积回顾
点击上方"AI公园",关注公众号,选择加"星标"或"置顶" 作者:Sik-Ho Tsang 编译:ronghuaiyang 导读 使用可变形 ...
- 可变形卷积学习(RepPoints)
近来在学习anchor-free网络,看到了可变形卷积(Deformable Convolutional Networks(DCN))的内容,大致总结一下,便于后面回顾. 可变形卷积可从以下三篇论文去 ...
- 可变形卷积在视频学习中的应用:如何利用带有稀疏标记数据的视频帧
卷积层是卷积神经网络的基本层.虽然它在计算机视觉和深度学习中得到了广泛的应用,但也存在一些不足.例如,对于某些输入特征图,核权值是固定的,不能 适应局部特征的变化,因此需要更多的核来建模复杂的特征图幅 ...
- 可变形卷积网络--Deformable Convolutional Networks
https://arxiv.org/abs/1703.06211 Microsoft Research Asia Code coming soon 本文可以看做是对 Spatial Transform ...
- 深度学习之 DCN(Deformable Convolution)-可变形卷积
Paper link: http://openaccess.thecvf.com/content_ICCV_2017/papers/Dai_Deformable_Convolutional_Netwo ...
- 更灵活、有个性的卷积——可变形卷积(Deformable Conv)
作者简介 CW,广东深圳人,毕业于中山大学(SYSU)数据科学与计算机学院,毕业后就业于腾讯计算机系统有限公司技术工程与事业群(TEG)从事Devops工作,期间在AI LAB实习过,实操过道路交通元 ...
- 可变形卷积(Deformable Convolution)
可变形卷积 前言: 一.可变形卷积 1.原文摘要(Abstract) 2.可变形卷积 前言: 之前分了两次将深度学习中常用的各种卷积操作进行了汇总介绍,具体包括标准2D卷积.1×1卷积.转置卷积.膨胀 ...
- 可变形卷积(Deformable Conv)原理解析与torch代码实现
1. 可变形卷积原理解析 1.1 普通卷积原理 传统的卷积操作是将特征图分成一个个与卷积核大小相同的部分,然后进行卷积操作,每部分在特征图上的位置都是固定的. 图1 普通卷积过程 图1所示为普通卷积在 ...
最新文章
- 关于.h .cpp和inline的讨论
- python的os模块批量获取目标路径下的文件名
- aspx写入mysql_Asp.net用户登陆数据库验证与注册写入数据库
- mybatis学习(52):扩展结果的展现
- 建设网站需要的Bootstrap介绍与操作
- 互联网晚报 | 3月13日 星期日 |​ ​​上海加强疫情防控:非必要不离沪;MasterGo宣布上线Figma文件导入功能...
- 关于flex布局学习分享
- Scikit-Learn简单操作
- Python 读取文本文件编码错误解决方案(未知文本文件编码情况下解决方案)
- 配置 sql server linux,配置SQL Server on Linux(2)
- JavaScript的优势和劣势
- 案例分析:数据驱动增长的数据虚荣与彷徨
- 【科创人独家】华旦天使张洁:风口是创业者的造物,投资本质是件农活
- 校园卡查询系统C语言,校园卡帐号的查询方法
- 胡昌泽day5_循环语句
- Linux/Centos nethogs 按进程监控网络带宽
- 解决tplink wn726 无线网卡在linux下不能使用的问题
- ffmpeg学习笔记
- 成都计算机博士点,2017学位授权审核结果公示!快看四川高校新增哪些博士点?...
- 作文经典好词好句好段摘抄大全
热门文章
- 北风修仙笔记—2020年3月
- HDU 4489 The King’s Ups and Downs(组合DP)
- SpringSecurity实现数据库认证
- 分享我见到的培训面试和就业的情况(同时给出建议)
- 51单片机之共阳数码管
- openstack云计算平台 2(计算服务、Networking 服务、命令行方式启动实例)
- graphviz画图之张柏芝前夫是谢霆锋
- win10修复tcp驱动服务器,怎么解决tcpip.sys文件导致蓝屏|Win10的tcpip修复工具
- CC2530+RFX2401启用功放过程小结
- 【无标题】打印水仙花(pyth)