PeleeNet:精修版DenseNet,速度猛增至240FPS | NeurIPS 2018
PeleeNet是DenseNet的一个变体,没有使用流行的深度可分离卷积,PeleeNet和Pelee仅通过结构上的优化取得了很不错的性能和速度,读完论文可以学到很多网络设计的小窍门。
来源:晓飞的算法工程笔记 公众号
论文: Pelee: A Real-Time Object Detection System on Mobile Devices

Introduction
基于DenseNet的稠密连接思想,论文通过一系列的结构优化,提出了用于移动设备上的网络结构PeleeNet,并且融合SSD提出目标检测网络Pelee。从实验来看,PeleeNet和Pelee在速度和精度上都是不错的选择。
PeleeNet
PeleeNet基于DenseNet思想,加入了几个关键的改进。
Two-Way Dense Layer

受GoogLeNet的启发,论文将原来的dense layer改为2-way dense layer,如图1b所示,新的路径叠加两个$3\times 3$卷积来学习获取不同的感受域特征,特别是大物体特征。
Stem Block

DenseNet使用stride=2的$7\times 7$卷积对输入进行初步处理,受Inception-v4和DSOD启发,论文设计了一个高效的stem block,结构如图2所示,两条路径能提取不同的特征。这样可以在不带来过多计算耗时的前提下,提高网络的特征表达能力。
Dynamic Number of Channels in Bottleneck Layer

在DenseNet中,使用bottleneck layer进行输入特征的压缩,但是bottleneck layer的输出固定为dense layer输出的4倍。在网络的早些层中,会存在bottleneck layer的输出比输入更多的情况,导致效率下降。为此,论文将bottleneck layer的输出大小跟输入挂钩,保证不大于输入大小,从图4可以看出,修改后计算效率提升了一倍。
Transition Layer without Compression
DenseNet在dense layer间使用transition layer进行特征维度压缩,压缩比为0.5。论文通过实验发现这个操作会减弱网络特征的表达能力,所以将transition layer的输出维度固定为输入的大小,不再压缩。
Composite Function
DenseNet使用Conv-Relu-BN的预激活方式,论文将其修改为Conv-BN-Relu的后激活方式,这样卷积层和BN层在inference时能够进行合并运算,提高计算速度。另外,论文在最后的dense layer添加了$1\times 1$卷积,用以获得更强的特征表达能力。
Architecture

PeleeNet的结构如表1所示,包含一个stem block、4个特征提取阶段以及最后的stride为2的平均池化层。论文纠结使用3个特征提取阶段还是4个特征提取阶段,3个阶段需要stem block更多地缩减特征图大小,考虑到开头过快地减小特征图会大小会减弱网络的表达能力,最终仍采用4个阶段。
Pelee

基于SSD,将PeleeNet作为主干网络并做了几个优化,提出目标检测网络Pelee,主要的优化点如下:
- Feature Map Selection,使用5个尺寸的特征图(19x19, 10x10, 5x5, 3x3, 1x1),为了减少计算消耗,没有使用38x38的特征图。
- Residual Prediction Block,在进行预测之前,使用图4的ResBlock进行特征提取,保证特征表达能力。
- Small Convolutional Kernel for Prediction,由于使用了ResBlock进行了特征的进一步提取,在预测部分可以使用$1\times 1$卷积核加速,准确率与$3\times 3$卷积差不多。
Experiment
PeleeNet

对PeleeNet的key feature进行验证。

与其它轻量级网络对比。


PeleeNet在各种设备上的实际推理速度对比。
Pelee

Pelee与其它网络的设置对比。

各改进措施的性能对比。

与其它网络的在VOC上的性能对比。

各设备上的推理速度对比。

与其它网络的在COCO上的性能对比。
CONCLUSION
PeleeNet是DenseNet的一个变体,没有使用流行的深度可分离卷积,PeleeNet和Pelee仅通过结构上的优化取得了很不错的性能和速度,读完论文可以学到很多网络设计的小窍门
如果本文对你有帮助,麻烦点个赞或在看呗~
更多内容请关注 微信公众号【晓飞的算法工程笔记】

PeleeNet:精修版DenseNet,速度猛增至240FPS | NeurIPS 2018的更多相关文章
- 【转载】NeurIPS 2018 | 腾讯AI Lab详解3大热点:模型压缩、机器学习及最优化算法
原文:NeurIPS 2018 | 腾讯AI Lab详解3大热点:模型压缩.机器学习及最优化算法 导读 AI领域顶会NeurIPS正在加拿大蒙特利尔举办.本文针对实验室关注的几个研究热点,模型压缩.自 ...
- NeurIPS 2018 中的贝叶斯研究
NeurIPS 2018 中的贝叶斯研究 WBLUE 2018年12月21日 雷锋网 AI 科技评论按:神经信息处理系统大会(NeurIPS)是人工智能领域最知名的学术会议之一,NeurIPS 2 ...
- ChannelNets: 省力又讨好的channel-wise卷积,在channel维度进行卷积滑动 | NeurIPS 2018
Channel-wise卷积在channel维度上进行滑动,巧妙地解决卷积操作中输入输出的复杂全连接特性,但又不会像分组卷积那样死板,是个很不错的想法 来源:晓飞的算法工程笔记 公众号 论文: C ...
- 蚂蚁金服“定损宝”现身AI顶级会议NeurIPS
小蚂蚁说: 长期以来,车险定损(通过现场拍摄定损照片确定车辆损失,以作为保险公司理赔的依据)是车险理赔中最为重要的操作环节.以往传统保险公司的车险处理流程,一般为报案.现场查勘.提交理赔材料.审核.最 ...
- 2018 AI产业界大盘点
2018 AI产业界大盘点 大事件盘点 “ 1.24——Facebook人工智能部门负责人Yann LeCun宣布卸任 Facebook人工智能研究部门(FAIR)的负责人Yann LeCun宣布卸 ...
- InfoQ一波文章:AdaSearch/JAX/TF_Serving/leon.bottou.org/Neural_ODE/NeurIPS_2018最佳论文
和 Nested Partition 有相通之处? 伯克利提出 AdaSearch:一种用于自适应搜索的逐步消除方法 在机器学习领域的诸多任务当中,我们通常希望能够立足预先给定的固定数据集找出问题的答 ...
- zz姚班天才少年鬲融凭非凸优化研究成果获得斯隆研究奖
姚班天才少年鬲融凭非凸优化研究成果获得斯隆研究奖 近日,美国艾尔弗·斯隆基金会(The Alfred P. Sloan Foundation)公布了2019年斯隆研究奖(Sloan Research ...
- (转载) AutoML 与轻量模型大列表
作者:guan-yuan 项目地址:awesome-AutoML-and-Lightweight-Models 博客地址:http://www.lib4dev.in/info/guan-yuan/aw ...
- (转)AutoML 与轻量模型大列表: awesome-AutoML-and-Lightweight-Models
Awesome-AutoML-and-Lightweight-Models 原文:http://bbs.cvmart.net/articles/414/zi-yuan-automl-yu-qing-l ...
随机推荐
- C语言中++*x和*++x的区别
++跟*的优先级一样,如果两个同时出现,运算是从右往左(不是常规的从左往右),所以: ++*x即++(*x),先取x的值,然后让值自加1:(地址没变,指针指向的值变了.搞不懂的话自己用快递做例子) * ...
- MySQL5.7.26安装及启动报错解决
一.安装依赖包 [root@db01 ~]# yum install -y lrzsz [文件上传/下载] [root@db01 ~]# yum -y install xfsprogs [安装磁盘格式 ...
- SpringBoot进阶教程(六十八)Sentinel实现限流降级
前面两篇文章nginx限流配置和SpringBoot进阶教程(六十七)RateLimiter限流,我们介绍了如何使用nginx和RateLimiter限流,这篇文章介绍另外一种限流方式---Senti ...
- session在什么时候创建,以及session一致性问题
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/wowwilliam0/article/d ...
- 徐汉彬:Web系统大规模并发——电商秒杀与抢购
摘要:电商的秒杀和抢购,从技术的角度来说,会对Web系统产生巨大的考验.本期<问底>,徐汉彬将带大家关注秒杀和抢购的技术实现和优化,同时,从技术层面揭开,为什么我们总是不容易抢到火车票的原 ...
- [leetcode]450. Delete Node in a BST二叉搜索树删除节点
二叉树变量只是一个地址 public static void main(String[] args) { TreeNode t = new TreeNode(3); help(t); System.o ...
- 论文翻译:2018_Deep Learning for Acoustic Echo Cancellation in Noisy and Double-Talk Scenarios
论文地址:深度学习用于噪音和双语场景下的回声消除 博客地址:https://www.cnblogs.com/LXP-Never/p/14210359.html 摘要 传统的声学回声消除(AEC)通过使 ...
- FSMC全称“静态存储器控制器”。
FSMC全称"静态存储器控制器". 使用FSMC控制器后,可以把FSMC提供的FSMC_A[25:0]作为地址线,而把FSMC提供的FSMC_D[15:0]作为数据总线. (1)当 ...
- 无延时去斗按键实现方法(不好CPU)
这一灵感来源于定时器计数的方法,最后可以实现的效果跟咱们电脑键盘按键的效果一样!我先来介绍下基本原理吧! 采用定时器中断的方法,比如定时器终端我们设置为5ms,我们需要按键按下超过40ms时才算有按键 ...
- TurtleBot 3 & 2i ROS开源实验平台
TurtleBot 3 & 2i ROS开源实验平台,全球更受欢迎的ROS平台. TurtleBot是ROS标准平台机器人,在全球开发人员和学生中深受欢迎.其有3个版本: TurtleBot1 ...