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


    CompConv

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

    • 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}_{ ext {Conv }}= H imes W imes k^{2} imes C_{ ext {in }} imes C_{ ext {out }} qquad(7))

    (mathcal{O}_{ ext {CompConv }}= H imes W imes k^{2} imesleft(C_{ ext {in }} imes C_{ ext {prim }}+ ight. left.sum_{i=1}^{d-1}left(2^{i} C_{ ext {prim }} ight)^{2}+2^{d-1} C_{ ext {prim }} ight) qquad(8))

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

    自适应递归计算深度

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

    如何确定 (C_{prim}) ? ==> (C_{ ext {prim }}=leftlceilfrac{C_{ ext {out }}}{2 imesleft(2^{d}-1 ight)} ight ceil) , (C_{out}) 不变的情况下, 递归计算的深度d越大, (C_{prim}) 越小, CompConv的计算开销越小, 压缩率越高

    如何确定 递归计算的深度d? ==> (d=max left(log _{2}left(max left(1, frac{C_{i n}}{C_{0}} ight) ight)+1,3 ight)) , 其中 (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)

  • 相关阅读:
    spring 动态创建数据源
    现有‘abcdefghijkl’12个字符,将其所有的排列按字典序进行排序,给出任意一组排列,说出这租排列在所有排列中是第几小的
    javaweb项目运行时错误
    StringUtils.isEmpty和StringUtils.isBlank用法和区别
    启动项目时tomcat问题汇总
    hibernate 在web.xml中配置的作用
    Java几种常见的编码方式
    struts学习总结
    Javaweb开发中关于不同地方出现的绝对路径和相对路径
    解决中文乱码问题
  • 原文地址:https://www.cnblogs.com/chenbong/p/15001603.html
Copyright © 2020-2023  润新知