本文用途仅仅是在前人经验下,自我总结,以供以后学习使用,若有错误,敬请您批评指正。
应用背景:深度学习的应用加速了计算机视觉领域的发展,但是随着模型深度的加深,也带来了高额的存储空间、计算资源消耗等问题,很难落实平台。为解决此类问题,提出压缩模型这样的方法,此方法可最大限度地减少模型对计算空间与时间的消耗。可参考:深度学习之模型压缩 - jimchen1218 - 博客园
常用方法:(从数据,模型和硬件多维度的层面来分析,压缩和加速模型的方法。)
- 压缩已有网络模型:张量分解、模型剪枝、模型量化
张量分解:
- 定义:将网络权值当满秩矩阵,可以用多个低秩矩阵来逼近该矩阵。
- 目的:降低时间复杂度。
- 优点:适合模型压缩。
- 缺点:实现并不容易,涉及计算成本高昂的分解操作,且需要大量的重新训练来达到收敛
- 对二维矩阵运算,可选择SVD分解:
- 对于多维矩阵运算,涉及到Tensor,主要是CP分解,Tucker分解,Tensor Train分解,Block Term分解。 <