提升深度学习模型吞吐量的方法、装置、设备及可读介质制造方法及图纸

技术编号:32530929 阅读:9 留言:0更新日期:2022-03-05 11:25
本发明专利技术提供了一种提升深度学习模型吞吐量的方法、装置、设备及可读介质,该方法包括:根据需求为深度学习模型设置分层界限阈值;获取深度模型中网络结构的层数,并将深度学习模型根据分层界限阈值划分为两部分;按两部分模型的顺序依次对输入参数进行训练。通过使用本发明专利技术的方案,能够有效减少内存的使用量,能够加快模型的训练效率,能够提升深度学习模型的吞吐量。吞吐量。吞吐量。

【技术实现步骤摘要】
提升深度学习模型吞吐量的方法、装置、设备及可读介质


[0001]本专利技术涉及计算机领域,并且更具体地涉及一种提升深度学习模型吞吐量的方法、装置、设备及可读介质。

技术介绍

[0002]深度学习在许多不同的应用领域取得了进展,从图像识别到语言建模,再到机器翻译和语音识别。两种趋势对这些结果至关重要——越来越大的训练数据集和越来越复杂的模型。例如,Hannun等人(2014年)使用的语音识别模型是基于5000小时的数据进行训练的,最近的声学模型是基于近12000小时的数据进行训练的(Amodei等人,2016年),而Soltau等人(2016年)使用的数据集更大,如125000小时。Hannun等人(2014年)使用的神经网络有1100万个参数,双向RNN的参数增加到约6700万个,Amodei等人(2016年)使用的最新前向纯递归单元(GRU)模型的参数进一步增加到1.16亿个。大型模型通常需要更多的计算和内存资源进行训练。这些要求可以通过使用降低精度的表示和算法来降低。任何程序(包括神经网络训练和推理)的性能(速度)都受到三个因素之一的限制:算术带宽、内存带宽或延迟。降低精度解决了其中两个限制。通过使用更少的位来表示值,对于相同数量的数学运算可以降低内存带宽压力,读取/写入内存的字节更少。由于某些处理器提供更高的吞吐量以降低计算精度,因此计算时间也可以降低。例如,在最近的GPU中,半精度吞吐量比单精度高2到8倍。除了提高速度外,精度降低的格式还可以减少训练所需的内存量。
[0003]深度神经网络(DNN)在许多领域都取得了突破,包括图像处理和理解,语言建模,语言翻译,语音处理,游戏策略以及许多其他领域。为了获得这些卓越结果,DNN的复杂性一直在增加,这反过来又增加了训练这些网络所需的计算资源。
[0004]混合精度训练是一种重要的技术,它使我们能够减少深层神经网络的内存消耗,并利用现代处理器中更快的计算单元。在训练阶段使用半精度(FP16)的动机是为了降低内存带宽压力并提高算术吞吐量。前者可以通过使用较少的位来存储相同数量的值来实现,后者可以在提供更高的吞吐量降低了计算精度。因为在半精度训练中将导致计算的学习率超出IEEE半精度格式(FP16)的动态范围,从而导致梯度消失并暂停训练过程。

技术实现思路

[0005]有鉴于此,本专利技术实施例的目的在于提出一种提升深度学习模型吞吐量的方法、装置、设备及可读介质,通过使用本专利技术的技术方案,能够有效减少内存的使用量,能够加快模型的训练效率,能够提升深度学习模型的吞吐量。
[0006]基于上述目的,本专利技术的实施例的一个方面提供了一种提升深度学习模型吞吐量的方法,包括以下步骤:
[0007]根据需求为深度学习模型设置分层界限阈值;
[0008]获取深度模型中网络结构的层数,并将深度学习模型根据分层界限阈值划分为两部分;
[0009]按两部分模型的顺序依次对输入参数进行训练。
[0010]根据本专利技术的一个实施例,获取深度模型中网络结构的层数,并将深度学习模型根据分层界限阈值划分为两部分包括:
[0011]获取深度模型中网络结构的层数;
[0012]将第一层网络结构到分层界限阈值对应的网络结构划分为第一部分模型;
[0013]将分层界限阈值对应的网络结构到最后一层网络结构划分为第二部分模型。
[0014]根据本专利技术的一个实施例,分层界限阈值为1至深度学习模型中网络结构层数之间的整数。
[0015]根据本专利技术的一个实施例,按两部分模型的顺序依次对输入参数进行训练包括:
[0016]使用第一部分模型对输入参数进行训练后得到训练结果;
[0017]使用第二部分模型对训练结果进行训练后得到最终结果。
[0018]本专利技术的实施例的另一个方面,还提供了一种提升深度学习模型吞吐量的装置,装置包括:
[0019]设置模块,设置模块配置为根据需求为深度学习模型设置分层界限阈值;
[0020]划分模块,划分模块配置为获取深度模型中网络结构的层数,并将深度学习模型根据分层界限阈值划分为两部分;
[0021]训练模块,训练模块配置为按两部分模型的顺序依次对输入参数进行训练。
[0022]根据本专利技术的一个实施例,划分模块还配置为:
[0023]获取深度模型中网络结构的层数;
[0024]将第一层网络结构到分层界限阈值对应的网络结构划分为第一部分模型;
[0025]将分层界限阈值对应的网络结构到最后一层网络结构划分为第二部分模型。
[0026]根据本专利技术的一个实施例,分层界限阈值为1至深度学习模型中网络结构层数之间的整数。
[0027]根据本专利技术的一个实施例,训练模块还配置为:
[0028]使用第一部分模型对输入参数进行训练后得到训练结果;
[0029]使用第二部分模型对训练结果进行训练后得到最终结果。
[0030]本专利技术的实施例的另一个方面,还提供了一种计算机设备,该计算机设备包括:
[0031]至少一个处理器;以及
[0032]存储器,存储器存储有可在处理器上运行的计算机指令,指令由处理器执行时实现上述任意一项方法的步骤。
[0033]本专利技术的实施例的另一个方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述任意一项方法的步骤。
[0034]本专利技术具有以下有益技术效果:本专利技术实施例提供的提升深度学习模型吞吐量的方法,通过根据需求为深度学习模型设置分层界限阈值;获取深度模型中网络结构的层数,并将深度学习模型根据分层界限阈值划分为两部分;按两部分模型的顺序依次对输入参数进行训练的技术方案,能够有效减少内存的使用量,能够加快模型的训练效率,能够提升深度学习模型的吞吐量。
附图说明
[0035]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
[0036]图1为根据本专利技术一个实施例的提升深度学习模型吞吐量的方法的示意性流程图;
[0037]图2为根据本专利技术一个实施例的提升深度学习模型吞吐量的装置的示意图;
[0038]图3为根据本专利技术一个实施例的计算机设备的示意图;
[0039]图4为根据本专利技术一个实施例的计算机可读存储介质的示意图。
具体实施方式
[0040]为使本专利技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本专利技术实施例进一步详细说明。
[0041]基于上述目的,本专利技术的实施例的第一个方面,提出了一种提升深度学习模型吞吐量的方法的一个实施例。图1示出的是该方法的示意性流程图。
[0042]如图1中所示,该方法可以包括以下步本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种提升深度学习模型吞吐量的方法,其特征在于,包括以下步骤:根据需求为深度学习模型设置分层界限阈值;获取所述深度模型中网络结构的层数,并将所述深度学习模型根据分层界限阈值划分为两部分;按两部分模型的顺序依次对输入参数进行训练。2.根据权利要求1所述的方法,其特征在于,获取所述深度模型中网络结构的层数,并将所述深度学习模型根据分层界限阈值划分为两部分包括:获取所述深度模型中网络结构的层数;将第一层网络结构到所述分层界限阈值对应的网络结构划分为第一部分模型;将所述分层界限阈值对应的网络结构到最后一层网络结构划分为第二部分模型。3.根据权利要求1所述的方法,其特征在于,分层界限阈值为1至所述深度学习模型中网络结构层数之间的整数。4.根据权利要求1所述的方法,其特征在于,按两部分模型的顺序依次对输入参数进行训练包括:使用第一部分模型对输入参数进行训练后得到训练结果;使用第二部分模型对所述训练结果进行训练后得到最终结果。5.一种提升深度学习模型吞吐量的装置,其特征在于,所述装置包括:设置模块,所述设置模块配置为根据需求为深度学习模型设置分层界限阈值;划分模块,所述划分模块配置为获取所述深度模型中网络结构的层数,并将所...

【专利技术属性】
技术研发人员:辛永欣
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

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

1