2021李宏毅机器学习笔记--13 Network Compression
摘要
未来有可能将深度学习技术应用于一些移动设备上,但是这些设备有可能存储空间或者资源受到限制,不能存放过深或者过大的模型,也或者受限于计算能力,network不能有太多层或者太多参数。所以说network compression这件事非常重要,本篇文章着重介绍一些让network变小的方式。
一、Network Pruning(修剪)
1.1基本思想
神经网络的参数很多,但其中有些参数对最终的输出结果贡献不大而显得冗余,将这些冗余的参数剪掉的技术称为剪枝。剪枝可以减小模型大小、提升运行速度,同时还可以防止过拟合。
剪枝分为one-shot和iteration剪枝:
one-shot剪枝过程:训练模型–> 评估神经元(或者kernel、layer)的重要性–>去掉最不重要的神经元–> fine-tuning–>停止剪枝。
iteration剪枝过程:训练模型–> 评估神经元(或者kernel、layer