论文阅读笔记六十一:Selective Kernel Networks(SKNet CVPR2019)

论文原址:https://arxiv.org/pdf/1903.06586.pdf
github: https://github.com/implus/SKNet
摘要
在标准的卷积网络中,每层网络中神经元的感受野的大小都是相同的。在神经学中,视觉神经元感受野的大小是由刺激机制构建的,而在卷积网络中却很少考虑这个因素。本文提出的方法可以使神经元对于不同尺寸的输入信息进行自适应的调整其感受野的大小。building block为Selective Kernel单元。其存在多个分支,每个分支的卷积核的尺寸都不同。不同尺寸的卷积核最后通过softmax进行融合。分支中不同注意力产生不同的有效感受野。多个SK单元进行堆叠构成SKNet。
介绍
在上世纪猫的前视觉皮层神经元的局部感受野激发了卷积网络的产生。在视觉皮层中,相同区域的神经元的局部感受野的大小是不同的,从而可以在相同的处理阶段中获得不同尺寸的空间信息。该思想被Inception系列网络完美的应用,在其building block中,3x3,5x5,7x7的卷积通过简单的拼接来得到多尺寸信息。
然而,在设计卷积网络时,神经元感受野的其他属性并没有被考虑到。比如感受野尺寸的自适应调整。大量实验证明,视觉皮层的神经元的感受野尺寸是受激励调制的。像Inception这种具有多个分支的网络其内部存在一种潜在的机制可以在下一个卷积层根据输入的内容调整神经元感受野的大小,这是因为下一个卷积层通过线性组合将不同分支的特征进行融合。但是线性组合的方法不足于提供网络强大的调整能力。
本文提出了一种非线性的方法融合来自不同核的特征进而实现感受野不同尺寸的调整。引入了"Selective Kernel"卷积,其包含了三个操作:Split,Fuse,Select,Split操作产生多个不同核尺寸的通道与神经元的不同感受野尺寸相关。Fuse操作组合融合来自多通道的信息从而获得一个全局及可理解性的表示用于进行权重选择。Select操作根据挑选得到的权重对不同核尺寸的feature map进行融合。
Selective Kernel Convolution
本文提出了具有不同尺寸核的SK卷积核用于实现神经元的不同感受野大小。该卷积包含Split,Fuse,Select三个操作,如下图所示。其包含两个分支。因此,本例中只包含两个不同尺寸大小的kernel,可以很容易扩展到多尺寸的卷积核中。

Split:对于任意输入的feature map
,首先进行了两个变换,

,其核的尺寸分别为3x3,5x5,上述两个变换都是由group/depthwise 卷积,ReLU,BN等操作组成。为了进一步提高网络的性能,5x5的卷积核替换为一个dilation为2的3x3的卷积核。
Fuse:本文的目标是实现神经元不同尺寸感受野的自适应调整。一种基本思路是设计一个门机制用于控制流入下一个卷积层中不同分支的信息流。该Gate需要融合所有分支的信息。本文首先进行简单的像素级相加融合。

然后使用全局平均池化操作来编码全局信息,进而产生channel-wise统计信息。
,s中的第c个元素通过在U的HxW维度上进行压缩计算得到。

接下来,会产生一个紧凑的特征
用于精确及调整的选择,通过一个全连接层得到,同时,进行了降维处理。

为了验证W中d的作用,引入了一个衰减率r,如下,其中C代表通道数。

Select: 通道间的soft attention可以选择不同尺寸的信息,其被紧凑的特征信息Z引导。在channel-wise应用softmax操作。

在本例中的两个分支中,B是多余的,因为ac + bc = 1,根据不同核的注意力权重得到的输出特征V如下

网络结构
本文中每个SK单元由一个1x1的卷积,SK卷积,及1x1卷积组成,原网络中所有具有较大尺寸的卷积核都替换为SK卷积从而可以使网络选择合适的感受野大小。在SK单元中,存在一个参数M,用于决定路径的数量,即选择不同卷积核尺寸进行融合的数量。G用于控制每个路径的基数,r用于控制fuse操作中的参数数量。本文实验网络结构如下。

实验








Reference
[1] M. Abdi and S. Nahavandi. Multi-residual networks. arxiv preprint. arXiv preprint arXiv:1609.05672, 2016.
[2] D. Bahdanau, K. Cho, and Y. Bengio. Neural machine translation by jointly learning to align and translate. arXiv preprint arXiv:1409.0473, 2014.
[3] J. Carreira, H. Madeira, and J. G. Silva. Xception: A technique for the experimental evaluation of dependability in modern computers. Transactions on Software Engineering, 1998.
[4] D. Chen, S. Zhang, W. Ouyang, J. Yang, and Y. Tai. Person search via a mask-guided two-stream cnn model. arXiv preprint arXiv:1807.08107, 2018.
[5] Y. Chen, J. Li, H. Xiao, X. Jin, S. Yan, and J. Feng. Dual path networks. In NIPS, 2017.
[6] J. Dai, H. Qi, Y. Xiong, Y. Li, G. Zhang, H. Hu, and Y. Wei. Deformable convolutional networks. arXiv preprint arXiv:1703.06211, 2017.
论文阅读笔记六十一:Selective Kernel Networks(SKNet CVPR2019)的更多相关文章
- 论文阅读笔记六:FCN:Fully Convolutional Networks for Semantic Segmentation(CVPR2015)
今天来看一看一个比较经典的语义分割网络,那就是FCN,全称如题,原英文论文网址:https://people.eecs.berkeley.edu/~jonlong/long_shelhamer_fcn ...
- 论文阅读笔记六十:Squeeze-and-Excitation Networks(SENet CVPR2017)
论文原址:https://arxiv.org/abs/1709.01507 github:https://github.com/hujie-frank/SENet 摘要 卷积网络的关键构件是卷积操作, ...
- 论文阅读笔记(十一)【ICCV2017】:Jointly Attentive Spatial-Temporal Pooling Networks for Video-based Person Re-Identification
Introduction (1)Motivation: 当前采用CNN-RNN模型解决行人重识别问题仅仅提取单一视频序列的特征表示,而没有把视频序列匹配间的影响考虑在内,即在比较不同人的时候,根据不同 ...
- 论文阅读笔记四十一:Very Deep Convolutional Networks For Large-Scale Image Recongnition(VGG ICLR2015)
论文原址:https://arxiv.org/abs/1409.1556 代码原址:https://github.com/machrisaa/tensorflow-vgg 摘要 本文主要分析卷积网络的 ...
- 论文阅读笔记六十五:Enhanced Deep Residual Networks for Single Image Super-Resolution(CVPR2017)
论文原址:https://arxiv.org/abs/1707.02921 代码: https://github.com/LimBee/NTIRE2017 摘要 以DNN进行超分辨的研究比较流行,其中 ...
- 论文阅读笔记六十三:DeNet: Scalable Real-time Object Detection with Directed Sparse Sampling(CVPR2017)
论文原址:https://arxiv.org/abs/1703.10295 github:https://github.com/lachlants/denet 摘要 本文重新定义了目标检测,将其定义为 ...
- 论文阅读笔记五十一:CenterNet: Keypoint Triplets for Object Detection(CVPR2019)
论文链接:https://arxiv.org/abs/1904.08189 github:https://github.com/Duankaiwen/CenterNet 摘要 目标检测中,基于关键点的 ...
- 论文阅读笔记三十一:YOLO 9000: Better,Faster,Stronger(CVPR2016)
论文源址:https://arxiv.org/abs/1612.08242 代码:https://github.com/longcw/yolo2-pytorch 摘要 本文提出YOLO9000可以检测 ...
- 论文阅读笔记六十四: Architectures for deep neural network based acoustic models defined over windowed speech waveforms(INTERSPEECH 2015)
论文原址:https://pdfs.semanticscholar.org/eeb7/c037e6685923c76cafc0a14c5e4b00bcf475.pdf 摘要 本文研究了利用深度神经网络 ...
随机推荐
- POJ3662Telephone Lines(最短路+二分)
传送门 题目大意:n个点p条边,每条边有权值,让1和n点联通,可以将联通1--n的边选k条免费, 求剩下边权的最大值. 题解:二分一个答案x,大于x的边权设为1,小于等于x的边权设为0,跑最短路. 若 ...
- 在Ubuntu18.04.2LTS上安装搜狗输入法
在Ubuntu18.04.2LTS上安装搜狗输入法 一.前言 最近项目使用到了Linux系统,因此就安装了Ubuntu18.04.2这个最新的LTS的OS.整体的使用效果是不敢恭维的,特别是使用虚拟机 ...
- Identity Server4资料
https://www.cnblogs.com/cgzl/p/9405796.html https://www.cnblogs.com/cgzl/p/7780559.html https://clou ...
- multer 文件后缀名
我的代码是这样写的. var storage = multer.diskStorage({ destination: function (req, file, cb) { cb(null, 'uplo ...
- Linux高性能服务器编程,书中的 shell 命令
记录<Linux高性能服务器编程>书里面讲解到的若干 shell 命令 arp 命令查看ARP高速缓存: [root@VM_0_10_centos heliang]# arp -a ? ( ...
- ts缓存批量下载合并
批量下载 curl -O https://cdn-host.media.yunxi.tv/recordM3u8/195820b37cec499da7a4b1b28269c7d0/tranbox/195 ...
- ECMAScript 6.0 简要学习
由于在学习vue的时候有许多自己不懂的语法,于是简单的学习一下ES6. 1.ES简介 ES6, 全称 ECMAScript 6.0 ,是 JavaScript 的下一个版本标准,2015.06 发版. ...
- springboot学习源码
springbootTest 学习源码链接 启动前,需要创建数据库表,修改自己的链接配置 create database test01; use test01; CREATE TABLE catego ...
- C#中文转换为拼音NPinyin代码【转】
项目地址:https://code.google.com/p/npinyin/ 在一个采集的程序中,为了给每个文章起一个别名,据说有很好的别名的话,对于百度.google的收录 是很有好处的.按照Se ...
- Kafka 2.3 Producer (0.9以后版本适用)
kafka0.9版本以后用java重新编写了producer,废除了原来scala编写的版本. 这里直接使用最新2.3版本,0.9以后的版本都适用. 注意引用的包为:org.apache.kafka. ...