IEEE International Conference on Image Processing (ICIP)-2018
文章目录
1 Background and Motivation
随着深度学习技术的发展,CNN 在 image classification / semantic segmentation / object detection 等视觉任务中已大显身手,然而 CNN 模型往往 require enormous computational resources and huge model sizes,这严重限制了其在 mobile or embedded devices 上的应用!
因此,CNN 的压缩与加速吸引着深度学习社区的关注
作者从加速的角度出发, 提出 a Fast Down-sampling Strategy(30X down-sampling within the first 12 layers),避免 shrinking channels 的压缩方式带来精度的过度损失,同时达到压缩模型的作用
2 Related Work
现有压缩与加速方法可以大致分为如下 4 类
-
Tensor decomposition methods(low rank)
把 conv layer 分解成几个 smaller conv layer,
缺点:slow training procedure -
Parameter quantization methods
加速虽然猛,但是往往需要配合 hardware 才能激发最大功效 -
Network pruning
unstructured pruning scheme 会带来 random memory access,现在聚焦在 structured pruning scheme 的比较多 -
Compact networks
light-weight CNN network,比如
1)ShuffleNet(组卷积 induces frequent memory / cache switches —— multiple information path,实际在移动端跑起来会很慢)
2) MobileNet(相比 shuffleNet,在移动端更快,但是由于 slow down sampling strategy 策略,当 computation budget 较小时,性能很有限——information capacity)
3)squeezeNet
3 Advantages / Contributions
- 在 mobilenet 的基础上提出的 FD-MobileNe 网络,采用 Fast Down-sampling 策略来进行网络加速
- 在 ARM-based device 中实际推理速度比 mobilenet 和 shufflenet 快很多,
- 在 ImageNet 和 PASCAL VOC 上精度也 mobilenet 高!在 ImageNet 中精度和 shuffleNet 相仿
4 Method
1)Depth-wise Separable Convolutions
参考 【MobileNet】《MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications》
2)Fast Down-sampling Strategy
4X down-sampling within the first 2 layers
32X down-sampling within the first 12 layers
consecutively applying depth-wise separable convolutions with large strides at the beginning of networks
3)Remaining Layers
由于前面 down-sampling 很快,所以省下了很多 computation budget,省下了不能浪费,都作用在了 last stage 上(7×7)
在 140 MFLOPs 预算下,很奢侈的用到了一个 1×1 Conv,1024
!这样能带来更多的 information capacity
4)Overall Architecture
Table 1
24 layers——1 conv + 11 depth-separable conv(由 3×3 depth-wise conv 和 1×1 point-wise conv 两层构成) + 1 FC
表达上引入了 【MobileNet】 的压缩方式—— α \alpha α,Table1 展示的为 FD-MobileNet 1×
5)Inference Efficience
借鉴 MobileNet,采用的是 one information path(not shuffleNet)
好处是 very friendly to engineering implementation and efficient on physical devices
5 Experiments
5.1 Datasets
- ILSVRC 2012 dataset(ImageNet)
- PASCAL VOC 2007 dataset
5.2 Results on ILSVRC 2012 dataset
vs mobilenet 和 shufflenet
分别在 ≈140,≈40 and ≈12 MFLOPs 的算力下进行对比
比 mobilenet 好很多,比 shuffleNet 差点,作者的解释是 shufflenet unit 中用到了 bypass connection
作者继续说:
bypass structure induces frequent memory / cache switches and harms the actual inference speed
5.3 Results on PASCAL VOC 2007 dataset
分别在 ≈140,≈40 and ≈12 MFLOPs 的算力下进行对比
算力越小,提升越明显
5.4 Actual Inference Time Evaluation
实际速度,FD-MobileNet 会比 shufflenet 快很多
作者分析:
On low-power devices,the bypass connection structure leads to frequent memory and cache switch,which slows down the actual inference speed.
感觉应该指的是 skip connection 结构,而不是 group conv 的 shuffle 操作!
但不 skip 效果又不太好,比如 mobilenet,后续的 mobilenet v2 / v3,shufflenet v2 又对结构上进行了改进!
6 Conclusion(own)
- shufflenet / mobilenet 的缺点
- mobilenet 竟然没有用到 skip connection ,amazing,看来🧠真是个好东西!
- fast downsampling,有点集中力量办大事的感觉!牺牲前面演习的过程,所有资源集中在最后一个 stage,实战演练成长