神经网络的剪枝处理方法、装置、设备及介质制造方法及图纸

技术编号:39175829 阅读:9 留言:0更新日期:2023-10-27 08:23
本公开实施例涉及一种神经网络的剪枝处理方法、装置、设备及介质,其中该方法包括:根据预设的剪枝压缩指标对初始神经网络进行剪枝处理,获取多个候选子网;根据预设的性能评估指标预测每个候选子网在目标硬件平台上运行的预估数值;根据预估数值从多个候选子网中筛选目标子网,其中,目标子网在目标硬件平台上运行的预估数值,匹配预先配置的与性能评估指标对应的目标数值范围。可见,本公开实施例以直接的硬件评估指标准确筛选出更加适应硬件平台特性的目标子网进行数据处理,进一步的提高了网络的运行性能和数据处理效率。提高了网络的运行性能和数据处理效率。提高了网络的运行性能和数据处理效率。

【技术实现步骤摘要】
神经网络的剪枝处理方法、装置、设备及介质


[0001]本公开涉及计算机
,尤其涉及一种神经网络的剪枝处理方法、装置、设备及介质。

技术介绍

[0002]基于神经网络的人工智能技术在移动终端等硬件平台上的应用,智能移动终端飞速发展满足人们的各种应用需求。其中,其主要实现技术包括基于训练好的神经网络模型数据在视频处理语言识别、图像识别与理解、游戏视觉等应用领域的数据处理。基于移动终端有限的计算资源,考虑到绝大多数的卷积神经网络均存在一定程度上的参数冗余,因此通过剪枝去除神经网络中各层冗余的卷积核或卷积核上的神经元,在移动终端等硬件平台上得到占用计算资源和存储资源更小的神经网络。
[0003]现有的大部分剪枝算法是通过减少计算量或者参数量来简化网络,但是由于神经网络计算的复杂性和硬件平台底层计算特性的不同,计算量或者参数量的减少并不一定能带来速度的提升和功耗的减小。由此可见,仅仅通过计算量或者参数量对剪枝后的神经网络的性能评估不够准确。

技术实现思路

[0004]为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一种神经网络的剪枝处理方法、装置、设备及介质。
[0005]第一方面,本公开实施例提供了一种神经网络的剪枝处理方法,所述方法包括:
[0006]根据预设的剪枝压缩指标对初始神经网络进行剪枝处理,获取多个候选子网;
[0007]根据预设的性能评估指标预测每个所述候选子网在目标硬件平台上运行的预估数值;
[0008]根据所述预估数值从所述多个候选子网中筛选目标子网,其中,所述目标子网在所述目标硬件平台上运行的预估数值,满足预先配置的与所述性能评估指标对应的目标数值范围。
[0009]一种可选的实施方式中,所述预设的剪枝压缩指标,包括:
[0010]剪枝计算量压缩指标,或者,剪枝参数量压缩指标。
[0011]一种可选的实施方式中,所述根据预设的剪枝压缩指标对初始神经网络进行剪枝处理,获取多个候选子网,包括:
[0012]根据预设的起始剪枝率和当前周期的剪枝增长率,获取所述当前周期的剪枝压缩指标;
[0013]根据所述当前周期的剪枝压缩指标对所述初始神经网络中的至少一个卷积层进行剪枝处理,获取所述多个候选子网。
[0014]一种可选的实施方式中,所述根据所述当前周期的剪枝压缩指标对所述初始神经网络中的至少一个卷积层进行剪枝处理,获取多个候选子网,包括:
[0015]根据所述当前周期的剪枝压缩指标,以及所述初始神经网络中每个卷积层的参数配置,计算与每个卷积层对应的剪枝单元集合,其中,所述每个卷积层对应的剪枝单元集合均满足所述当前周期的剪枝压缩指标;
[0016]根据所述每个卷积层对应的剪枝单元集合,分别对所述初始神经网络中每个卷积层进行单独的剪枝处理,获取所述多个候选子网,其中,所述多个候选子网的数量与所述初始神经网络的卷积层数量一致。
[0017]一种可选的实施方式中,所述预设的性能评估指标,包括:
[0018]速度、延时、功耗、内存占用中的一个性能评估指标,或,多个性能评估指标的组合。
[0019]一种可选的实施方式中,所述根据预设的性能评估指标预测每个所述候选子网在目标硬件平台上运行的预估数值,包括:
[0020]根据速度评估网络对每个所述候选子网进行编码处理,获取每个所述候选子网在所述目标硬件平台上的运行速度,其中,所述速度评估网络是根据所述目标硬件平台的样本网络和对应速度的数据集训练生成的。
[0021]一种可选的实施方式中,所述根据预设的性能评估指标预测每个所述候选子网在目标硬件平台上运行的预估数值,包括:
[0022]根据功耗评估网络对每个所述候选子网进行编码处理,获取每个所述候选子网在所述目标硬件平台上的运行功耗,其中,所述功耗评估网络是根据所述目标硬件平台的样本网络和对应功耗的数据集训练生成的。
[0023]一种可选的实施方式中,所述根据所述预估数值从所述多个候选子网中筛选目标子网,包括:
[0024]将所述预估数值与所述目标数值范围进行比较,如果存在至少一个满足所述目标数值范围的预估数值,则从所述多个候选子网中筛选对应满足所述目标数值范围的至少一个目标候选子网;
[0025]根据所述至少一个目标候选子网筛选所述目标子网。
[0026]一种可选的实施方式中,在所述目标候选子网为多个的情况下,所述根据所述至少一个目标候选子网筛选所述目标子网,包括:
[0027]从预设的多个性能评估指标中确定目标性能评估指标;
[0028]将每个所述目标候选子网中与所述目标性能评估指标对应的预估数值进行比较;
[0029]根据比较结果选择预估数值最高的目标候选子网为所述目标子网。
[0030]一种可选的实施方式中,在所述目标候选子网为多个的情况下,所述根据所述至少一个目标候选子网筛选所述目标子网,包括:
[0031]预测每个所述目标候选子网在所述目标硬件平台的运行精度;
[0032]比较每个所述目标候选子网在所述目标硬件平台的运行精度,选择运行精度最高的目标候选子网为所述目标子网。
[0033]一种可选的实施方式中,在将所述预估数值与所述目标数值范围进行比较之后,还包括:
[0034]如果所有的所述预估数值都不满足所述目标数值范围,则预测每个所述候选子网在所述目标硬件平台的运行精度;
[0035]比较每个所述候选子网在所述目标硬件平台的运行精度,选择运行精度最高的候选子网为下一周期的初始神经网络;
[0036]根据预设的下一周期的剪枝增长率对所述下一周期的初始神经网络进行剪枝处理,获取所述多个候选子网。
[0037]一种可选的实施方式中,还包括:
[0038]在所述目标硬件平台上通过所述目标子网对输入数据进行数据处理,其中,所述输入数据包括多媒体数据、音频数据、视频数据、图像数据中的一种或者多种组合。
[0039]第二方面,本公开实施例还提供了一种神经网络的剪枝处理装置,所述装置包括:
[0040]获取模块,用于根据预设的剪枝压缩指标对初始神经网络进行剪枝处理,获取多个候选子网;
[0041]预测模块,用于根据预设的性能评估指标预测每个所述候选子网在目标硬件平台上运行的预估数值;
[0042]筛选模块,用于根据所述预估数值从所述多个候选子网中筛选目标子网,其中,所述目标子网在所述目标硬件平台上运行的预估数值,满足预先配置的与所述性能评估指标对应的目标数值范围。
[0043]第三方面,本公开提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备实现上述的方法。
[0044]第四方面,本公开提供了一种设备,包括:存储器,处理器,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现上述的方法。
[004本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种神经网络的剪枝处理方法,其特征在于,包括:根据预设的剪枝压缩指标对初始神经网络进行剪枝处理,获取多个候选子网;根据预设的性能评估指标预测每个所述候选子网在目标硬件平台上运行的预估数值;根据所述预估数值从所述多个候选子网中筛选目标子网,其中,所述目标子网在所述目标硬件平台上运行的预估数值,匹配预先配置的与所述性能评估指标对应的目标数值范围。2.根据权利要求1所述的方法,其特征在于,所述预设的剪枝压缩指标,包括:剪枝计算量压缩指标,或者,剪枝参数量压缩指标。3.根据权利要求1所述的方法,其特征在于,所述根据预设的剪枝压缩指标对初始神经网络进行剪枝处理,获取多个候选子网,包括:根据预设的起始剪枝率和当前周期的剪枝增长率,获取所述当前周期的剪枝压缩指标;根据所述当前周期的剪枝压缩指标对所述初始神经网络中的至少一个卷积层进行剪枝处理,获取所述多个候选子网。4.根据权利要求3所述的方法,其特征在于,所述根据所述当前周期的剪枝压缩指标对所述初始神经网络中的至少一个卷积层进行剪枝处理,获取多个候选子网,包括:根据所述当前周期的剪枝压缩指标,以及所述初始神经网络中每个卷积层的参数配置,计算与每个卷积层对应的剪枝单元集合,其中,所述每个卷积层对应的剪枝单元集合均满足所述当前周期的剪枝压缩指标;根据所述每个卷积层对应的剪枝单元集合,分别对所述初始神经网络中每个卷积层进行单独的剪枝处理,获取所述多个候选子网,其中,所述多个候选子网的数量与所述初始神经网络的卷积层数量一致。5.根据权利要求1所述的方法,其特征在于,所述预设的性能评估指标,包括:速度、延时、功耗、内存占用中的一个性能评估指标,或,多个性能评估指标的组合。6.根据权利要求1所述的方法,其特征在于,所述根据预设的性能评估指标预测每个所述候选子网在目标硬件平台上运行的预估数值,包括:根据速度评估网络对每个所述候选子网进行编码处理,获取每个所述候选子网在所述目标硬件平台上的运行速度,其中,所述速度评估网络是根据所述目标硬件平台的样本网络和对应速度的数据集训练生成的。7.根据权利要求1所述的方法,其特征在于,所述根据预设的性能评估指标预测每个所述候选子网在目标硬件平台上运行的预估数值,包括:根据功耗评估网络对每个所述候选子网进行编码处理,获取每个所述候选子网在所述目标硬件平台上的运行功耗,其中,所述功耗评估网络是根据所述目标硬件平台的样本网络和对应功耗的数据集训练生成的。8.根据权利要求1所述的方法,其特征在于,所述根据所述预估数值从所述多个候选子网中筛选目标子网,包括:将所述预估数值与所述目标数值范围进行比较,如果存在至少一个满足所述目标数值范围的预估数值,则从所述多个候选子网中筛选对应满足所述目标数值范围的至少...

【专利技术属性】
技术研发人员:刘松伟
申请(专利权)人:北京字跳网络技术有限公司
类型:发明
国别省市:

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

1