参考综述文章
* 2017-A Survey of Model Compression and Acceleration for Deep Neural Networks
* 2018-Recent Advances in Efficient Computation of Deep Convolutional Neural Networks
参考博客: https://www.sohu.com/a/232047203_473283 https://www.jianshu.com/p/e73851f32c9f
一、概述
- 目的: 最大程度的减小模型复杂度,减少模型存储需要的空间,也致力于加速模型的训练和推测。
- 主要方法分为:
二、低秩近似
对于二维矩阵运算来说SVD奇异值分解是非常好的简化方法,对于高维矩阵的运算往往会涉及到 Tensor分解方法,主要是CP分解、Tucker分解、Tensor Train分解和Block Term分解等工作。但现在低秩近似不再流行的一个重要原因是现在越来越多网络中采用1×1的卷积,而这种小的卷积使用矩阵分解的方法很难实现网络加速和压缩。而且在大型网络上低秩近似的表现不太好。
三、剪枝
网络剪枝的主要思想就是将权重矩阵中相对“不重要”的权值剔除,然后再重新fine tune 网络进行微调。随机剪枝方法对硬件非常不友好,往往在硬件实现的过程中不一定能够很好地对网络起到加速和压缩的效果,而且一些标准化模块conv2d可能都不能用。后来就使用成块出现的结构化剪枝,包括Filter Pr