简介模型压缩与加速的一些方法

具体方法:

  1. Shuffle Net:
    将feature map按照channel进行分组。每个卷积核只对某一组进行运算,从而降低了参数量和计算量。为了防止由于分组导致局部特征得不到共享,每经过一次卷积操作,就将channel进行随机打乱。
  1. Mobile Net:
    标准的卷积层,参数是KKMN,其中M,N分别是输入和输出的channel数目。采用Depthwise Conv和PointWise Conv相结合的方式,代替标准卷积核。 需要参数是KKM + 11MN

计算量 MACC (multiply-accumulate operation 乘法累加运算)

标准卷积: KKMNHoutWout
Mobile Net: K
KMHoutWout + 11MNHoutWout

  1. 分解卷积:
    将KK的卷积核分解成1K和K*1的

  2. BottleNeck
    以ResNet为例,降维、卷积、升维

  3. SqueezeNet:分为Squeeze和Expand两部分,Squeeze听起来像是降维,因为要求(Squeeze层的输出S11 < input map number),Expand层分为两个分支,1×1的卷积和3*3的卷积,最后将两个分支的输出拼接起来。

参考链接
https://zhuanlan.zhihu.com/p/67871864

你可能感兴趣的:(简介模型压缩与加速的一些方法)