System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及人工智能,尤其涉及一种神经网络剪枝方法及相关装置。
技术介绍
1、随着技术的发展,深度学习(deep learning,dl)算法在机器视觉、自然语言处理、自动驾驶、机器人等领域中得到了广泛的应用,然而其复杂的结构在推理时带来了巨大的功耗和计算资源(cpu、内存、存储空间等)占用,对计算能力和内存要求很高,从而严重限制了此类技术在功耗和资源受限的移动和嵌入式平台上的部署。
2、为了推进基于深度学习产品的应用,一种做法是对神经网络(neural network,nn)进行简化来减少其对计算能力和内存的需求,例如剪枝(pruning)。剪枝是指从原始神经网络中系统性地剪去部分不重要的权重而尽量少地损失精度,以减少原始神经网络的参数量,来达到降低各项资源占用的效果。现有的剪枝方法如静态剪枝、迭代剪枝等容易受到大量无关因素的干扰,剪枝结果的效果和稳定性难以平衡。
技术实现思路
1、有鉴于此,本申请提供了一种神经网络剪枝方法及相关装置,可以在保证剪枝效果的同时保证剪枝后神经网络的性能。
2、第一方面,本申请实施例提供了一种神经网络剪枝方法,所述方法包括:
3、构建第一神经网络和第二神经网络;
4、对所述第一神经网络和所述第二神经网络进行迭代训练,以得到训练好的第一神经网络和训练好的第二神经网络,所述训练好的第一神经网络用于输出目标剪枝策略,所述训练好的第二神经网络用于确定每种剪枝策略的优劣度,所述目标剪枝策略用于指示所述训练好的第二神
5、在待剪枝神经网络上应用所述目标剪枝策略,以得到稀疏神经网络,所述待剪枝神经网络为已收敛的神经网络;
6、将所述稀疏神经网络中的每个层的结构替换为过参数化结构后进行训练,以得到训练好的稀疏神经网络;
7、对所述训练好的稀疏神经网络进行结构还原处理,以得到目标神经网络。
8、第二方面,本申请实施例提供了一种神经网络剪枝装置,所述装置包括:
9、构建单元,用于构建第一神经网络和第二神经网络;
10、第一训练单元,用于对所述第一神经网络和所述第二神经网络进行迭代训练,以得到训练好的第一神经网络和训练好的第二神经网络,所述训练好的第一神经网络用于输出目标剪枝策略,所述训练好的第二神经网络用于确定每种剪枝策略的优劣度,所述目标剪枝策略用于指示所述训练好的第二神经网络模型确定的所述优劣度最高的剪枝策略;
11、剪枝单元,用于在待剪枝神经网络上应用所述目标剪枝策略,以得到稀疏神经网络,所述待剪枝神经网络为已收敛的神经网络;
12、第二训练单元,用于将所述稀疏神经网络中的每个层的结构替换为过参数化结构后进行训练,以得到训练好的稀疏神经网络;
13、结构还原单元,用于对所述训练好的稀疏神经网络进行结构还原处理,以得到目标神经网络。
14、第三方面,本申请实施例提供一种电子设备,包括处理器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,上述程序包括用于执行本申请实施例第一方面任一方法中的步骤的指令。
15、第四方面,本申请实施例提供了一种芯片,包括处理器、存储器及存储在该存储器上的计算机程序或指令,其中,该处理器执行该计算机程序或指令以实现如本申请实施例第一方面任一方法中所描述的部分或全部步骤。
16、第五方面,本申请实施例提供了一种计算机可读存储介质,其中,上述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本申请实施例第一方面任一方法中所描述的部分或全部步骤。
17、第六方面,本申请实施例提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第一方面任一方法中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
18、可见,通过上述神经网络剪枝方法及相关装置,首先,构建第一神经网络和第二神经网络;然后,对所述第一神经网络和所述第二神经网络进行迭代训练,以得到训练好的第一神经网络和训练好的第二神经网络,所述训练好的第一神经网络用于输出目标剪枝策略,所述训练好的第二神经网络用于确定每种剪枝策略的优劣度,所述目标剪枝策略用于指示所述训练好的第二神经网络模型确定的所述优劣度最高的剪枝策略;接着,在待剪枝神经网络上应用所述目标剪枝策略,以得到稀疏神经网络,所述待剪枝神经网络为已收敛的神经网络;接着,将所述稀疏神经网络中的每个层的结构替换为过参数化结构后进行训练,以得到训练好的稀疏神经网络;最后,对所述训练好的稀疏神经网络进行结构还原处理,以得到目标神经网络。可以通过第一神经网络确定最优的目标剪枝策略,并在剪枝后已过参数化结构进行训练,保证剪枝精度的同时保证剪枝后的神经网络的性能。
本文档来自技高网...【技术保护点】
1.一种神经网络剪枝方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述对所述第一神经网络和所述第二神经网络进行迭代训练,以得到训练好的第一神经网络和训练好的第二神经网络,包括:
3.根据权利要求2所述的方法,其特征在于,所述根据当前迭代轮次确定初始剪枝策略,包括:
4.根据权利要求1所述的方法,其特征在于,所述在待剪枝神经网络上应用所述目标剪枝策略,以得到稀疏神经网络,包括:
5.根据权利要求2所述的方法,其特征在于,所述将所述稀疏神经网络中的每个层的结构替换为过参数化结构后进行训练,以得到训练好的稀疏神经网络,包括:
6.根据权利要求5所述的方法,其特征在于,所述对所述训练好的稀疏神经网络进行结构还原处理,以得到目标神经网络,包括:
7.根据权利要求1所述的方法,其特征在于,所述对所述训练好的稀疏神经网络进行结构还原处理,以得到目标神经网络之后,所述方法还包括:
8.一种神经网络剪枝装置,其特征在于,所述装置包括:
9.一种芯片,其特征在于,包括处理器、
10.一种电子设备,其特征在于,包括:处理器,存储器,以及一个或多个程序;所述一个或多个程序被存储在所述存储器中,并且被配置成由所述处理器执行,所述程序包括用于执行如权利要求1-7任一项所述的方法中的步骤的指令。
11.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-7任一项所述的方法。
...【技术特征摘要】
1.一种神经网络剪枝方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述对所述第一神经网络和所述第二神经网络进行迭代训练,以得到训练好的第一神经网络和训练好的第二神经网络,包括:
3.根据权利要求2所述的方法,其特征在于,所述根据当前迭代轮次确定初始剪枝策略,包括:
4.根据权利要求1所述的方法,其特征在于,所述在待剪枝神经网络上应用所述目标剪枝策略,以得到稀疏神经网络,包括:
5.根据权利要求2所述的方法,其特征在于,所述将所述稀疏神经网络中的每个层的结构替换为过参数化结构后进行训练,以得到训练好的稀疏神经网络,包括:
6.根据权利要求5所述的方法,其特征在于,所述对所述训练好的稀疏神经网络进行结构还原处理,以得到目标神经网络,包括:
7.根据权利要求1所述的方法,...
【专利技术属性】
技术研发人员:李文进,
申请(专利权)人:哲库科技上海有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。