一种对预训练的神经网络模型进行剪枝的方法技术

技术编号:34971678 阅读:18 留言:0更新日期:2022-09-21 14:11
本发明专利技术实施例提供了一种对预训练的神经网络模型进行剪枝的方法,其中将所述预训练的神经网络模型作为基线模型,包括:S1、选择所述基线模型中需要剪枝的网络层作为目标网络层;S2、获取目标网络层中多个卷积核的各权重参数对应的梯度值;S3、针对所述目标网络层,基于每个卷积核的各权重参数对应的梯度值确定该卷积核中重要的权重参数的数量;S4、针对所述目标网络层,根据其所有的卷积核中重要的权重参数的数量对所述目标网络层进行剪枝;S5、对剪枝后的模型进行重训练,得到压缩后的模型。本发明专利技术提高了剪枝的精度、效率。效率。效率。

【技术实现步骤摘要】
一种对预训练的神经网络模型进行剪枝的方法


[0001]本专利技术涉及神经网络处理领域,具体来说涉及神经网络模型的压缩
,更具体地说,涉及一种对预训练的神经网络模型进行剪枝的方法。

技术介绍

[0002]深度学习为计算机视觉任务带来了巨大提升,但复杂的网络模型需要高额的存储空间和计算资源。在计算机视觉任务中,无论是图像分类还是目标识别,通常在提取图像特征时都需要卷积层作为基本的网络结构,在下游任务中涉及到分类或者回归时需要全连接层作为基本的网络结构。在目标识别中,因识别目标的复杂性,还会采用其他的网络结构。
[0003]随着残差网络(Residual Networks,ResNet)的提出,缓解了深度神经网络的训练退化问题,使得训练上千层的网络成为可能。但是网络层数越多,网络结构越复杂,模型在部署上需要的内存和计算资源就越高。尤其是目标检测网络,为了实现小目标检测、遮挡目标识别等问题会引入其他的网络结构提升检测的精度。为了在保证精度的情况下减小模型的计算量和参数量,很多压缩神经网络的方法被提出来,常见的压缩方法包括:低秩分解、剪枝、量化、知识蒸馏、紧凑的网络设计等,其中剪枝和量化是该领域的研究热点。
[0004]剪枝算法可以分为非结构化剪枝和结构化剪枝算法两种。非结构化剪枝算法的精度损失较小,但是受到特定算法库和硬件平台的限制,实际应用相对较少。结构化剪枝算法对卷积核、通道数进行剪枝,剪枝策略十分有效,但是剪枝精度相对较低。

技术实现思路

[0005]因此,本专利技术的目的在于克服上述现有技术的缺陷,提供一种对预训练的神经网络模型进行剪枝的方法。
[0006]本专利技术的目的是通过以下技术方案实现的:
[0007]根据本专利技术的第一方面,提供一种对预训练的神经网络模型进行剪枝的方法,其中将所述预训练的神经网络模型作为基线模型,包括:S1、选择所述基线模型中需要剪枝的网络层作为目标网络层;S2、获取目标网络层中多个卷积核的各权重参数对应的梯度值;S3、针对所述目标网络层,基于每个卷积核的各权重参数对应的梯度值确定该卷积核中重要的权重参数的数量;S4、针对所述目标网络层,根据其所有的卷积核中重要的权重参数的数量对所述目标网络层进行剪枝;S5、对剪枝后的模型进行重训练,得到压缩后的模型。
[0008]在本专利技术的一些实施例中,所述需要剪枝的网络层按照以下方式中的一种或者多种方式确定:通过层号或网络层名称选择特定的网络层作为需要剪枝的网络层,或者将网络层的计算量大于等于预设的计算量阈值的网络层作为需要剪枝的网络层,或者将网络层的权重参数的参数量大于等于预设的参数量阈值的网络层作为需要剪枝的网络层,或者将网络层的计算量占比大于等于预设的计算量占比阈值的网络层作为需要剪枝的网络层,或者将网络层的权重参数的参数量占比大于等于预设的参数量占比阈值的网络层作为需要剪枝的网络层。
[0009]在本专利技术的一些实施例中,所述S3包括:S31、计算每个卷积核的所有权重参数对应的梯度值中绝对值最大的梯度值,根据设置的搜索步数上限和所述绝对值最大的梯度值的绝对值确定该卷积核的多个搜索阈值;S32、每步搜索利用每个卷积核各自对应的多个搜索阈值中的一个搜索阈值搜索权重参数对应的梯度绝对值大于等于该搜索阈值的权重参数的个数,直至相邻两步搜索出的权重参数的个数的绝对差值小于设定停止阈值时停止搜索,其中,当前的搜索步数越接近搜索步数上限其对应的搜索阈值越接近当前目标网络层中绝对值最大的梯度值的绝对值;S33、将权重参数对应的梯度绝对值大于等于停止搜索时对应的搜索阈值的权重参数的个数作为该卷积核中重要的权重参数的数量。
[0010]在本专利技术的一些实施例中,所述S3包括:S31

、计算每个卷积核的所有权重参数对应的梯度值中绝对值最大的梯度值,根据设置的搜索步数上限和所述绝对值最大的梯度值的绝对值确定该卷积核的多个搜索阈值;S32

、每步搜索利用每个卷积核各自对应的多个搜索阈值中的一个搜索阈值搜索权重参数对应的梯度绝对值小于该搜索阈值的权重参数的个数,确定每步搜索的剩余参数量,直至相邻两步搜索后的剩余参数量的绝对差值小于设定停止阈值时停止搜索,其中,当前的搜索步数越接近搜索步数上限其对应的搜索阈值越接近当前目标网络层中绝对值最大的梯度值的绝对值;S33

、对每个卷积核,确定对该卷积核停止搜索时所采用的搜索阈值,将梯度值的绝对值小于该搜索阈值的权重参数置零;S34

、计算每个卷积核中非零的权重参数的数量,将其作为该卷积核中重要的权重参数的数量。
[0011]在本专利技术的一些实施例中,按照以下公式确定各卷积核的多个搜索阈值:其中,表示第l个网络层的第t个卷积核的第i步搜索的搜索阈值,表示第l个网络层的第t个卷积核的绝对值最大的梯度值的绝对值,m
i
表示第i步搜索,m表示用户设置的搜索步数上限。
[0012]优选的,所述搜索步数上限的设置范围为[50,300]。
[0013]在本专利技术的一些实施例中,停止阈值根据以下公式确定:在本专利技术的一些实施例中,停止阈值根据以下公式确定:其中,γ表示用户设置的调整系数,表示第l个网络层的第t个卷积核的权重参数p的数量,m表示用户设置的搜索步数上限。
[0014]在本专利技术的一些实施例中,所述S4包括:S41、根据每个目标网络层的所有的卷积核中重要的权重参数的数量中的最大值乘以预设系数作为该目标网络层的剪枝指标;S42、将该目标网络层中重要的权重参数的数量小于该剪枝指标的卷积核去除,或者根据目标网络层中重要的权重参数的数量大于等于该剪枝指标的卷积核的数量重设该目标网络层的卷积核的数量。
[0015]根据本专利技术的第二方面,提供一种电子设备,包括:一个或多个处理器;以及存储器,其中存储器用于存储一个或多个可执行指令;所述一个或多个处理器被配置为经由执行所述一个或多个可执行指令以实现第一方面所述方法的步骤。
[0016]与现有技术相比,本专利技术的优点在于:
[0017]本专利技术针对所述目标网络层,基于每个卷积核的各权重参数对应的梯度值确定该
卷积核中重要的权重参数的数量,并针对所述目标网络层,根据其所有的卷积核中重要的权重参数的数量对所述目标网络层进行剪枝,提高了剪枝的精度。而且,本专利技术不需要用户手动逐层去观测当前层的剪枝比例对模型性能的影响即可完成剪枝,用户可以只观测最终压缩后的模型的性能和大小是否满足需求即可,提高了剪枝的效率。
附图说明
[0018]以下参照附图对本专利技术实施例作进一步说明,其中:
[0019]图1为根据本专利技术实施例的对神经网络模型进行剪枝的方法的流程示意图;
[0020]图2为根据本专利技术实施例的对神经网络模型进行剪枝的方法对一个示意性的残差网络进行剪枝前后的示意图;
[0021]图3为根据本专利技术实施例的对神经网络模型进行剪枝的方法的一个示例的流程示意图;
[0022]图4为根据本专利技术实施例的对本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种对预训练的神经网络模型进行剪枝的方法,其中将所述预训练的神经网络模型作为基线模型,其特征在于,包括:S1、选择所述基线模型中需要剪枝的网络层作为目标网络层;S2、获取目标网络层中多个卷积核的各权重参数对应的梯度值;S3、针对所述目标网络层,基于每个卷积核的各权重参数对应的梯度值确定该卷积核中重要的权重参数的数量;S4、针对所述目标网络层,根据其所有的卷积核中重要的权重参数的数量对所述目标网络层进行剪枝;S5、对剪枝后的模型进行重训练,得到压缩后的模型。2.根据权利要求1所述的方法,其特征在于,所述需要剪枝的网络层按照以下方式中的一种或者多种方式确定:通过层号、网络层名称选择特定的网络层作为需要剪枝的网络层,或者将网络层的计算量大于等于预设的计算量阈值的网络层作为需要剪枝的网络层,或者将网络层的权重参数的参数量大于等于预设的参数量阈值的网络层作为需要剪枝的网络层,或者将网络层的计算量占比大于等于预设的计算量占比阈值的网络层作为需要剪枝的网络层,或者将网络层的权重参数的参数量占比大于等于预设的参数量占比阈值的网络层作为需要剪枝的网络层。3.根据权利要求1所述的方法,其特征在于,所述S3包括:S31、计算每个卷积核的所有权重参数对应的梯度值中绝对值最大的梯度值,根据设置的搜索步数上限和所述绝对值最大的梯度值的绝对值确定该卷积核的多个搜索阈值;S32、每步搜索利用每个卷积核各自对应的多个搜索阈值中的一个搜索阈值搜索权重参数对应的梯度绝对值大于等于该搜索阈值的权重参数的个数,直至相邻两步搜索出的权重参数的个数的绝对差值小于设定停止阈值时停止搜索,其中,当前的搜索步数越接近搜索步数上限其对应的搜索阈值越接近当前目标网络层中绝对值最大的梯度值的绝对值;S33、将权重参数对应的梯度绝对值大于等于停止搜索时对应的搜索阈值的权重参数的个数作为该卷积核中重要的权重参数的数量。4.根据权利要求1所述的方法,其特征在于,所述S3包括:S31

、计算每个卷积核的所有权重参数对应的梯度值中绝对值最大的梯度值,根据设置的搜索步数上限和所述绝对值最大的梯度值的绝对值确定该卷积核的多个搜索阈值;S32

...

【专利技术属性】
技术研发人员:王国栋叶剑杜恒欣
申请(专利权)人:临沂中科人工智能创新研究院有限公司
类型:发明
国别省市:

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

1