【技术实现步骤摘要】
利用参数服务器执行的机器学习模型的训练方法及装置
[0001]本公开涉及计算机
,更具体地说,涉及一种利用参数服务器执行的机器学习模型的训练方法及装置以及参数服务器。
技术介绍
[0002]随着数据规模的迅速增长,机器学习被广泛应用于各种领域以挖掘数据的价值。机器学习模型会用到海量训练样本进行线下训练,线下训练的模式分为同步训练和异步训练两种模式。同步训练模式训练出的模型准确度高,一些对模型准确度要求高的应用,如广告点击应用,都要求采用同步训练模式进行训练,但同步训练模式需要花费很多等待时间,训练效率低。异步训练模式训练速度快,但准确度对比同步训练模式有所下降。
技术实现思路
[0003]本公开的示例性实施例可至少解决上述问题,也可不解决上述问题。
[0004]根据本公开的第一方面,提供一种利用参数服务器执行的机器学习模型的训练方法,包括:在计算节点正在训练第一批次训练样本对应的多个第一参数时,接收由所述计算节点发送的参数预读请求,其中,所述参数预读请求用于请求预读到第二批次训练样本对应的多个第 ...
【技术保护点】
【技术特征摘要】
1.一种利用参数服务器执行的机器学习模型的训练方法,包括:在计算节点正在训练第一批次训练样本对应的多个第一参数时,接收由所述计算节点发送的参数预读请求,其中,所述参数预读请求用于请求预读到第二批次训练样本对应的多个第二参数,第二批次在训练顺序上在第一批次之后,且与第一批次相距预定数量个批次,每一批次训练样本对应的多个参数表示利用该批次训练样本所训练的所述机器学习模型的多个参数;将所述多个第二参数从参数服务器的参数存储区读取到所述参数服务器的预读高速缓存区,其中,所述预读高速缓存区存储有第一批次至第二批次的训练样本对应的多个参数;从所述预读高速缓存区存储的所述多个参数中,确定所述多个第二参数在第一批次至第二批次的范围内在第二批次之前是否被预读过;在所述多个第二参数之中存在在第一批次至第二批次的范围内在第二批次之前未被预读过的第二参数的情况下,将所述未被预读过的第二参数发送到所述计算节点。2.如权利要求1所述的训练方法,其中,还包括:在所述多个第二参数之中存在在第一批次至第二批次的范围内在第二批次之前被预读过的第二参数且所述被预读过的第二参数存储在读取速度比DRAM更慢的存储设备的情况下,将所述被预读过的第二参数读取并缓存到所述参数服务器的DRAM上。3.如权利要求2所述的训练方法,其中,还包括:根据所述被预读过的第二参数在训练中使用的频率,确定所述被预读过的第二参数是否是超高频参数;在确定所述被预读过的第二参数中存在超高频参数的情况下,将所述超高频参数发送到使用所述超高频参数的各计算节点的高速缓存中。4.如权利要求3所述的训练方法,其中,所述根据所述被预读过的第二参数在训练中使用的频率,确定所述被预读过的第二参数是否是超高频参数,包括:根据所述被预读过的第二参数在第二批次与第二批次之前最近被预读过的批次之间的距离,确定所述被预读过的第二参数是否为超高频参数,其中,当所述被预读过的第二参数中的某个第二参数的所述距离小于预定阈值时,将该第二参数确定为超高频参数。5.如权利要求1所述的训练方法,还包括:在所述计算节点完成对所述多个第一参数的训练时,从所述计算节点接收所述多个第一参数的更新后的参数值并将所述多个第一参数的更新后的参数值缓存在所述预读高速缓存区中,并从所述预读高速缓存区中释放存储所述多个第一参数的空间。6.如权利要求5所述的训练方法,其中,从所述预读高速缓存区中释放存储所述多个第一参数的空间,包括:从所述预读高速缓存区存储的所述多个参数中,确定所述多个第一参数在第一批次至第二批次的范围内在第一批次之后是否被预读过;在所述多个第一参数之中存在在第一批次至第二批次的范围内在第一批次之后未被预读过的第一参数的情况下,将所述未被预读过的第一参数的更新后的参数值下刷到所述参数存储区,并从所述预读高速缓存区中清除;在所述多个第一参数之中存在在第一批次至第二批次的范围内在第一批次之后...
【专利技术属性】
技术研发人员:陈宬,王艺霖,杨俊,刘一鸣,卢冕,
申请(专利权)人:第四范式北京技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。