System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及深度学习,特别涉及一种用于大模型训练的参数自动搜索方法、装置及电子设备。
技术介绍
1、大模型是指模型参数量较大(通常在10亿及以上)的神经网络模型,在图像、文本、音频等多个领域都有典型的应用。在大模型训练框架出现之前,用户开发模型需要自己实现模型结构,当模型参数较大时,用户还需要自己实现模型的并行策略以加速模型的训练速度和减小显存占用。然而,开发模型并行策略对开发门槛要求较高,低效的分布式训练策略可能会大幅降低模型的训练效率甚至导致训练结果异常,并且手动逐个实现模型的并行策略容易导致代码可维护性和可扩展性较差。因此,提供支持高效分布式训练的大模型开源框架,减小用户在开发模型并行策略上的开发成本,是大模型训练中的重要研究方向。
2、相关技术中,支持高效分布式训练的大模型训练框架包括:基于深度学习框架pytorch的大模型训练框架megatron-lm;采用零冗余优化器内存优化技术(zeroredundancy optimizer,简称zero)的开源大模型训练框架megatron-deepspeed;无缝集成主流深度学习框架pytorch的大模型训练框架。
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、根据本专利技术的一个实施例,在根据所述大模型训练框架名称确定所述目标模型训练框架之后,所述第一确定模块,还包括:
34、校验单元,用于利用所述目标模型训练框架,校验所述多个参数中是否存在不满足预设兼容条件的不兼容参数;
35、报错单元,用于在所述多个参数中存在不满足预设兼容条件的不兼容参数时,针对所述不兼容参数进行报错提醒。
36、根据本专利技术的一个实施例,在针对所述不兼容参数进行报错提醒之后,所述报错单元,还用于:
37、接收用户针对所述不兼容参数反馈的参数修改指令;
38、基于所述参数修改指令修改所述不兼容参数。
39、根据本专利技术的一个实施例,所述第一确定模块,具体用于:
40、从所述参数配置文件中获取每次训练的迭代次数;
41、根据所述多个参数和所述本文档来自技高网...
【技术保护点】
1.一种用于大模型训练的参数自动搜索方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的用于大模型训练的参数自动搜索方法,其特征在于,在获取所述参数配置文件之后,还包括:
3.根据权利要求1所述的用于大模型训练的参数自动搜索方法,其特征在于,在根据所述大模型训练框架名称确定所述目标模型训练框架之后,还包括:
4.根据权利要求3所述的用于大模型训练的参数自动搜索方法,其特征在于,在针对所述不兼容参数进行报错提醒之后,还包括:
5.根据权利要求1-4任一项所述的用于大模型训练的参数自动搜索方法,其特征在于,所述根据所述目标模型训练框架、所述多个参数和所述每个参数的参数区间确定所有配置组合的训练流程,包括:
6.根据权利要求1-4任一项所述的用于大模型训练的参数自动搜索方法,其特征在于,所述基于评估指标从所述所有配置组合的训练流程的训练结果中确定用于大模型训练的最优参数组合,包括:
7.根据权利要求1-4任一项所述的用于大模型训练的参数自动搜索方法,其特征在于,在启动所述所有配置组合的训练流程时,还包括:
...【技术特征摘要】
1.一种用于大模型训练的参数自动搜索方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的用于大模型训练的参数自动搜索方法,其特征在于,在获取所述参数配置文件之后,还包括:
3.根据权利要求1所述的用于大模型训练的参数自动搜索方法,其特征在于,在根据所述大模型训练框架名称确定所述目标模型训练框架之后,还包括:
4.根据权利要求3所述的用于大模型训练的参数自动搜索方法,其特征在于,在针对所述不兼容参数进行报错提醒之后,还包括:
5.根据权利要求1-4任一项所述的用于大模型训练的参数自动搜索方法,其特征在于,所述根据所述目标模型训练框架、所述多个参数和所述每个参数的参数区间确定所有配置组合的训练流程,包括:
6.根据权利要求1-4任一项所述的用于大模型训练...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。