本文主要是介绍模型剪枝——RETHINKING THE VALUE OF NETWORK PRUNING,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.概述
神经网络的过度参数化是众所周知的,导致在推理时计算成本高,内存占用大。作为解决办法,网络剪枝被认为是提高有限计算预算应用中深度网络效率的有效技术。典型的剪枝算法包括三个阶段:训练(一个大型模型)、剪枝和微调。
-
普遍信念的挑战:
- 大模型训练的必要性:普遍认为从大型网络开始训练是重要的,因为它可以生成高性能模型。但研究发现,对于结构化剪枝方法,直接训练目标模型可以获得同样或更好的性能,表明训练大型网络并不是必要的。
- 重要权重的继承:剪枝算法通常保留被认为重要的权重,这些权重通常被认为对于获得高效模型至关重要。然而,研究表明,对于小型剪枝后的模型来说,大模型中学习到的所谓“重要”的权重并不一定有用。
-
重要结论:
- 对于所有检验的最先进的结构化剪枝算法,从剪枝模型中微调得到的性能与从随机初始化的权重训练该模型相比,并没有显示出优势,有时甚至更差。
- 对于那些假定预定义目标网络架构的剪枝算法,可以直接训练目标网络而不需要完整的剪枝流程。
- 在多个网络架构、数据集和任务中,这些观察结果一致,意味着:
- 训练一个大型的、参数过多的模型通常不是获得高效最终模型的必要条件。
- 大模型中学习到的“重要”权重对于小型剪枝模型通常不是必要的。
- 对于最终模型的效
这篇关于模型剪枝——RETHINKING THE VALUE OF NETWORK PRUNING的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!