一种卷积神经网络模型的压缩方法及装置制造方法及图纸

技术编号:31917536 阅读:65 留言:0更新日期:2022-01-15 13:00
本发明专利技术公开了一种卷积神经网络模型的压缩方法及装置,所述方法包括如下步骤:步骤S1,对原始卷积神经网络模型的每个卷积通道的重要性因子γ使用动态正则化约束,进行稀疏化训练,使模型的有效权重尽量集中在重要性因子较大的通道中,获得稀疏的稀疏卷积神经网络模型;步骤S2,根据稀疏卷积神经网络模型的通道重要性因子的大小,执行全局通道剪枝剪除不重要的通道,得到压缩后的剪枝卷积神经网络模型。型。型。

【技术实现步骤摘要】
一种卷积神经网络模型的压缩方法及装置


[0001]本专利技术涉及卷积神经网络
,特别是涉及一种卷积神经网络模型的压缩方法及装置。

技术介绍

[0002]机器视觉领域是人工智能的重要分支,在自动驾驶和安防等场景下有着广泛应用。以卷积神经网络为代表的深度学习算法在目标检测等任务上表现优异,但卷积神经网络模型由于巨大的参数量和计算资源开销,难以在内存和计算资源稀缺的边缘计算平台上部署。实际应用中,除了对算法高精度的需求外,大量的应用领域还对算法的运行速度有严苛要求。在计算资源一定的条件下,卷积神经网络模型的算力消耗和运行效率存在矛盾对立,需要对网络的精度表现和运行速度进行权衡。而计算资源受限的场景下无法获得高性能GPU加速,对卷积神经网络模型进行压缩的需求十分迫切。
[0003]为解决此问题,学者们提出了剪枝、量化、权重分解等方法压缩网络。网络剪枝是指去除网络中不重要的权值、卷积核、卷积层等结构,从而减少卷积的计算量;权值量化是指采用更少的比特位宽的方式存储权重和参与运算,具有代表性的权值量化方法包括二值量化、三值量化、八位量化以及混合精度量化等;权重分解是指将参与存储和运算的权重矩阵以低秩矩阵进行表示,常见的权重低秩分解包括奇异值分解和张量分解等方式。
[0004]但上述方法均有各自的不足:上述剪枝算法通常未进行稀疏化训练或以固定正则化项约束进行稀疏化训练,无法充分挖掘卷积神经网络中的冗余,导致剪枝效率低下且压缩精度损失较大;量化方法降低了卷积神经网络权重存储的位宽,但并未降低卷积神经网络的计算量;权重分解的方法更改了网络的权重结构,难以与其他压缩方法结合形成组合压缩策略,扩展性受限。

技术实现思路

[0005]为克服上述现有技术存在的不足,本专利技术之目的在于提供一种卷积神经网络模型的压缩方法及装置,通过动态正则化约束卷积通道重要性因子γ进行稀疏化训练,再进行全局通道剪枝的方法,从而极大地提高了剪枝效率,改善了剪枝效果。本专利技术中的卷积通道重要性因子γ指卷积神经网络中卷积通道对应的批归一化层(batch normalization)中的缩放因子。
[0006]为达上述及其它目的,本专利技术提出一种卷积神经网络模型的压缩方法,包括如下步骤:
[0007]步骤S1,对原始卷积神经网络模型的每个卷积通道的重要性因子γ使用动态正则化约束,进行稀疏化训练,使模型的有效权重尽量集中在重要性因子较大的通道中,获得稀疏的稀疏卷积神经网络模型;
[0008]步骤S2,根据稀疏卷积神经网络模型的通道重要性因子γ的大小,自低向高执行全局通道剪枝剪除预设数量的通道,得到压缩后的剪枝卷积神经网络模型。
[0009]优选地,步骤S1进一步包括:
[0010]步骤S101,对所述原始卷积神经网络进行一轮稀疏化训练,得到稀疏的中间卷积神经网络模型;
[0011]步骤S102,对所述中间卷积神经网络模型进行测试,在验证集上运行所述中间卷积神经网络模型,得到本轮稀疏化训练后的mAP;
[0012]步骤S103,若本轮稀疏化训练后的中间卷积神经网络的mAP高于本轮稀疏化训练前的卷积神经网络的mAP,按照预设的正则化项稀疏度因子的更新策略,增大正则化项的稀疏度;若所述本轮稀疏化训练后的中间卷积神经网络的mAP低于本轮稀疏化训练前的卷积神经网络的mAP,则按照预设的正则化项稀疏度因子的更新策略,判别本轮正则化项的稀疏度是否更新;
[0013]步骤S104,若稀疏化训练未进行到预设的总轮数,则返回执行步骤S101继续对所述卷积神经网络进行稀疏化训练;否则,将所述经过预设总轮数稀疏化训练的卷积神经网络作为获得的所述稀疏的稀疏卷积神经网络模型。
[0014]优选地,于步骤S101之前,还包括如下步骤:
[0015]步骤S100,设定稀疏化训练的超参数、动态可变正则化函数的形式和正则化项稀疏度因子的更新策略。
[0016]优选地,所述设定所述稀疏化训练的超参数的方法包括:
[0017]设定卷积神经网络模型稀疏化训练的稀疏率r;
[0018]设定卷积神经网络模型预期的剪枝率s;
[0019]根据训练数据集的大小和卷积神经网络的预期剪枝率,得到卷积神经网络稀疏化训练的总轮数。
[0020]优选地,所述稀疏率略高于所述预期的剪枝率。
[0021]优选地,设定所述动态可变正则化函数的形式包括设定带有可变稀疏度因子的正则化项,使用其稀疏性约束通道重要性因子收缩。
[0022]优选地,所述正则化项稀疏度因子的更新策略包括比较并计算稀疏后的卷积神经网络的mAP与系数前的卷积神经网络的mAP的差值,根据比较结果更新正则化项的可变稀疏度因子。
[0023]优选地,在步骤S2之前,还包括如下步骤:
[0024]对卷积神经网络每个通道对应的重要性因子依照大小进行排序,以所述重要性因子从低到高的顺序作为通道的剪枝优先级。
[0025]优选地,步骤S2进一步包括:
[0026]步骤S201,根据预期通道剪枝率和卷积神经网络模型的通道总数,计算需要剪除的通道的数量n,并按照通道的重要性因子γ,对将所述稀疏卷积神经网络模型中n个通道的标志状态设置为待剪除状态;
[0027]步骤S202,逐卷积层判断是否该层所有的卷积通道的标志状态都为待剪除状态,若是,则将该层重要性因子最高的通道的待剪除状态标志取消,直至完成所有卷积层的判断;
[0028]步骤S203,对所述稀疏卷积神经网络模型按照所述通道的标志状态,删除所有被设置为待剪除状态的通道和对应的网络模型权值,完成所述卷积通道的剪枝,得到所述压
缩后的剪枝卷积神经网络模型。
[0029]步骤204,利用验证集,对S203获得的剪枝神经网络执行微调训练,记录微调后剪枝神经网络在验证集上的mAP。
[0030]为达到上述目的,本专利技术还提供一种卷积神经网络模型的压缩装置,包括:
[0031]稀疏化训练单元,用于对原始卷积神经网络模型的每个卷积通道的重要性因子使用动态正则化约束,进行稀疏化训练,使模型的有效权重尽量集中在重要性因子较大的通道中,获得稀疏的稀疏卷积神经网络模型;
[0032]全局通道剪枝单元,用于根据稀疏卷积神经网络模型的通道重要性因子的大小,执行全局通道剪枝剪除不重要的通道,得到压缩后的剪枝卷积神经网络模型。
[0033]与现有技术相比,本专利技术一种卷积神经网络模型的压缩方法及装置通过使用动态正则化约束卷积通道重要性因子进行稀疏化训练,获得稀疏的卷积神经网络模型,并使用通道重要性因子评判通道的剪枝优先级,然后根据所述剪枝优先级排序,在全局范围内执行通道剪枝,从而获得压缩的卷积神经网络模型,本专利技术不仅解决了目前卷积神经网络参数数量及计算量巨大的问题,而且在保证模型压缩率的同时,有效提升了网络的精度表现,为在资源有限的边缘计算平台上部署卷积神经网络模型提供了可能。
附图说明
[0034]图1为本专利技术一种卷积神经网络本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种卷积神经网络模型的压缩方法,包括如下步骤:步骤S1,对原始卷积神经网络模型的每个卷积通道的重要性因子使用动态正则化约束,进行稀疏化训练,使模型的有效权重尽量集中在重要性因子较大的通道中,获得稀疏的稀疏卷积神经网络模型;步骤S2,根据稀疏卷积神经网络模型的通道重要性因子的大小,执行全局通道剪枝剪除不重要的通道,得到压缩后的剪枝卷积神经网络模型。2.如权利要求1所述的一种卷积神经网络模型的压缩方法,其特征在于,步骤S1进一步包括:步骤S101,对所述原始卷积神经网络进行一轮稀疏化训练,得到稀疏的中间卷积神经网络模型;步骤S102,对所述中间卷积神经网络模型进行测试,在验证集上运行所述中间卷积神经网络模型,得到本轮稀疏化训练后的mAP;步骤S103,若本轮稀疏化训练后的中间卷积神经网络的mAP高于本轮稀疏化训练前的卷积神经网络的mAP,按照预设的正则化项稀疏度因子的更新策略,增大正则化项的稀疏度;若所述本轮稀疏化训练后的中间卷积神经网络的mAP低于本轮稀疏化训练前的卷积神经网络的mAP,则按照预设的正则化项稀疏度因子的更新策略,判别本轮正则化项的稀疏度是否更新;步骤S104,若稀疏化训练未进行到预设的总轮数,则返回执行步骤S101继续对所述卷积神经网络进行稀疏化训练;否则,将所述经过预设总轮数稀疏化训练的卷积神经网络作为获得的所述稀疏的稀疏卷积神经网络模型。3.如权利要求2所述的一种卷积神经网络模型的压缩方法,其特征在于,于步骤S101之前,还包括如下步骤:步骤S100,设定稀疏化训练的超参数、动态可变正则化函数的形式和正则化项稀疏度因子的更新策略。4.如权利要求3所述的一种卷积神经网络模型的压缩方法,其特征在于,所述设定所述稀疏化训练的超参数的方法包括:设定卷积神经网络模型稀疏化训练的稀疏率;设定卷积神经网络模型预期的剪枝率;根据训练数据集的大小和卷积神经网络的预期剪枝率,得到卷积神经网络稀疏化训练的总轮数。5.如权利要求4所述的一种卷积神经网络模型的压缩方法,其特征在于:所述稀疏率略高于...

【专利技术属性】
技术研发人员:付宇卓刘婷颜伟
申请(专利权)人:华域视觉科技上海有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1