CN113222142A - 一种通道剪枝和快捷连接层剪枝方法及系统 - Google Patents
一种通道剪枝和快捷连接层剪枝方法及系统 Download PDFInfo
- Publication number
- CN113222142A CN113222142A CN202110592328.7A CN202110592328A CN113222142A CN 113222142 A CN113222142 A CN 113222142A CN 202110592328 A CN202110592328 A CN 202110592328A CN 113222142 A CN113222142 A CN 113222142A
- Authority
- CN
- China
- Prior art keywords
- layer
- model
- pruning
- channel
- loss
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000013138 pruning Methods 0.000 title claims abstract description 125
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000001514 detection method Methods 0.000 claims abstract description 9
- 238000011084 recovery Methods 0.000 claims abstract description 7
- 238000004821 distillation Methods 0.000 claims description 28
- 230000006870 function Effects 0.000 claims description 27
- 238000013527 convolutional neural network Methods 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000007667 floating Methods 0.000 claims description 5
- 206010037180 Psychiatric symptoms Diseases 0.000 claims description 4
- 230000004913 activation Effects 0.000 claims description 4
- 230000000694 effects Effects 0.000 abstract description 4
- 230000006835 compression Effects 0.000 description 6
- 238000007906 compression Methods 0.000 description 6
- 230000001133 acceleration Effects 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 4
- 239000006185 dispersion Substances 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 244000141353 Prunus domestica Species 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Abstract
本发明提供一种通道剪枝和快捷连接层剪枝方法及系统,涉及计算机视觉技术领域,该方法包括:步骤S1:对单阶段目标检测模型的BN层的尺度因子进行自适应稀疏化训练;步骤S2:设计通道剪枝和层剪枝的阈值和快捷剪枝层的数量;步骤S3:对模型每一层小于通道阈值的通道进行剪枝;步骤S4:综合每一个快捷连接层中所有BN的尺度因子的平均值和标准差,对快捷连接层重要性进行排序,剪去设置的数量;步骤S5:降低模型精度的损失,将剪去的层的BN中的偏差合并到下一个BN层的runing_mean中;步骤S6:使用模型蒸馏,并进行精度恢复训练;步骤S7:重复步骤S1~步骤S6,反复对模型进行剪枝。本发明能够使得模型性能不下降,且参数量大大降低,显著提升推理效率效果。
Description
技术领域
本发明属于计算机视觉中的图像分类、目标检测、跟踪与识别等使用卷积神经网络的技术领域,涉及基于稀疏化参数训练的通道剪枝、快捷连接层剪枝以及剪枝后模型精度恢复的技术,具体地,涉及一种通道剪枝和快捷连接层剪枝方法及系统。
背景技术
基于深度学习的图像分类、目标检测、目标跟踪与识别等方法,通过提高网络的复杂度来获得更高的精度。但是,复杂的模型往往占用了大量的存储空间和计算资源,这将大大影响模型的效率,并且难以部署到资源有限的设备上。
根据经验可知,较大的网络模型通常包含大量冗余信息,因此一些研究者提出了一些模型压缩方法,以减少模型体积,加快模型推理速度。在这些模型压缩方法中,结构剪枝,特别是通道剪枝,被广泛用于减少模型参数数量和计算复杂度。然而现有存在的方法,大多数在训练过程中对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层的计算公式如下:
优选的,所述步骤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层的计算公式如下:
优选的,所述模块M1中,采用L1正则化的方法对模型进行动态稀疏化训练,损失函数如下:
式中,J0表示原始损失,αt表示t时刻稀疏化惩罚因子,α0是初始化稀疏化惩罚因子,γt表示t时刻BN层的尺度因子,λ一般取0.99,Jt是t时刻模型的损失值。
与现有技术相比,本发明具有如下的有益效果:
1、针对不同通道的自适应惩罚因子的稀疏化训练,能够获得相对较高的稀疏模型;
2、根据稀疏化模型的BN层的尺度因子的分布,设计合适的阈值,针对每一层中小于通道阈值的通道进行剪枝,避免了整层被剪枝的问题;
3、在完成通道剪枝后,对快捷连接层进行进一步剪枝,进一步提高了模型的剪枝率;
4、将被剪去层的BN层的偏差合并到下一层的BN的runing_mean中,降低模型剪枝的精度损失;
5、由于剪枝之后,模型的精度会有略微下降,本发明使用模型蒸馏进行训练的方法,能够更好恢复模型的精度。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明的流程示意图;
图2为CBM结构图;
图3为快捷连接层结构图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
本发明实施例提供了一种通道剪枝和快捷连接层剪枝方法,参照图1所示,(1)、首先对基于卷积神经网络YOLO-TianRang的单阶段目标检测模型的BN层的尺度因子进行自适应稀疏化训练。
YOLO-TianRang是综合了yolov3、yolov4、yolov5的优点,在交通场景下经过特殊优化的模型,在8块Nvidia GTX1080 8G的显卡上构建模型,模型的主干网络是CSPDarkNet53。模型的基础单元是CBM层,由Convolution+BN+Mish构成,参照图2所示。三个CBM层堆积成一个快捷连接层,参照图3所示。
针对BN层中的尺度因子进行自适应稀疏化训练后,尺度因子的大小可以代表本通道对于模型的重要程度,稀疏化训练得到BN层的尺度因子稀疏化的模型的关键。在之前的方法中,稀疏化会对BN的尺度因子设置一个固定的L1正则化惩罚因子,但是模型的每一个通道在训练过程中的贡献度都是不一样的,简单采用固定的惩罚因子无法获得相对较高的稀疏模型。因此,本发明方针对不同通道的自适应惩罚因子的稀疏化训练。其中BN层的计算公式如下:
采用L1正则化的方法对模型进行动态稀疏化训练,损失函数如下:
式中,J0表示原始损失,αt表示t时刻稀疏化惩罚因子,α0是初始化稀疏化惩罚因子,γt表示t时刻BN层的尺度因子,λ一般取0.99,Jt是t时刻模型的损失值。稀疏化惩罚因子会根据梯度更新的速度,动态调节稀疏化的力度。当梯度变化快时,当前通道对模型的更新贡献大,通道的重要性会相对较高,αt会相对较小,对于该通道的惩罚力度降低;当梯度变化较慢时,该通道对模型的更新贡献小,通道的重要性会相对较低,αt会相对较大,对于该通道的惩罚力度增加。通过这种自适应调节,可以更加有效的训练得到稀疏化程度更高的模型。
(2)、根据稀疏化后BN层的尺度因子的分布,设计合适的阈值,针对每一层中小于通道阈值的通道进行剪枝,若该层全部通道均小于阈值,为了避免整层被剪枝,保留BN层尺度因子最大的一个通道。
(3)、综合每一个快捷连接层中所有BN的尺度因子的平均值和标准差,对快捷连接层重要性进行排序,剪去设置的数量;在完成通道剪枝后,为了进一步提高模型的剪枝率,对快捷连接层进行进一步剪枝。计算快捷连接层的重要性方法如下:
pi=mi+σi
其中,mi是该层所有通道的均值,σi该层所有通道的标准差,mi越大说明该快捷连接层的绝对重要性越高,σi越大,说明该快捷连接层中的通道重要性的离散程度越大,离散程度越大,说明快捷连接层的层内提取到特征差距大,因此该快捷连接层的相对重要性越高。pi是综合了快捷连接层的绝对重要性和相对重要性的指标,根据设置需要裁剪的快捷连接层的数量,按照pi的大小进行裁剪。实现了更高效的快捷连接层剪枝。
(4)、在之前的方法中,通道剪枝和快捷连接层剪枝后,BN层的偏差同样被剪枝。但为了尽可能的降低模型剪枝的精度损失,本发明将被剪去层的BN层的偏差合并到下一层的BN的runing_mean中,方法如下:
Xi+1=Xi+1-fconv(gact(βi))
式中,Xi+1表示i+1层中BN的runing_mean的值,βi是第i层中被剪去的通道的BN的偏差,gact表示激活函数,fconv表示第i+1层的卷积函数。
(5)、由于剪枝之后,模型的精度会有略微下降。因此通常在剪枝之后会使用训练数据集进行微调训练,恢复模型的精度。为了更好恢复模型的精度,本发明方法提出使用模型蒸馏进行训练的方法。因为剪枝前的模型和剪枝后的模型结构类似,可以将剪枝前的原始模型视作老师模型,剪枝后的模型视作学生模型,通过模型蒸馏的方法,将老师模型的知识转移到学生模型上。在训练时,学生模型同时向真实值和老师模型的预测值进行学习。模型蒸馏时的损失函数如下:
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是模型蒸馏的回归框损失。
通过模型蒸馏,可以使剪枝后的模型有效地恢复精度,甚至超过原始模型的精度。
(6)、重复以上(1)~(5),反复对模型进行剪枝。
接下来,对本发明进行更为具体的说明。
本发明提供的一种通道剪枝和快捷连接层剪枝方法,参照图1所示,具体如下:
a、构建YOLO-TianRang模型:
YOLO-TianRang是综合了yolov3、yolov4、yolov5的优点,在交通场景下经过特殊优化的模型,在8块Nvidia GTX1080 8G的显卡上构建模型,模型的主干网络是CSPDarkNet53。模型的基础单元是CBM层,由Convolution+BN+Mish构成,如图2所示。三个CBM层堆积成一个快捷连接层,如图3所示。
b、自适应稀疏化训练:
准备后符合模型格式的数据后,开始自适应稀疏化训练。模型初始化权重使用COCO的预训练模型权重,优化器使用Adam,初始学习率设置为0.001,总共训练100轮,在第70轮和第90轮时学习率衰减为0.1倍,分别衰减为0.0001和0.00001,初始化惩罚因子设置为0.01。采用L1正则化的方法对模型的BN层进行动态稀疏化训练,损失函数如下:
式中,J0表示原始损失,αt表示t时刻稀疏化惩罚因子,α0是初始化稀疏化惩罚因子,初始化为0.01,γt表示t时刻BN层的尺度因子,λ取0.99,Jt是t时刻模型的损失值。稀疏化惩罚因子会根据梯度更新的速度,动态调节稀疏化的力度。当梯度变化快时,当前通道对模型的更新贡献大,通道的重要性会相对较高,αt会相对较小,对于该通道的惩罚力度降低;当梯度变化较慢时,该通道对模型的更新贡献小,通道的重要性会相对较低,αt会相对较大,对于该通道的惩罚力度增加。通过这种自适应调节,可以更加有效的训练得到稀疏化程度更高的模型。
训练时图像的输入尺寸为416x416,mini-batch设置为每块显卡8张,为了增加数据的多样性,采用亮度随机变换、对比度随机变换、随机翻转、中心随机裁剪、mosaic等数据增强的方法,提升模型的泛化能力。同时为了提升检测的鲁棒性,训练过程中采用多尺度训练,每10步变换一次训练的输入尺寸,变换区间为320-608,每次变换宽高分别增加32。训练尺寸的分布为320、352、384、416、448、480、512、544、576、608。
c、通道剪枝:
稀疏化训练完成后,可视化BN层的γ参数的分布,设置剪枝率为0.7,在部分层中,可能所有通道都被剪枝,这时该层保留BN层尺度因子最大的一个通道。模型剪枝后精度不发生变化。剪枝后和剪枝前的mAP均为94.1%,压缩率83.9%,使用batch-size为1进行推理,加速比24.8%。结果见表1。
表1通道剪枝和快捷连接层剪枝效果对比
d、快捷连接层剪枝:
在完成通道剪枝后,为了进一步提高模型的剪枝率,对快捷连接层进行进一步剪枝。计算快捷连接层的重要性方法如下:
pi=mi+σi
其中,mi是该层所有通道的均值,σi该层所有通道的标准差。mi越大说明该快捷连接层的绝对重要性越高,σi越大,说明该快捷连接层中的通道重要性的离散程度越大,离散程度越大,说明快捷连接层的层内提取到特征差距大,因此该快捷连接层的相对重要性越高。
设置剪枝快捷连接层的个数为8,剪去8个快捷连接层,包含24个CBM层。mAP均为87.0%,压缩率87.4%,使用batch-size为1进行推理,加速比93.4%。可见在batch-size为1时,通过快捷连接层剪枝,极快的加速了模型的前向推理速度。结果见表2。
表2多次剪枝效果对比
e、模型参数合并:
为了降低快捷连接层被剪枝后的模型精度损失,将被剪去层的BN层的偏差合并到下一层的BN的runing_mean中。公式如下:
Xi+1=Xi+1-fconv(gact(βi))
式中,Xi+1表示i+1层中BN的runing_mean的值,βi是第i层中被剪去的通道的BN的偏差,gact表示激活函数,fconv表示第i+1层的卷积函数。
f、模型蒸馏:
由于剪枝后模型的精度略微下降,使用模型蒸馏的策略进行模型精度恢复训练。公式如下:
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是老师模型的置信度预测值,μ是平衡系数,设置为0.5。Ld是蒸馏回归框的损失,Psreg是学生模型的回归框预测值,yreg是回归框的标签,Ptreg是老师模型的回归框预测值,m是回归框平衡值。Lreg是回归框损失,Lorg_reg是模型原始的回归框损失,Ld是模型蒸馏的回归框损失。
模型蒸馏后,mAP从87.0%提升至94.5%,并且超过了未剪枝模型的94.1%,证明了模型蒸馏策略的有效性。
g、重复剪枝一次:
单次剪枝后,模型仍有部分冗余,因此再进行一次剪枝。重复(a)-(e)中的步骤,其中(c)中的通道剪枝率设置为0.3,(d)中的快捷连接层剪枝数量设置为3,其余参数保持不变。对比第一次剪枝后的模型,mAP为94.5%未下降,但是压缩率、加速比都有提升。进一步简化了模型。
本发明实施例提供了一种通道剪枝和快捷连接层剪枝方法,针对不同通道的自适应惩罚因子的稀疏化训练,能够获得相对较高的稀疏模型;根据稀疏化模型的BN层的尺度因子的分布,设计合适的阈值,针对每一层中小于通道阈值的通道进行剪枝,避免了整层被剪枝的问题;在完成通道剪枝后,对快捷连接层进行进一步剪枝,进一步提高了模型的剪枝率;将被剪去层的BN层的偏差合并到下一层的BN的runing_mean中,降低模型剪枝的精度损失;由于剪枝之后,模型的精度会有略微下降,本发明使用模型蒸馏进行训练的方法,能够更好恢复模型的精度。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置、模块、单元以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置、模块、单元以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置、模块、单元可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置、模块、单元也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置、模块、单元视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (10)
1.一种通道剪枝和快捷连接层剪枝方法,其特征在于,包括:
步骤S1:对基于卷积神经网络YOLO-TianRang的单阶段目标检测模型的BN层的尺度因子进行自适应稀疏化训练;
步骤S2:根据稀疏化后BN层的尺度因子的分布,设计通道剪枝和层剪枝的阈值和快捷剪枝层的数量;
步骤S3:对模型每一层小于通道阈值的通道进行剪枝;
步骤S4:综合每一个快捷连接层中所有BN的尺度因子的平均值和标准差,对快捷连接层重要性进行排序,剪去设置的数量;
步骤S5:降低模型精度的损失,将剪去的层的BN中的偏差合并到下一个BN层的runing_mean中;
步骤S6:使用模型蒸馏,使用未剪枝的模型作为老师模型,剪枝后的模型作为学生模型,进行精度恢复训练;
步骤S7:重复以上步骤S1~步骤S6,反复对模型进行剪枝。
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所述的通道剪枝和快捷连接层剪枝方法,其特征在于,所述步骤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是回归框损失,Lorgreg是模型原始的回归框损失,Ld是模型蒸馏的回归框损失。
8.一种通道剪枝和快捷连接层剪枝系统,其特征在于,包括:
模块M1:对基于卷积神经网络YOLO-TianRang的单阶段目标检测模型的BN层的尺度因子进行自适应稀疏化训练;
模块M2:根据稀疏化后BN层的尺度因子的分布,设计通道剪枝和层剪枝的阈值和快捷剪枝层的数量;
模块M3:对模型每一层小于通道阈值的通道进行剪枝;
模块M4:综合每一个快捷连接层中所有BN的尺度因子的平均值和标准差,对快捷连接层重要性进行排序,剪去设置的数量;
模块M5:降低模型精度的损失,将剪去的层的BN中的偏差合并到下一个BN层的runing_mean中;
模块M6:使用模型蒸馏,使用未剪枝的模型作为老师模型,剪枝后的模型作为学生模型,进行精度恢复训练;
模块M7:使模块M1~模块M6依次重复工作,反复对模型进行剪枝。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110592328.7A CN113222142A (zh) | 2021-05-28 | 2021-05-28 | 一种通道剪枝和快捷连接层剪枝方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110592328.7A CN113222142A (zh) | 2021-05-28 | 2021-05-28 | 一种通道剪枝和快捷连接层剪枝方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113222142A true CN113222142A (zh) | 2021-08-06 |
Family
ID=77099105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110592328.7A Pending CN113222142A (zh) | 2021-05-28 | 2021-05-28 | 一种通道剪枝和快捷连接层剪枝方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113222142A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114913441A (zh) * | 2022-06-28 | 2022-08-16 | 湖南大学 | 通道剪枝方法、目标检测方法及遥感图像车辆检测方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160358104A1 (en) * | 2015-06-02 | 2016-12-08 | Nec Laboratories America, Inc. | Annealed Sparsity Via Adaptive and Dynamic Shrinking |
US20170024529A1 (en) * | 2015-07-26 | 2017-01-26 | Macau University Of Science And Technology | Semi-Supervised Learning Framework based on Cox and AFT Models with L1/2 Regularization for Patient's Survival Prediction |
CN110147834A (zh) * | 2019-05-10 | 2019-08-20 | 上海理工大学 | 基于稀疏化双线性卷积神经网络的细粒度图像分类方法 |
CN111401202A (zh) * | 2020-03-11 | 2020-07-10 | 西南石油大学 | 一种基于深度学习的行人口罩佩戴实时检测方法 |
CN112364719A (zh) * | 2020-10-23 | 2021-02-12 | 西安科锐盛创新科技有限公司 | 一种遥感图像目标快速检测方法 |
CN112465114A (zh) * | 2020-11-25 | 2021-03-09 | 重庆大学 | 基于优化通道剪枝的快速目标检测方法及系统 |
CN112464718A (zh) * | 2020-10-23 | 2021-03-09 | 西安电子科技大学 | 一种基于YOLO-Terse网络的目标检测方法及存储介质 |
CN112699958A (zh) * | 2021-01-11 | 2021-04-23 | 重庆邮电大学 | 一种基于剪枝和知识蒸馏的目标检测模型压缩与加速方法 |
-
2021
- 2021-05-28 CN CN202110592328.7A patent/CN113222142A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160358104A1 (en) * | 2015-06-02 | 2016-12-08 | Nec Laboratories America, Inc. | Annealed Sparsity Via Adaptive and Dynamic Shrinking |
US20170024529A1 (en) * | 2015-07-26 | 2017-01-26 | Macau University Of Science And Technology | Semi-Supervised Learning Framework based on Cox and AFT Models with L1/2 Regularization for Patient's Survival Prediction |
CN110147834A (zh) * | 2019-05-10 | 2019-08-20 | 上海理工大学 | 基于稀疏化双线性卷积神经网络的细粒度图像分类方法 |
CN111401202A (zh) * | 2020-03-11 | 2020-07-10 | 西南石油大学 | 一种基于深度学习的行人口罩佩戴实时检测方法 |
CN112364719A (zh) * | 2020-10-23 | 2021-02-12 | 西安科锐盛创新科技有限公司 | 一种遥感图像目标快速检测方法 |
CN112464718A (zh) * | 2020-10-23 | 2021-03-09 | 西安电子科技大学 | 一种基于YOLO-Terse网络的目标检测方法及存储介质 |
CN112465114A (zh) * | 2020-11-25 | 2021-03-09 | 重庆大学 | 基于优化通道剪枝的快速目标检测方法及系统 |
CN112699958A (zh) * | 2021-01-11 | 2021-04-23 | 重庆邮电大学 | 一种基于剪枝和知识蒸馏的目标检测模型压缩与加速方法 |
Non-Patent Citations (4)
Title |
---|
_从前从前_: ""YOLOV3剪枝源码阅读---模型部署加速"", 《HTTPS://WWW.JIANSHU.COM/P/D2D0D230EB74?CLICKTIME=1582269342》 * |
SANH, V等: ""Movement pruning: Adaptive sparsity by fine-tuning"", 《ARXIV》 * |
ZHUANG LIU等: ""Learning Efficient Convolutional Networks through Network Slimming"", 《2017 IEEE INTERNATIONAL CONFERENCE ON COMPUTER VISION (ICCV)》 * |
彭燕: ""基于机器视觉的宠物狗远程监护系统"", 《中国优秀硕士学位论文全文数据库 工程科技Ⅰ辑》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114913441A (zh) * | 2022-06-28 | 2022-08-16 | 湖南大学 | 通道剪枝方法、目标检测方法及遥感图像车辆检测方法 |
CN114913441B (zh) * | 2022-06-28 | 2024-04-16 | 湖南大学 | 通道剪枝方法、目标检测方法及遥感图像车辆检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210049423A1 (en) | Efficient image classification method based on structured pruning | |
CN109815886B (zh) | 一种基于改进YOLOv3的行人和车辆检测方法及系统 | |
CN110110624B (zh) | 一种基于DenseNet网络与帧差法特征输入的人体行为识别方法 | |
CN111191583B (zh) | 基于卷积神经网络的空间目标识别系统及方法 | |
US20210158166A1 (en) | Semi-structured learned threshold pruning for deep neural networks | |
CN110458085B (zh) | 基于注意力增强三维时空表征学习的视频行为识别方法 | |
CN111696101A (zh) | 一种基于SE-Inception的轻量级茄科病害识别方法 | |
CN111882040A (zh) | 基于通道数量搜索的卷积神经网络压缩方法 | |
CN110929610A (zh) | 基于cnn模型和迁移学习的植物病害识别方法及系统 | |
CN112766062B (zh) | 一种基于双流深度神经网络的人体行为识别方法 | |
CN112101364B (zh) | 基于参数重要性增量学习的语义分割方法 | |
CN113159067A (zh) | 一种基于多粒度局部特征软关联聚合的细粒度图像辨识方法及装置 | |
CN112307982A (zh) | 基于交错增强注意力网络的人体行为识别方法 | |
CN113283473B (zh) | 一种基于cnn特征映射剪枝的快速水下目标识别方法 | |
CN113128478A (zh) | 模型训练方法、行人分析方法、装置、设备及存储介质 | |
CN114463545A (zh) | 一种基于多通道深度加权聚合的图像语义分割算法及系统 | |
CN116109920A (zh) | 一种基于Transformer的遥感图像建筑物提取方法 | |
CN113222142A (zh) | 一种通道剪枝和快捷连接层剪枝方法及系统 | |
CN114943335A (zh) | 一种三值神经网络逐层优化方法 | |
CN111783688B (zh) | 一种基于卷积神经网络的遥感图像场景分类方法 | |
CN114049527A (zh) | 基于在线协作与融合的自我知识蒸馏方法与系统 | |
Yang et al. | Skeleton Neural Networks via Low-rank Guided Filter Pruning | |
CN114494284B (zh) | 一种基于显式监督区域关系的场景解析模型及方法 | |
CN113590748B (zh) | 基于迭代网络组合的情感分类持续学习方法及存储介质 | |
CN115375922A (zh) | 一种基于多尺度空间注意力的轻量化显著性检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210806 |