System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开涉及数据处理,特别涉及一种模型训练方法及装置、电子设备、计算机可读存储介质。
技术介绍
1、模型训练是机器学习和深度学习中至关重要的一步,其涉及到使用训练数据优化模型参数的过程。该过程通常包括准备数据、选择或设计模型架构、定义损失函数和优化算法,然后通过迭代调整模型参数来最小化损失函数。
2、在相关技术中,模型训练可以采用梯度下降算法实现,并基于反向传播(bp)方式求解模型参数的梯度。其中,bp算法即自动微分的反向传播模式。但是,在基于反向传播的实现方式中,需要保持大量的模型中间状态,因而需要耗费大量的存储资源。例如,大模型(large model,lm),特别是gpt-3(generative pre-trained transformer-3)、glm(general language model)等大语言模型(large language model,llm),具有超过千亿规模的巨量参数,因此,通过反向传播方式训练大模型势必会耗费海量的存储资源。为此,如何降低模型训练过程中所需的存储资源成为亟待解决的技术难题。
技术实现思路
1、本公开提供一种模型训练方法及装置、电子设备、计算机可读存储介质。
2、第一方面,本公开提供了一种模型训练方法,所述模型包括:按照流水并行方式运行在多个设备节点中的多个模型层级;所述方法包括:
3、在所述多个设备节点根据前向自动微分方式确定多个批次数据对应的第一梯度结果的过程中,在所述多个设备节点的空闲时间分片
4、根据所述第二梯度结果,对所述第一梯度结果进行修正,得到目标梯度结果,根据所述目标梯度结果更新所述模型的模型参数。
5、第二方面,本公开提供了一种模型训练装置,所述模型包括:按照流水并行方式运行在多个设备节点中的多个模型层级;所述装置包括:
6、梯度确定模块,适于在所述多个设备节点根据前向自动微分方式确定多个批次数据对应的第一梯度结果的过程中,在所述多个设备节点的空闲时间分片中根据反向自动微分方式确定所述多个批次数据中的指定批次数据对应的第二梯度结果;
7、更新模块,适于根据所述第二梯度结果,对所述第一梯度结果进行修正,得到目标梯度结果,根据所述目标梯度结果更新所述模型的模型参数。
8、第三方面,本公开提供了一种电子设备,该电子设备包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的一个或多个计算机程序,一个或多个所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的模型训练方法。
9、第四方面,本公开提供了一种计算机可读存储介质,其上存储有计算机程序,其中,所述计算机程序在被处理器/处理核执行时实现上述的模型训练方法。
10、在本公开所提供的实施例中,模型中的多个模型层级按照流水并行方式分别运行在多个不同设备节点中,由于多个设备节点之间存在数据同步需求,因此,势必会在每个设备节点中产生空闲时间分片。为了提升运算效率和准确性,在多个设备节点根据前向自动微分方式确定多个批次数据对应的第一梯度结果的过程中,进一步在多个设备节点的空闲时间分片中根据反向自动微分方式确定多个批次数据中的指定批次数据对应的第二梯度结果,从而根据第二梯度结果对第一梯度结果进行修正,以得到更加准确的目标梯度结果,进而提升模型训练的准确性。由此可见,该方式将前向自动微分运算与反向自动微分运算相结合,主要根据前向自动微分运算计算梯度结果,从而无需大量缓存中间结果,降低了对存储资源的占用,提升了计算效率。并且,通过在前向自动微分运算的空闲时间分片中插入反向自动微分运算,从而能够充分利用空闲时间分片,避免时间分片的浪费,提升计算结果的准确性。
11、应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
本文档来自技高网...【技术保护点】
1.一种模型训练方法,所述模型包括:按照流水并行方式运行在多个设备节点中的多个模型层级;所述方法包括:
2.根据权利要求1所述的方法,其中,所述多个设备节点根据前向自动微分方式确定多个批次数据对应的第一梯度结果包括:
3.根据权利要求2所述的方法,其中,所述多个批次数据按照指定批次顺序依次排列;并且,每个设备节点用于根据所述指定批次顺序在多个时间分片内依次处理所述多个批次数据;
4.根据权利要求2或3所述的方法,其中,所述在所述多个设备节点的空闲时间分片中根据反向自动微分方式确定所述多个批次数据中的指定批次数据对应的第二梯度结果包括:
5.根据权利要求4所述的方法,其中,所述第i组指定批次数据为所述第i+1组指定批次数据中的部分批次数据;
6.根据权利要求4所述的方法,其中,所述多个设备节点的节点数量为M,所述多个批次数据的批次数量为N;i为大于等于1且小于M的自然数;
7.根据权利要求6所述的方法,其中,所述方法还包括:
8.根据权利要求1-3任一所述的方法,其中,所述根据所述第二梯度结果,对所
9.根据权利要求1-3任一所述的方法,其中,所述模型为大模型,并且,所述方法还包括:
10.根据权利要求1-3任一所述的方法,其中,所述设备节点包括:众核系统中的处理核、包含多个处理核的芯片设备、和/或包含多个芯片的服务器设备。
11.一种模型训练装置,所述模型包括:按照流水并行方式运行在多个设备节点中的多个模型层级;所述装置包括:
12.一种电子设备,其特征在于,包括:
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序在被处理器执行时实现如权利要求1-10中任一项所述的模型训练方法。
...【技术特征摘要】
1.一种模型训练方法,所述模型包括:按照流水并行方式运行在多个设备节点中的多个模型层级;所述方法包括:
2.根据权利要求1所述的方法,其中,所述多个设备节点根据前向自动微分方式确定多个批次数据对应的第一梯度结果包括:
3.根据权利要求2所述的方法,其中,所述多个批次数据按照指定批次顺序依次排列;并且,每个设备节点用于根据所述指定批次顺序在多个时间分片内依次处理所述多个批次数据;
4.根据权利要求2或3所述的方法,其中,所述在所述多个设备节点的空闲时间分片中根据反向自动微分方式确定所述多个批次数据中的指定批次数据对应的第二梯度结果包括:
5.根据权利要求4所述的方法,其中,所述第i组指定批次数据为所述第i+1组指定批次数据中的部分批次数据;
6.根据权利要求4所述的方法,其中,所述多个设备节点的节点数量为m,所述多个批次数据的批次数量为n;i为...
【专利技术属性】
技术研发人员:刘发强,祝夭龙,
申请(专利权)人:北京灵汐科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。