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个尺寸的特征图(19×19, 10×10, 5×5, 3×3, 1×1),为了减少计算消耗,没有使用38×38的特征图。
  • 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仅通过结构上的优化取得了很不错的性能和速度,读完论文可以学到很多网络设计的小窍门



如果本文对你有帮助,麻烦点个赞或在看呗~
更多内容请关注 微信公众号【晓飞的算法工程笔记】

人已赞赏
值得一看官方公告科技

Hadoop 专栏 - MapReduce 入门

2021-1-21 14:57:17

5GIT主机评测云计算互联网值得一看区块链官方公告手机智能热门事件科学科技通讯

EnvironmentPostProcessor怎么做单元测试?阿里P7解答

2021-1-21 14:57:22

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索