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

技术编号:36825035 阅读:13 留言:0更新日期:2023-03-12 01:19
本公开的实施例公开了模型的分布式训练方法、训练装置、训练系统和电子设备。该分布式训练方法的一具体实施方式包括:响应于接收到样本词,查找本处理器的模型中是否存储有与样本词相匹配的样本词向量;响应于确定未存储有样本词向量,从目标处理器中获取样本词向量,其中,同一机器中的各处理器上分别设置有不同的嵌入层参数;对样本词向量进行转化分析,输出与样本语料对应的预测结果;根据预测结果,调整本处理器中模型的相关参数。该实施方式与人工智能技术有关,通过将整个模型的嵌入层参数拆分存储在多个处理器上,从而可以利用多个处理器实现模型的并行分布式训练。这样可以减少各处理器中模型的数据量,降低空间占用,提升资源利用率。升资源利用率。升资源利用率。

【技术实现步骤摘要】
模型的分布式训练方法、训练装置、训练系统和电子设备


[0001]本公开的实施例涉及人工智能
,具体涉及模型的分布式训练方法、训练装置、训练系统和电子设备。

技术介绍

[0002]在自然语言处理(NLP,Natural Language Processing)领域,使用预训练模型在大规模语料库上提取出共性特征,再在此基础上进行下游任务的训练和调优是一种常用的方法。在预训练模型中,基于Transformer(变换器)的NLP大模型,如BERT(Bidirectional Encoder Representation from Transformers,基于变换器的双向编码器表示)是一类经典且常用的模型。在搜索、广告、推荐等业务中的文本分类、机器翻译等任务中都存在广泛应用。该类模型结构一般由嵌入层(embedding)+多层转化层(transformer)构成。
[0003]然而,专利技术人发现,在实际应用中,为了在预训练过程中提取尽可能多且精确的语言特征,NLP模型结构往往较大,如BERT模型的参数规模可能达到了3亿以上。另外,用于预训练的语料库也往往规模很大,样本数可能达到十亿、百亿量级。总预训练时长可能达到天级甚至月级。这对计算和存储资源的需求都比较高。
[0004]该
技术介绍
部分中所公开的以上信息仅用于增强对本专利技术构思的背景的理解,并因此,其可包含并不形成本国的本领域普通技术人员已知的现有技术的信息。

技术实现思路

[0005]本公开的内容部分用于以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。本公开的内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。
[0006]本公开的一些实施例提出了模型的分布式训练方法、训练装置、训练系统、电子设备、计算机可读介质和计算机程序产品,来解决以上
技术介绍
部分提到的技术问题中的一项或多项。
[0007]第一方面,本公开的一些实施例提供了一种模型的分布式训练方法,包括:响应于接收到样本词,查找本处理器的模型中是否存储有与样本词相匹配的样本词向量,其中,样本词是通过对输入的样本语料进行拆分而得到的;响应于确定未存储有样本词向量,从目标处理器中获取样本词向量,其中,目标处理器为与本处理器位于同一机器上,且对应样本词向量的处理器,同一机器中的各处理器上分别设置有不同的嵌入层参数;对样本词向量进行转化分析,输出与样本语料对应的预测结果;根据预测结果,调整本处理器中模型的相关参数。
[0008]在一些实施例中,根据预测结果,调整本处理器中模型的相关参数,包括:响应于接收到反向传播的梯度值,确定梯度值对应的目标样本词向量;根据目标样本词向量,确定同一机器上对应目标样本词向量的处理器,以及将梯度值发送给该处理器;响应于确定数据同步完成,根据接收到的各梯度值,更新本处理器中模型的嵌入层参数。
[0009]在一些实施例中,根据预测结果,调整本处理器中模型的相关参数,还包括:根据接收到的各梯度值和本处理器中模型的优化器配置参数,调整优化器配置参数所指示的模型参数,其中,同一机器中的各处理器具有相同的优化器配置参数,不同机器之间的处理器具有不同的优化器配置参数;以及根据其他机器上的处理器中的模型参数,调整本处理器中模型的其他模型参数,其中,其他模型参数为模型中除优化器配置参数所指示的模型参数以外的模型参数。
[0010]在一些实施例中,对样本词向量进行转化分析,包括:将样本词向量输入本处理器中模型的转化层,利用转化层中的激活函数,对样本词向量进行转化分析,其中,转化层中包括多个串联的网络层;以及在转化分析过程中,保存多个网络层中的部分网络层的激活函数。
[0011]在一些实施例中,根据预测结果,调整本处理器中模型的相关参数,包括:在反向传播计算过程中,对于多个网络层中的网络层,确定是否保存有该网络层的激活函数,响应于确定未保存激活函数,基于该网络层的输入数据和输出数据,确定该网络层的激活函数;根据预测结果与样本结果之间的误差,以及各网络层的激活函数,利用梯度下降法确定模型参数的梯度值。
[0012]在一些实施例中,根据预测结果与样本结果之间的误差,以及各网络层的激活函数,利用梯度下降法确定模型参数的梯度值,包括:基于本处理器中模型的优化器配置参数,确定目标模型参数;根据预测结果与样本结果之间的误差,以及各网络层的激活函数,利用梯度下降法确定目标模型参数的梯度值。
[0013]在一些实施例中,嵌入层参数通过以下方式得到:根据同一机器中处理器的数量,对多个样本词向量进行拆分,其中,不同机器之间对应的样本词向量相同;对于同一机器中的各处理器,根据该处理器对应的样本词向量,确定该处理器中模型的嵌入层参数,其中,同一机器中的各处理器对应的样本词向量不同。
[0014]在一些实施例中,根据同一机器中处理器的数量,对多个样本词向量进行拆分,包括:确定多个样本词向量的数量,是否为同一机器中处理器的数量的整数倍,其中,不同机器中的处理器的数量相同;响应于确定不是整数倍,按照平均分配方式,确定同一机器中各处理器对应的样本词向量,以及从各处理器中选取处理器,以对应剩余的样本词向量。
[0015]在一些实施例中,优化器配置参数通过以下方式得到:根据预训练模型的总参数和用于训练的机器的数量,确定各机器上的处理器中模型的优化器配置参数。
[0016]在一些实施例中,同一机器中的各处理器之间采用高速互连技术进行通信。
[0017]第二方面,本公开的一些实施例提供了一种模型的分布式训练装置,包括:查找单元,被配置成响应于接收到样本词,查找本处理器的模型中是否存储有与样本词相匹配的样本词向量,其中,样本词是通过对输入的样本语料进行拆分而得到的;获取单元,被配置成响应于确定未存储有样本词向量,从目标处理器中获取样本词向量,其中,目标处理器为与本处理器位于同一机器上,且对应样本词向量的处理器,同一机器中的各处理器上分别设置有不同的嵌入层参数;分析输出单元,被配置成对样本词向量进行转化分析,输出与样本语料对应的预测结果;调整单元,被配置成根据预测结果,调整本处理器中模型的相关参数。
[0018]在一些实施例中,调整单元包括第一调整子单元,被配置成响应于接收到反向传
播的梯度值,确定梯度值对应的目标样本词向量;根据目标样本词向量,确定同一机器上对应目标样本词向量的处理器,以及将梯度值发送给该处理器;响应于确定数据同步完成,根据接收到的各梯度值,更新本处理器中模型的嵌入层参数。
[0019]在一些实施例中,调整单元还包括第二调整子单元,被配置成根据接收到的各梯度值和本处理器中模型的优化器配置参数,调整优化器配置参数所指示的模型参数,其中,同一机器中的各处理器具有相同的优化器配置参数,不同机器之间的处理器具有不同的优化器配置参数;以及根据其他机器上的处理器中的模型参数,调整本处理器中模型的其他模型参数,其中,其他模型参数为模型中除优化器配置参数所指示的模型本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种模型的分布式训练方法,包括:响应于接收到样本词,查找本处理器的模型中是否存储有与所述样本词相匹配的样本词向量,其中,所述样本词是通过对输入的样本语料进行拆分而得到的;响应于确定未存储有样本词向量,从目标处理器中获取所述样本词向量,其中,所述目标处理器为与所述本处理器位于同一机器上,且对应所述样本词向量的处理器,同一机器中的各处理器上分别设置有不同的嵌入层参数;对所述样本词向量进行转化分析,输出与所述样本语料对应的预测结果;根据所述预测结果,调整所述本处理器中模型的相关参数。2.根据权利要求1所述的方法,其中,所述根据所述预测结果,调整所述本处理器中模型的相关参数,包括:响应于接收到反向传播的梯度值,确定所述梯度值对应的目标样本词向量;根据所述目标样本词向量,确定同一机器上对应所述目标样本词向量的处理器,以及将所述梯度值发送给该处理器;响应于确定数据同步完成,根据接收到的各梯度值,更新所述本处理器中模型的嵌入层参数。3.根据权利要求2所述的方法,其中,所述根据所述预测结果,调整所述本处理器中模型的相关参数,还包括:根据接收到的各梯度值和所述本处理器中模型的优化器配置参数,调整所述优化器配置参数所指示的模型参数,其中,同一机器中的各处理器具有相同的优化器配置参数,不同机器之间的处理器具有不同的优化器配置参数;以及根据其他机器上的处理器中的模型参数,调整所述本处理器中模型的其他模型参数,其中,所述其他模型参数为模型中除优化器配置参数所指示的模型参数以外的模型参数。4.根据权利要求1所述的方法,其中,所述对所述样本词向量进行转化分析,包括:将所述样本词向量输入所述本处理器中模型的转化层,利用转化层中的激活函数,对所述样本词向量进行转化分析,其中,所述转化层中包括多个串联的网络层;以及在转化分析过程中,保存所述多个网络层中的部分网络层的激活函数。5.根据权利要求4所述的方法,其中,所述根据所述预测结果,调整所述本处理器中模型的相关参数,包括:在反向传播计算过程中,对于所述多个网络层中的网络层,确定是否保存有该网络层的激活函数,响应于确定未保存激活函数,基于该网络层的输入数据和输出数据,确定该网络层的激活函数;根据所述预测结果与样本结果之间的误差,以及各网络层的激活函数,利用梯度下降法确定模型参数的梯度值。6.根据权利要求5所述的方法,其中,所述根据所述预测结果与样本结果之间的误差,以及各网络层的激活函数,利用梯度下降法确定模型参数的梯度值,包括:基于所述本处理器中模型的优化器配置参数,确定目标模型参数;根据所述预测结果与样本结果之间的误差,以及各网络层的激活函数,利用梯度下降法确...

【专利技术属性】
技术研发人员:裴杨舒俊华邢召龙黎沛含刘倩欣张克丰王文生
申请(专利权)人:北京京东世纪贸易有限公司
类型:发明
国别省市:

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

1