深度学习_模型压缩及移动端部署_模型压缩及移动端部署基础知识(持续更新)

为什么要模型压缩?

  1. 深度神经网络模型需要巨大的计算开销和内存开销,严重阻碍了资源不足情况下的使用。
  2. 模型的参数在一定程度上能够表达其复杂性,但并不是所有的参数都在模型中发挥作用,部分参数作用有限、表达冗余,甚至会降低模型的性能。
  3. 复杂的模型固然具有更好的性能,但是高额的存储空间、计算资源消耗使其难以有效的应用在各硬件平台上。

模型压缩定义

模型压缩:指利用数据集对已经训练好的深度模型进行精简,进而得到一个轻量且准确率相当的网络,压缩后的网络具有更小的结构和更少的参数,可以有效降低计算和存储开销,便于部署在受限的硬件环境中。

模型压缩的必要性和可行性

必要性

  1. 资源有限。
  2. 在许多网络中,比如VGG-16网络,参数量达到了1亿3千多万,占用500MB空间,需要进行309亿次浮点运算才能完成一次图像识别任务。

可行性

很多深度神经网络仅仅使用很少一部分(5%)权值就足以预测剩余的权值,而且剩余的权值甚至可以直接不用被学习。也就是说【仅仅训练一小部分原来的权值参数就有可能达到和原来网络相近甚至超过原来网络的性能(可以看作是一种正则化)】。

最终目的

最大程度的减小模型复杂度,减少模型存储需要的空间,也致力于加速模型的训练和推测。

模型压缩方法

你可能感兴趣的:(#,模型压缩及移动端部署)