Loading

【CompConv】2021-CVPRw-CompConv: A Compact Convolution Module for Efficient Feature Learning-论文阅读

CompConv

2021-CVPRw-CompConv: A Compact Convolution Module for Efficient Feature Learning

来源:ChenBong 博客园

  • Institute:Zhejiang University, The Chinese University of Hong Kong
  • Author:Chen Zhang, Yinghao Xu, Yujun Shen
  • GitHub:/
  • Citation:/

Introduction

之前的压缩工作, 要么压缩大网络, 要么从头设计轻量网络, 本文是通过设计新的轻量/紧凑的卷积算子来节省卷积的计算量 (类似AdderNet的工作)

输出的cout个通道中, 一半由卷积生成, 一半由输入直接生成

image-20210705214007711

Motivation

  • 传统卷积是学习一个特征变换, 将cin维的输入转换到cout维的输出(如图1), CNN的卷积核具有一定的过度参数化和冗余性

Contribution

  • 新的紧凑卷积算子, 利用精心设计的常规卷积计算 + identity 映射来节省卷积特征变换过程中的计算量
  • 分析了CompConv的学习能力与递归计算深度的关系, 提出了控制压缩率的方案
  • 即插即用, 可以替换任何网络中的卷积来节省计算量

Method

Core Unit of CompConv

image-20210705214007711

\(\mathbf{X}=\mathbf{X}_{A} \oplus \mathbf{W} \mathbf{X}_{B}\)

Recursive Computation

image-20210706162127423

\(\mathbf{X}_{B_{i}}=\mathbf{X}_{A_{i+1}} \oplus \mathbf{W}_{i+1} \mathbf{X}_{B_{i+1}} \quad i=0, \cdots, d-1\)

\(C_{o u t}=\sum_{i=1}^{d} 2^{i} C_{p r i m} \qquad(4)\)

计算复杂度FLOPs对比:

\(\mathcal{O}_{\text {Conv }}= H \times W \times k^{2} \times C_{\text {in }} \times C_{\text {out }} \qquad(7)\)

\(\mathcal{O}_{\text {CompConv }}= H \times W \times k^{2} \times\left(C_{\text {in }} \times C_{\text {prim }}+\right. \left.\sum_{i=1}^{d-1}\left(2^{i} C_{\text {prim }}\right)^{2}+2^{d-1} C_{\text {prim }}\right) \qquad(8)\)

&& (8)中最后一项应该要加个平方

自适应递归计算深度

由(4)可以看出, \(C_{out}\) 决定于递归计算的深度d和基本计算通道数 \(C_{prim}\)

如何确定 \(C_{prim}\) ? ==> \(C_{\text {prim }}=\left\lceil\frac{C_{\text {out }}}{2 \times\left(2^{d}-1\right)}\right\rceil\) , \(C_{out}\) 不变的情况下, 递归计算的深度d越大, \(C_{prim}\) 越小, CompConv的计算开销越小, 压缩率越高

如何确定 递归计算的深度d? ==> \(d=\max \left(\log _{2}\left(\max \left(1, \frac{C_{i n}}{C_{0}}\right)\right)+1,3\right)\) , 其中 \(c_0\) 是model-specific 的超参, 取值范围 \(\{32, 64, 128, ...\}\) , set \(C_0\) = 128 for VGG and ResNet

Experiments

Setup

Dataset:

  • ImageNet, CIFAR-10/100, COCO

Ablation

ShuffleBlock

是否加入channel shuffle

image-20210706170155471 image-20210706164438021

Effect of Identical Mapping

identity mapping 的方式

image-20210706164754961

Analysis on Recursion Depth d

递归计算深度d 与 压缩率

image-20210706164909853

main result

VGG16 on CIFAR-10

image-20210706165307694

ResNet on CIFAR-100

image-20210706165408547

ResNet on ImageNet

image-20210706165439132 image-20210706165528434

Faster-RCNN on COCO

image-20210706165514382

Conclusion

Summary

image-20210706170521575

GhostNet是一部分卷积, 一部分线性运算; CompConv是一部分卷积, 一部分identity

pros:

  • 从卷积本身的冗余性出发, 设计新的卷积算子(AdderNet) / 卷积方式(GhostNet, CompConv)

cons:

  • 相当于把一个卷积层拆成了多个子卷积层, 每个子卷积层的计算依赖于前一个子卷积层的计算结果, 不一定会有实际的加速效果

To Read

Reference

CompConv:一种用于高效特征学习的紧凑型卷积模块 - 知乎 (zhihu.com)

Yujun Shen (Damon) (shenyujun.github.io)

CVPR 2020:华为GhostNet,超越谷歌MobileNet,已开源 - 知乎 (zhihu.com)

posted @ 2021-07-06 12:48  ChenBong  阅读(296)  评论(0)    收藏  举报