3

[paper_reading]-"Learning Efficient Convolutional Networks through Network...

 1 year ago
source link: https://leijiezhang001.github.io/paper-reading-Learning-Efficient-Convolutional-Networks-through-Network-Slimming/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

[paper_reading]-"Learning Efficient Convolutional Networks through Network Slimming"

Posted on 2020-10-26   |   Updated on 2020-11-02

| In Model Compression

, Pruning

| 本文总阅读量 29次

Words count in article: 567 字

|

Reading time ≈ 2 分钟

  剪枝是神经网络加速的重要手段之一,Pruning 中较详细的描述了剪枝的特性与基本方法,Filter-Pruning 则描述了卷积核剪枝的基本方法。Filter Pruning 属于结构化剪枝(Structure Pruners),能在不改变硬件计算单元的情况下,提升网络计算速度。本文[1] 就属于 Filter Pruning 方法,简单有效,较为经典。

1. Framework

  如图 1. 所示,本文提出的方法非常简单:将各通道特征(对应各卷积核)乘以一个尺度系数,并用正则化方法来稀疏化尺度系数。训练后卷积核对应的较小的尺度,则认为其不重要,进行剪枝。最终 Fine-Tune 剩下的网络即可。
  其剪枝及 Fine-Tune 过程如图 2. 所示,可迭代进行,以获得最优的剪枝效果。
  实际操作中用 BN 层中的 γγ 系数来代替该尺度系数。BN 层计算过程为:

z^=zin−μBσ2B+ϵ−−−−−√;zout=γz^+β(1)(1)z^=zin−μBσB2+ϵ;zout=γz^+β
其中 zin,zoutzin,zout 表示 BN 层的输入输出,BB 表示当前 mini-batch,μB,σBμB,σB 表示 mini-batch 中 channel-wise 的均值和方差,γ,βγ,β 为可训练的 channel-wise 的尺度及偏移系数。
  对 γγ 进行 L1 正则化,较小的 γγ 对应的卷积核即认为是不重要的,可裁剪掉。

2. Thinking

  本方法非常简单,但是为什么仅凭较小的 γγ 即可确定对应的卷积核不重要呢?我的思考如下:

  • 为什么不需要考虑卷积核的 L1 值?
    因为 BN 的 μB,σBμB,σB 将输出归一化了,所以卷积核的值幅度对之后没有影响,故其值幅度无法体现其重要性;
  • 为什么不需要考虑 ββ 值?
    因为 ββ 只会影响输出特征的均值,而不会影响输出特征的方差,神经网络的表达能力在于特征的方差,而不是均值,故 γγ 才能体现卷积核的重要性,而 ββ 不能。

3. Reference

[1] Liu, Zhuang, et al. "Learning efficient convolutional networks through network slimming." Proceedings of the IEEE International Conference on Computer Vision. 2017.

----------------- END -----------------
坚持原创技术分享!

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK