System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 大模型的分布式训练方法、装置及电子设备制造方法及图纸_技高网

大模型的分布式训练方法、装置及电子设备制造方法及图纸

技术编号:40974661 阅读:5 留言:0更新日期:2024-04-18 21:23
本发明专利技术提供了一种大模型的分布式训练方法、装置及电子设备,涉及人工智能技术领域,本发明专利技术能够获取资源需求配置信息和待训练的大模型的模型配置信息;基于资源需求配置信息和模型配置信息,依次对大模型的模型结构和应用数据进行流水线并行和张量并行的切分;对当前切分结果进行时间维度和资源维度的评价,得到当前评价指数值;基于当前评价指数值对当前切分结果进行优化,得到大模型的目标切分结果,以基于目标切分结果对大模型进行分布式训练。这样用户只需要给出资源需求和大模型的模型配置信息,即可进行动态组网,且优化时考虑了时间维度和资源维度,因此可以提高训练精度,最大化并行性能。

【技术实现步骤摘要】

本专利技术涉及人工智能,尤其是涉及一种大模型的分布式训练方法、装置及电子设备


技术介绍

1、垂类大模型(简称大模型)是指一种基于深度学习的大型预训练模型,用于处理特定领域或任务的大规模数据集。这种模型通常由多个子模型组成,每个子模型负责处理不同的任务或特征。通过在大规模数据集上进行预训练,垂类大模型可以学习到丰富的语义和上下文信息,从而在特定任务上表现出色。当前工业视觉领域的垂类大模型稀缺,主要是由于其分类种类需求多、数据量需求巨大,对于硬件和显存的压力非常大,需要使用分布式并行技术和多张显卡进行训练。

2、通常有两种类型的并行技术:张量并行和流水线并行。张量并行是在一个操作中进行并行计算,如:矩阵-矩阵乘法。流水线并行是在各层之间进行并行计算。因此,从另一个角度来看,张量并行可以被看作是层内并行,流水线并行可以被看作是层间并行。

3、不论是张量并行,还是流水线并行,都需要考虑计算代价、通信代价、内存代价以及最后的训练效果等因素。目前现有的模型分布式训练方法,第一存在工程上手困难、考虑维度多的问题;第二对于张量并行与流水线并行,其内部设计的逻辑可能会在各个方面存在问题:第一个问题是在使用分布式技术的过程中,需要工程人员对于网络设计、分布式训练设计具备非常深刻的理解,并且每次都需要手动配比相应的参数和编写相关的代码,进行大量的调试与设计;第二个问题是分布式训练的硬件资源往往非常多,如有几百、几千张显卡资源,以及几十个服务器资源等,在启动的过程中,对于硬件资源的状态、硬件资源之间的协调与分配往往需要手动进行指定,非常繁琐而且具有不弹性(只能一个个找)、不能容错(训练过程中硬件节点故障会导致训练中断)的问题;第三个是通过人工手动设置的模型参数,往往不是并行方案最适合的参数,可能具有很多的设计冗余,训练精度也会因为设计的不合理而受影响。


技术实现思路

1、本专利技术的目的在于提供一种大模型的分布式训练方法、装置及电子设备,以至少解决上述问题之一。

2、第一方面,本专利技术实施例提供了一种大模型的分布式训练方法,包括:

3、获取目标计算集群的资源需求配置信息和待训练的大模型的模型配置信息;

4、基于所述资源需求配置信息和所述模型配置信息,依次对所述大模型的模型结构和应用数据进行流水线并行和张量并行的切分,得到当前切分结果;

5、对所述当前切分结果进行时间维度和资源维度的评价,得到当前评价指数值;

6、基于所述当前评价指数值对所述当前切分结果进行优化,得到所述大模型的目标切分结果,以基于所述目标切分结果对所述大模型进行分布式训练。

7、进一步地,所述基于所述资源需求配置信息和所述模型配置信息,依次对所述大模型的模型结构和应用数据进行流水线并行和张量并行的切分,得到当前切分结果,包括:

8、在所述目标计算集群中搜索得到当前的全局可用资源,并基于所述全局可用资源和所述资源需求配置信息,确定所述目标计算集群的可用资源信息;

9、基于所述模型配置信息对所述大模型进行算子拆分,得到所述大模型的算子信息;

10、基于所述算子信息对所述大模型中每个算子的权重参数进行流水线并行和张量并行的切分,得到初始切分结果;

11、基于所述初始切分结果和所述可用资源信息,对所述大模型的应用数据进行张量并行的切分,得到当前切分结果。

12、进一步地,所述基于所述模型配置信息对所述大模型进行算子拆分,得到所述大模型的算子信息,包括:

13、根据所述模型配置信息,生成所述大模型的网络结构整体图;

14、基于所述网络结构整体图和已注册的多个算子,对所述大模型进行算子拆分,得到所述大模型的算子信息。

15、进一步地,所述基于所述算子信息对所述大模型中每个算子的权重参数进行流水线并行和张量并行的切分,得到初始切分结果,包括:

16、基于所述算子信息和预设的第一因素,对所述大模型中每个算子的权重参数进行流水线并行和张量并行的切分,得到初始切分结果;其中,所述第一因素包括资源占用量和前向与反向时间。

17、进一步地,所述基于所述初始切分结果和所述可用资源信息,对所述大模型的应用数据进行张量并行的切分,得到当前切分结果,包括:

18、基于所述初始切分结果、所述可用资源信息和预设的第二因素,对所述大模型的应用数据进行张量并行的切分,得到当前切分结果;其中,所述第二因素包括批处理大小。

19、进一步地,所述对所述当前切分结果进行时间维度和资源维度的评价,得到当前评价指数值,包括:

20、根据所述当前切分结果,计算得到资源占用量数据和时间占用量数据;

21、基于所述资源占用量数据和所述时间占用量数据,确定资源分值和时间分值;

22、基于预设的权重数据,对所述资源分值和所述时间分值进行加权求和计算,得到当前评价指数值;其中,所述权重数据包括与所述资源分值对应的资源权重和与所述时间分值对应的时间权重。

23、进一步地,所述资源占用量数据包括算子侧的第一资源占用数据和应用数据侧的第二资源占用数据,所述时间占用量数据包括算子侧的第一时间占用数据和应用数据侧的第二时间占用数据;所述基于所述资源占用量数据和所述时间占用量数据,确定资源分值和时间分值,包括:

24、对所述资源占用量数据和所述时间占用量数据分别进行分值量化,得到所述第一资源占用数据对应的第一资源子分值、所述第二资源占用数据对应的第二资源子分值、所述第一时间占用数据对应的第一时间子分值和所述第二时间占用数据对应的第二时间子分值;

25、对所述第一资源子分值和所述第二资源子分值进行求和计算,得到资源分值;

26、对所述第一时间子分值和所述第二时间子分值进行求和计算,得到时间分值。

27、进一步地,所述基于所述当前评价指数值对所述当前切分结果进行优化,得到所述大模型的目标切分结果,包括:

28、判断所述当前评价指数值是否达到预设的指数阈值;

29、如果否,获取所述当前切分结果下所述目标计算集群中各个节点的损失值;基于所述当前切分结果对应的各个所述损失值,计算得到当前并行代价;基于所述当前并行代价对所述模型配置信息进行更新,并基于更新后的模型配置信息,重新执行所述基于所述资源需求配置信息和所述模型配置信息,依次对所述大模型的模型结构和应用数据进行流水线并行和张量并行的切分,得到当前切分结果的步骤;

30、如果是,确定所述当前切分结果为所述大模型的目标切分结果。

31、第二方面,本专利技术实施例还提供了一种大模型的分布式训练装置,包括:

32、获取模块,用于获取目标计算集群的资源需求配置信息和待训练的大模型的模型配置信息;

33、切分模块,用于基于所述资源需求配置信息和所述模型配置信息,依次对所述大模型的模型结构和应用数据进行流水线并行和张量并本文档来自技高网...

【技术保护点】

1.一种大模型的分布式训练方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述基于所述资源需求配置信息和所述模型配置信息,依次对所述大模型的模型结构和应用数据进行流水线并行和张量并行的切分,得到当前切分结果,包括:

3.根据权利要求2所述的方法,其特征在于,所述基于所述模型配置信息对所述大模型进行算子拆分,得到所述大模型的算子信息,包括:

4.根据权利要求2所述的方法,其特征在于,所述基于所述算子信息对所述大模型中每个算子的权重参数进行流水线并行和张量并行的切分,得到初始切分结果,包括:

5.根据权利要求2所述的方法,其特征在于,所述基于所述初始切分结果和所述可用资源信息,对所述大模型的应用数据进行张量并行的切分,得到当前切分结果,包括:

6.根据权利要求1所述的方法,其特征在于,所述对所述当前切分结果进行时间维度和资源维度的评价,得到当前评价指数值,包括:

7.根据权利要求6所述的方法,其特征在于,所述资源占用量数据包括算子侧的第一资源占用数据和应用数据侧的第二资源占用数据,所述时间占用量数据包括算子侧的第一时间占用数据和应用数据侧的第二时间占用数据;所述基于所述资源占用量数据和所述时间占用量数据,确定资源分值和时间分值,包括:

8.根据权利要求1所述的方法,其特征在于,所述基于所述当前评价指数值对所述当前切分结果进行优化,得到所述大模型的目标切分结果,包括:

9.一种大模型的分布式训练装置,其特征在于,包括:

10.一种电子设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-8中任一项所述的方法。

...

【技术特征摘要】

1.一种大模型的分布式训练方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述基于所述资源需求配置信息和所述模型配置信息,依次对所述大模型的模型结构和应用数据进行流水线并行和张量并行的切分,得到当前切分结果,包括:

3.根据权利要求2所述的方法,其特征在于,所述基于所述模型配置信息对所述大模型进行算子拆分,得到所述大模型的算子信息,包括:

4.根据权利要求2所述的方法,其特征在于,所述基于所述算子信息对所述大模型中每个算子的权重参数进行流水线并行和张量并行的切分,得到初始切分结果,包括:

5.根据权利要求2所述的方法,其特征在于,所述基于所述初始切分结果和所述可用资源信息,对所述大模型的应用数据进行张量并行的切分,得到当前切分结果,包括:

6.根据权利要求1所述的方法,其特征在于...

【专利技术属性】
技术研发人员:田楷晏文仲陈立名代文静黄金曹彬胡江洪方超群王凯陈运泽
申请(专利权)人:菲特天津检测技术有限公司
类型:发明
国别省市:

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

1