![b5dd87e8052427853f04a8578398f796.png](https://img-blog.csdnimg.cn/img_convert/b5dd87e8052427853f04a8578398f796.png)
首发于公众号 TowardsDeeplearning 来自专辑 《从零入门剪枝系列》
今天分享的论文是:Learning both Weights and Connections for Efficient Neural Networks。
这篇论文是 Han Song 在模型压缩方面很重要的论文。论文介绍了通过 magnitude 来学习重要连接,方法主要包括三个部分:1.训练一个网络,学习哪个连接是重要的 2.裁剪掉不重要的连接 3. 重新训练网络微调剩下连接的权重。
最终剪枝的结果,在 ImageNet 数据集上, Han Song 的方法把 Alexnet 参数减少9倍, 参数量从 61 million 到 6.7 million, 无精度损失。在 VGG 上,参数量减少13倍,从 138 million 到 10.3 million,也是无精度损失。背景
为什么要剪枝,这个其实很好理解,CNN模型虽然很好用,但是面临着模型比较大,在手机等移动设备上时,对能耗和网络带宽都是负担。因此需要剪枝去减小算力的消耗,节省资源。在实际工作中,剪枝其实已经变成了必不可少的一道工序了,我遇到最夸张的需求就是将一个1T算力的模型剪枝到10G以内,真的是很夸张。
论文细节
论文的剪枝方法包括三步,见图1,和卷积训练不同,模型学习的是连接的重要性,而不是权重(虽然权重大小表