卷积神经网络的加速主要包括两类,硬件加速和软件加速,本篇将总结一下软件加速中网络剪枝所使用的方法。
软件加速可以分为压缩结构和压缩参数两种,压缩结构就是将模型结构简化,设计结构更小、参数更小的网络后,从头开始训练,之前博文中提到的MobileNet及ShuffleNet系列网络就是模型压缩的一种。
压缩参数是在已训练完模型的基础上,对参数进行筛选、转换已达到更少参数和更小结构的结果,包括网络剪枝、低秩估计、参数量化和模型蒸馏等。前面有博文提到了旷视科技在2017年提出的通道裁剪剪枝的一篇论文。
网络剪枝
在常用的深度学习框架中,通常将多维张量转换为矩阵乘法来实现卷积操作,而网络剪枝就是基于矩阵乘法来做的。
Tensorflow中的张量转换为矩阵[N,H,W,C]分别代表batch size,输入特征图高度,输入特征图宽度,通道数。
设输入特征图为4*4大小,卷积核大小为3*3,通道数为2,步长为1:
通道1:

通道2:

Tensorflow中先将张量转换为矩阵,将卷积运算转换为和

本文探讨了卷积神经网络的软件加速方法,主要聚焦于网络剪枝技术。介绍了网络剪枝的基本原理,包括filter level和channel level的剪枝、group level的剪枝以及稀疏矩阵的应用。此外,还讨论了低秩估计等参数压缩技术。
最低0.47元/天 解锁文章
6272

被折叠的 条评论
为什么被折叠?



