一种通道剪枝和快捷连接层剪枝方法及系统技术方案

技术编号:29587337 阅读:13 留言:0更新日期:2021-08-06 19:46
本发明专利技术提供一种通道剪枝和快捷连接层剪枝方法及系统,涉及计算机视觉技术领域,该方法包括:步骤S1:对单阶段目标检测模型的BN层的尺度因子进行自适应稀疏化训练;步骤S2:设计通道剪枝和层剪枝的阈值和快捷剪枝层的数量;步骤S3:对模型每一层小于通道阈值的通道进行剪枝;步骤S4:综合每一个快捷连接层中所有BN的尺度因子的平均值和标准差,对快捷连接层重要性进行排序,剪去设置的数量;步骤S5:降低模型精度的损失,将剪去的层的BN中的偏差合并到下一个BN层的runing_mean中;步骤S6:使用模型蒸馏,并进行精度恢复训练;步骤S7:重复步骤S1~步骤S6,反复对模型进行剪枝。本发明专利技术能够使得模型性能不下降,且参数量大大降低,显著提升推理效率效果。

【技术实现步骤摘要】
一种通道剪枝和快捷连接层剪枝方法及系统
本专利技术属于计算机视觉中的图像分类、目标检测、跟踪与识别等使用卷积神经网络的
,涉及基于稀疏化参数训练的通道剪枝、快捷连接层剪枝以及剪枝后模型精度恢复的技术,具体地,涉及一种通道剪枝和快捷连接层剪枝方法及系统。
技术介绍
基于深度学习的图像分类、目标检测、目标跟踪与识别等方法,通过提高网络的复杂度来获得更高的精度。但是,复杂的模型往往占用了大量的存储空间和计算资源,这将大大影响模型的效率,并且难以部署到资源有限的设备上。根据经验可知,较大的网络模型通常包含大量冗余信息,因此一些研究者提出了一些模型压缩方法,以减少模型体积,加快模型推理速度。在这些模型压缩方法中,结构剪枝,特别是通道剪枝,被广泛用于减少模型参数数量和计算复杂度。然而现有存在的方法,大多数在训练过程中对BN的γ参数添加固定大小的惩罚因子的L1范数进行稀疏化,通过稀疏化后的γ来衡量每一个通道的重要性。但是每一个通道的γ参数都使用固定大小的惩罚因子往往无法达到最优的稀疏化效果。公开号为CN111931914A的专利技术专利,公开了一种基于模型微调的卷积神经网络通道剪枝方法,该方法包括:构造卷积神经网络分类模型,该模型由特征提取器和分类器两部分构成,特征提取器包括卷积层以及池化层,在ImageNet图像分类数据集上进行训练,得到预训练模型C;修改所述预训练模型C的分类器,将分类器全连接层输出的类别数设置为目标类别,并在目标数据集上进行稀疏性训练,得到收敛后的模型C′;将所述稀疏训练后的模型C′根据通道剪枝策略进行剪枝,得到剪枝后的模型C″;将所述剪枝后的模型C″在目标数据集上进行微调,以提高剪枝后模型的性能。并且,在现有方法中,大多数通道剪枝的方法仅仅对通道进行剪枝,但是在模型推理过程中,模型层数的影响高于通道个数的影响。仅仅减少模型的通道数而不减少模型的层数,无法达到最优的加速效果。因此,在不影响精度的前提下,针对卷积神经网络专利技术一种更合适的稀疏化训练的方法,同时对模型的通道和快捷连接层的剪枝方法,实现更高效的模型压缩,加快模型的推理速度,是目前面临的关键问题。
技术实现思路
针对现有技术中的缺陷,本专利技术提供一种通道剪枝和快捷连接层剪枝方法及系统。根据本专利技术提供的一种通道剪枝和快捷连接层剪枝方法及系统,所述方案如下:第一方面,提供了一种通道剪枝和快捷连接层剪枝方法,所述方法包括:步骤S1:对基于卷积神经网络YOLO-TianRang的单阶段目标检测模型的BN层的尺度因子进行自适应稀疏化训练;步骤S2:根据稀疏化后BN层的尺度因子的分布,设计通道剪枝和层剪枝的阈值和快捷剪枝层的数量;步骤S3:对模型每一层小于通道阈值的通道进行剪枝;步骤S4:综合每一个快捷连接层中所有BN的尺度因子的平均值和标准差,对快捷连接层重要性进行排序,剪去设置的数量;步骤S5:降低模型精度的损失,将剪去的层的BN中的偏差合并到下一个BN层的runing_mean中;步骤S6:使用模型蒸馏,使用未剪枝的模型作为老师模型,剪枝后的模型作为学生模型,进行精度恢复训练;步骤S7:重复以上步骤S1~步骤S6,反复对模型进行剪枝。优选的,所述步骤S1中BN层的计算公式如下:式中,γi和βi是BN层中第i层的尺度因子和偏差,xi和yi是第i层的输入和输出,和σ2是一个批处理的均值和标准差,ε是一个极小的浮点数,1e-5。优选的,所述步骤S1中,采用L1正则化的方法对模型进行动态稀疏化训练,损失函数如下:式中,J0表示原始损失,αt表示t时刻稀疏化惩罚因子,α0是初始化稀疏化惩罚因子,γt表示t时刻BN层的尺度因子,λ一般取0.99,Jt是t时刻模型的损失值。优选的,步骤S3是针对每一层中小于通道阈值的通道进行剪枝,若该层全部通道均小于阈值,则保留BN层尺度因子最大的一个通道。优选的,所述步骤S4中计算快捷连接层的重要性方法如下:pi=mi+σi其中,mi是该层所有通道的均值,σi该层所有通道的标准差,根据设置需要裁剪的快捷连接层的数量,按照pi的大小进行裁剪。优选的,所述步骤S5中将参数合并到下一层BN的runing_mean中的方式如下:Xi+1=Xi+1-fconv(gact(βi))式中,Xi+1表示i+1层中BN的runing_mean的值,βi是第i层中被剪去的通道的BN的偏差,gact表示激活函数,fconv表示第i+1层的卷积函数。优选的,所述步骤S6中进行蒸馏学习的损失函数如下:Lcls=μ·Lhard(Pscls,ycls)+(1-μ)·Lsoft(Pscls,Ptcls)Lobj=μ·Lhard(Psobj,yobj)+(1-μ)·Lsoft(Psobj,Ptobj)Lreg=Lorg_reg+Ld式中,Lcls表示类别损失,Lhard是模型原始二值交叉熵损失函数,Lsoft是蒸馏的二值交叉熵损失函数,Pscls是学生模型的类别预测值,ycls是类别标签,Ptcls是老师模型的类别预测值;Lobj表示置信度损失,Psobj是学生模型的置信度预测值,yobj是置信度标签,Ptobj是老师模型的置信度预测值,μ是平衡系数;Ld是蒸馏回归框的损失,Psreg是学生模型的回归框预测值,yreg是回归框的标签,Ptreg是老师模型的回归框预测值,m是回归框平衡值;Lreg是回归框损失,Lorg_reg是模型原始的回归框损失,Ld是模型蒸馏的回归框损失。第二方面,提供了一种通道剪枝和快捷连接层剪枝系统,所述系统包括:模块M1:对基于卷积神经网络YOLO-TianRang的单阶段目标检测模型的BN层的尺度因子进行自适应稀疏化训练;模块M2:根据稀疏化后BN层的尺度因子的分布,设计通道剪枝和层剪枝的阈值和快捷剪枝层的数量;模块M3:对模型每一层小于通道阈值的通道进行剪枝;模块M4:综合每一个快捷连接层中所有BN的尺度因子的平均值和标准差,对快捷连接层重要性进行排序,剪去设置的数量;模块M5:降低模型精度的损失,将剪去的层的BN中的偏差合并到下一个BN层的runing_mean中;模块M6:使用模型蒸馏,使用未剪枝的模型作为老师模型,剪枝后的模型作为学生模型,进行精度恢复训练;模块M7:使模块M1~模块M6依次重复工作,反复对模型进行剪枝。优选的,所述模块M1中BN层的计算公式如下:式中,γi和βi是BN层中第i层的尺度因子和偏差,xi和yi是第i层的输入和输出,和σ2是一个批处理的均值和标准差,ε是一个极小的浮点数,1e-5。优选的,所述模块M1中,采用L1正则化的方法对模型进行动态稀疏化训练,损失函数如下:式中,J0表示原始损失,αt表示t时刻稀疏化惩罚因子本文档来自技高网
...

【技术保护点】
1.一种通道剪枝和快捷连接层剪枝方法,其特征在于,包括:/n步骤S1:对基于卷积神经网络YOLO-TianRang的单阶段目标检测模型的BN层的尺度因子进行自适应稀疏化训练;/n步骤S2:根据稀疏化后BN层的尺度因子的分布,设计通道剪枝和层剪枝的阈值和快捷剪枝层的数量;/n步骤S3:对模型每一层小于通道阈值的通道进行剪枝;/n步骤S4:综合每一个快捷连接层中所有BN的尺度因子的平均值和标准差,对快捷连接层重要性进行排序,剪去设置的数量;/n步骤S5:降低模型精度的损失,将剪去的层的BN中的偏差合并到下一个BN层的runing_mean中;/n步骤S6:使用模型蒸馏,使用未剪枝的模型作为老师模型,剪枝后的模型作为学生模型,进行精度恢复训练;/n步骤S7:重复以上步骤S1~步骤S6,反复对模型进行剪枝。/n

【技术特征摘要】
1.一种通道剪枝和快捷连接层剪枝方法,其特征在于,包括:
步骤S1:对基于卷积神经网络YOLO-TianRang的单阶段目标检测模型的BN层的尺度因子进行自适应稀疏化训练;
步骤S2:根据稀疏化后BN层的尺度因子的分布,设计通道剪枝和层剪枝的阈值和快捷剪枝层的数量;
步骤S3:对模型每一层小于通道阈值的通道进行剪枝;
步骤S4:综合每一个快捷连接层中所有BN的尺度因子的平均值和标准差,对快捷连接层重要性进行排序,剪去设置的数量;
步骤S5:降低模型精度的损失,将剪去的层的BN中的偏差合并到下一个BN层的runing_mean中;
步骤S6:使用模型蒸馏,使用未剪枝的模型作为老师模型,剪枝后的模型作为学生模型,进行精度恢复训练;
步骤S7:重复以上步骤S1~步骤S6,反复对模型进行剪枝。


2.根据权利要求1所述的通道剪枝和快捷连接层剪枝方法,其特征在于,所述步骤S1中BN层的计算公式如下:



式中,γi和βi是BN层中第i层的尺度因子和偏差,xi和yi是第i层的输入和输出,和σ2是一个批处理的均值和标准差,ε是一个极小的浮点数,1e-5。


3.根据权利要求2所述的通道剪枝和快捷连接层剪枝方法,其特征在于,所述步骤S1中,采用L1正则化的方法对模型进行动态稀疏化训练,损失函数如下:









式中,J0表示原始损失,αt表示t时刻稀疏化惩罚因子,α0是初始化稀疏化惩罚因子,γt表示t时刻BN层的尺度因子,λ一般取0.99,Jt是t时刻模型的损失值。


4.根据权利要求1所述的通道剪枝和快捷连接层剪枝方法,其特征在于,步骤S3是针对每一层中小于通道阈值的通道进行剪枝,若该层全部通道均小于阈值,则保留BN层尺度因子最大的一个通道。


5.根据权利要求1所述的通道剪枝和快捷连接层剪枝方法,其特征在于,所述步骤S4中计算快捷连接层的重要性方法如下:
pi=mi+σi
其中,mi是该层所有通道的均值,σi该层所有通道的标准差,根据设置需要裁剪的快捷连接层的数量,按照pi的大小进行裁剪。


6.根据权利要求1所述的通道剪枝和快捷连接层剪枝方法,其特征在于,所述步骤S5中将参数合并到下一层BN的runing_mean中的方式如下:
Xi+1=Xi+1-fconv(gact(βi))
式中,Xi+1表示i+1层中BN的runing_mean的值,βi是第i层中被剪去的通道的BN的偏差,gact表示激活函数,fconv表示第i+1层的卷积函数。


7.根据权利要求1所述的通道剪枝和快...

【专利技术属性】
技术研发人员:王俊杰杜金航许卓然彭伊莎薛贵荣
申请(专利权)人:上海天壤智能科技有限公司
类型:发明
国别省市:上海;31

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

1