概要
给定经过训练的CNN模型,我们提出了一种迭代的两步算法,通过基于LASSO回归的信道选择和最小二乘重建来有效地修剪每一层。
效果可以达到:
VGG-16,4倍加速,Top-5 accuracy 下降0.0%
Xception,2倍加速,Top-5 accuracy 下降1.0%
Faster RCNN,2倍加速,mmAP 下降0.0%
Resnet ,2倍加速,Top-5 Accuracy 1.4%
相关工作
最近的CNN加速工作分为三类:优化实现(例如,FFT [48]),量化(例如,BinaryNet [8])和结构化简化
将CNN转换为紧凑型CNN [22]
结构化简化主要涉及:张量因子分解[22],稀疏连接[17]和信道修剪[49]。
图1.加速CNN的结构化简化方法:
(a)具有3个转换层的网络。
(b)稀疏连接停用通道之间的某些连接。
(c)张量因子分解将卷积层分解为若干个。
(d)通道修剪减少了每层中的通道数量(重点是这一点)
纸)
图2.用于加速卷积层的通道修剪。我们的目标是减少特征映射B的通道数量,同时最小化特征映射C上的重建误差。我们的优化算法(第3.1节)在虚线框内执行,
这不涉及非线性。
c,n:特征映射B和C的通道数,kh×kw:内核大小。
方法
首先为单个层提出通道修剪算法
两个关键点:
- 通道的选择,基于LASSO回归找出代表性渠道和修剪冗余渠道;
- 重建,用具有线性最小二乘的剩余通道重建输出。