一种分布式机器学习方法、装置、终端设备及存储介质制造方法及图纸

技术编号:32851180 阅读:13 留言:0更新日期:2022-03-30 19:06
本申请适用于计算机技术领域,提供了一种分布式机器学习方法、装置、终端设备及存储介质,该方法包括:对本次训练的初始模型进行训练,得到初始模型对应的第一梯度;判断在第一时间段内是否接收到参数服务器发送的全局参数,其中,第一时间段为本次训练初始模型的时间段;若在第一时间段内未接收到全局参数,则基于第一梯度,得到候选模型,并将候选模型作为下一次训练的初始模型;本申请在没有接收到全局参数时使用第一梯度得到候选模型,并对候选模型继续训练,使参数服务器在计算全局参数和向工作节点传输全局参数的时间内,工作节点一直处于训练的状态,不用必须接收到全局参数后再继续训练,节约了模型训练的时间,使模型训练速度更快。训练速度更快。训练速度更快。

【技术实现步骤摘要】
一种分布式机器学习方法、装置、终端设备及存储介质


[0001]本申请属于计算机
,尤其涉及一种分布式机器学习方法、装置、终端设备及存储介质。

技术介绍

[0002]机器学习是计算机利用已有的数据,通过对初始模型进行训练,得到训练后的模型,并利用训练后的模型预测需要的数据。目前多采用分布式机器学习系统对模型进行训练。采用分布式机器学习系统训练模型的具体方法为:将训练样本分别输入并行的多台子服务器中,利用多台子服务器同时对模型进行训练,然后将训练得到的梯度发送至参数服务器,参数服务器利用梯度对全局参数进行更新,并更新后的全局参数返回至各个子服务器中,子服务器利用参数服务器返回的全局参数更新模型参数,并进行下一次训练,依此循环直到训练结束。
[0003]上述方法在子服务器较多时,由于子服务器的数据处理能力存在差异,参数服务器需要接收到所有子服务器发送的梯度后才可以进行全局参数的更新,且子服务器需要在接收到全局参数后才能进行下一次的模型训练,由于全局参数返回时间较长,使模型训练的时间延长,降低了模型训练的效率。

技术实现思路

[0004]本申请实施例提供了一种分布式机器学习方法、装置、终端设备及存储介质,可以解决目前模型训练效率低的问题。
[0005]第一方面,本申请实施例提供了一种分布式机器学习方法,应用于分布式机器学习系统,所述分布式机器学习系统包括参数服务器和至少两个用于对模型进行训练的工作节点,所述工作节点与所述参数服务器相连,包括:
[0006]对本次训练的初始模型进行训练,得到所述初始模型对应的第一梯度;
[0007]判断在第一时间段内是否接收到所述参数服务器发送的全局参数,其中,所述第一时间段为本次训练所述初始模型的时间段;
[0008]若在第一时间段内未接收到所述全局参数,则基于所述第一梯度,得到候选模型,并将所述候选模型作为下一次训练的初始模型。
[0009]第二方面,本申请实施例提供了一种分布式机器学习系统,包括:参数服务器和至少两个用于对模型进行训练的工作节点,工作节点与所述参数服务器相连;
[0010]其中,所述工作节点包括:
[0011]模型训练模块,用于对本次训练的初始模型进行训练,得到所述初始模型对应的第一梯度;
[0012]判断模块,用于判断在第一时间段内是否接收到所述参数服务器发送的全局参数,其中,所述第一时间段为工作节点训练当前模型的时间段;
[0013]参数更新模块,用于若在第一时间段内未接收到所述全局参数,则基于所述第一
梯度,得到候选模型,并将所述候选模型作为当前模型进行下一次模型训练。
[0014]第三方面,本申请实施例提供了一种终端设备,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述第一方面中任一项所述的分布式机器学习方法。
[0015]第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述第一方面中任一项所述的分布式机器学习方法。
[0016]第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项所述的分布式机器学习方法。
[0017]可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
[0018]本申请实施例与现有技术相比存在的有益效果是:本申请通过工作节点对本次训练的初始模型进行训练,得到初始模型对应的第一梯度;然后判断在本次训练初始模型的时间段内是否接收到参数服务器发送的全局参数;若在第一时间段内未接收到全局参数,则基于第一梯度,得到候选模型,并将候选模型作为下一次训练的初始模型;本申请在没有接收到全局参数时使用第一梯度得到候选模型,并对候选模型继续训练,使参数服务器在计算全局参数和向工作节点传输全局参数的时间内,工作节点一直处于训练的状态,不用必须接收到全局参数后再继续训练,节约了模型训练的时间,使模型训练速度更快。
附图说明
[0019]为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0020]图1是本申请一实施例提供的分布式机器学习系统的示意图;
[0021]图2是本申请一实施例提供的分布式机器学习方法的流程示意图;
[0022]图3是本申请一实施例提供的对第二梯度进行处理的流程示意图;
[0023]图4是本申请一实施例提供的工作节点训练模型的方法的流程示意图;
[0024]图5是本申请一实施例提供的工作节点的结构示意图;
[0025]图6是本申请一实施例提供的终端设备的结构示意图;
[0026]图7是本申请一实施例提供的计算机的部分结构的框图。
具体实施方式
[0027]以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
[0028]应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、
步骤、操作、元素、组件和/或其集合的存在或添加。
[0029]还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
[0030]如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0031]另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0032]在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种分布式机器学习方法,应用于分布式机器学习系统,所述分布式机器学习系统包括参数服务器和至少两个用于对模型进行训练的工作节点,所述工作节点与所述参数服务器相连,其特征在于,该方法包括:对本次训练的初始模型进行训练,得到所述初始模型对应的第一梯度;判断在第一时间段内是否接收到所述参数服务器发送的全局参数,其中,所述第一时间段为本次训练所述初始模型的时间段;若在第一时间段内未接收到所述全局参数,则基于所述第一梯度,得到候选模型,并将所述候选模型作为下一次训练的初始模型。2.如权利要求1所述的分布式机器学习方法,其特征在于,所述基于所述第一梯度,得到候选模型,包括:基于所述第一梯度更新所述初始模型的参数,得到候选模型。3.如权利要求1或2所述的分布式机器学习方法,其特征在于,在所述判断在第一时间段内是否接收到所述参数服务器发送的全局参数之后,还包括:若在第一时间段内接收到所述全局参数,基于所述全局参数,得到候选模型,将所述候选模型作为下一次训练的初始模型,并向所述参数服务器发送第二梯度;其中,所述第二梯度为在第二时间段内得到的第一梯度,所述第二时间段为上一次接收到全局参数的时间至第一时间段内接收到所述全局参数的时间,所述参数服务器在接收到第二梯度后,基于所述第二梯度得到全局参数,并向所述工作节点发送所述全局参数。4.如权利要求3所述的分布式机器学习方法,其特征在于,所述基于所述全局参数,得到候选模型,包括:基于全局参数更新所述初始模型的参数,得到候选模型。5.如权利要求3所述的分布式机器学习方法,其特征在于,所述向所述参数服务器发送第二梯度,包括:对所述第二梯度进行降维处...

【专利技术属性】
技术研发人员:郭嵩王号召詹玉峰
申请(专利权)人:香港理工大学深圳研究院
类型:发明
国别省市:

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

1