论文原址: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)的更多相关文章

  1. 论文阅读笔记六:FCN:Fully Convolutional Networks for Semantic Segmentation(CVPR2015)

    今天来看一看一个比较经典的语义分割网络,那就是FCN,全称如题,原英文论文网址:https://people.eecs.berkeley.edu/~jonlong/long_shelhamer_fcn ...

  2. 论文阅读笔记六十:Squeeze-and-Excitation Networks(SENet CVPR2017)

    论文原址:https://arxiv.org/abs/1709.01507 github:https://github.com/hujie-frank/SENet 摘要 卷积网络的关键构件是卷积操作, ...

  3. 论文阅读笔记(十一)【ICCV2017】:Jointly Attentive Spatial-Temporal Pooling Networks for Video-based Person Re-Identification

    Introduction (1)Motivation: 当前采用CNN-RNN模型解决行人重识别问题仅仅提取单一视频序列的特征表示,而没有把视频序列匹配间的影响考虑在内,即在比较不同人的时候,根据不同 ...

  4. 论文阅读笔记四十一:Very Deep Convolutional Networks For Large-Scale Image Recongnition(VGG ICLR2015)

    论文原址:https://arxiv.org/abs/1409.1556 代码原址:https://github.com/machrisaa/tensorflow-vgg 摘要 本文主要分析卷积网络的 ...

  5. 论文阅读笔记六十五:Enhanced Deep Residual Networks for Single Image Super-Resolution(CVPR2017)

    论文原址:https://arxiv.org/abs/1707.02921 代码: https://github.com/LimBee/NTIRE2017 摘要 以DNN进行超分辨的研究比较流行,其中 ...

  6. 论文阅读笔记六十三:DeNet: Scalable Real-time Object Detection with Directed Sparse Sampling(CVPR2017)

    论文原址:https://arxiv.org/abs/1703.10295 github:https://github.com/lachlants/denet 摘要 本文重新定义了目标检测,将其定义为 ...

  7. 论文阅读笔记五十一:CenterNet: Keypoint Triplets for Object Detection(CVPR2019)

    论文链接:https://arxiv.org/abs/1904.08189 github:https://github.com/Duankaiwen/CenterNet 摘要 目标检测中,基于关键点的 ...

  8. 论文阅读笔记三十一:YOLO 9000: Better,Faster,Stronger(CVPR2016)

    论文源址:https://arxiv.org/abs/1612.08242 代码:https://github.com/longcw/yolo2-pytorch 摘要 本文提出YOLO9000可以检测 ...

  9. 论文阅读笔记六十四: Architectures for deep neural network based acoustic models defined over windowed speech waveforms(INTERSPEECH 2015)

    论文原址:https://pdfs.semanticscholar.org/eeb7/c037e6685923c76cafc0a14c5e4b00bcf475.pdf 摘要 本文研究了利用深度神经网络 ...

随机推荐

  1. [Taro] taro中定义以及使用全局变量

    taro中定义以及使用全局变量 错误的姿势 // app.tsx文件中 class App extends Component { componentDidMount() { this.user = ...

  2. 探索 ASP.Net Core 3.0系列三:ASP.Net Core 3.0中的Service provider validation

    前言:在本文中,我将描述ASP.NET Core 3.0中新的“validate on build”功能. 这可以用来检测您的DI service provider是否配置错误. 具体而言,该功能可检 ...

  3. Spring框架spring-web模块中的RestTemplate类详解

    RestTemplate类是spring-web模块中进行HTTP访问的REST客户端核心类.RestTemplate请求使用阻塞式IO,适合低并发的应用场景. 1. RestTemplate类提供了 ...

  4. 【解决错误】Non-reversible reg-exp portion: '(?i'

    在将Django升级到2.1后,运行 Django 自带后台后,或 使用 redirect 方法,就一直报错:Non-reversible reg-exp portion: '(?i'. 错误一 Dj ...

  5. 解决office365无法登录以及同步的问题

    解决office365无法登录以及同步的问题 You better need to test them one by one. You better need to test them one by ...

  6. BFS(四):搜索状态判重

    在采用广度优先算法进行搜索时,一个需要重点注意的是在搜索过程中判重和去重.前面介绍的几个例子中,判重都较简单,如采用vis[]数组,若vis[i]==0,则i未访问过,i入队列:若vis[i]!=0, ...

  7. 基于MicroPython结合ESP8266模块实现TCP通信(AT指令版)

    转载请注明文章来源,更多教程可自助参考docs.tpyboard.com,QQ技术交流群:157816561,公众号:MicroPython玩家汇 实验目的 - 学习ESP8266模块(ESP-01) ...

  8. 练手WPF(二)——2048游戏的简易实现(下)

    接着上一篇继续~~~ 6.动画显示增加分数 /// <summary> /// 动画显示增加得分 /// </summary> /// <param name=" ...

  9. Mvc 入门及基础了解

    用于表示一种软件架构模式.它把软件系统分为三个基本部分 _模型(Model), _视图(View) _和控制器(Controller). 其中主要代码是 路由 配置默认的路径: 默认配置 是 Home ...

  10. netCore3.0+webapi到前端vue(后端)

    第一步创建api项目 创建完成启动F5!! 如图 数据库我用的是mysql 用ef操作数据 开发环境:Win10 + VS2019Mysql服务器版本:8.0.16 1.下载并安装插件(必备) MyS ...