基于端到端自适应的分布式训练方法、装置、设备制造方法及图纸

技术编号:32643148 阅读:23 留言:0更新日期:2022-03-12 18:19
本公开提供了基于端到端自适应的分布式训练方法、装置、设备以及存储介质,涉及人工智能技术领域,尤其是深度学习、云计算等领域。具体实现方案为:对待训练的模型进行切分,得到切分结果;对分配给待训练的模型进行训练的计算资源进行解析,得到计算资源的属性,分配给待训练的模型进行训练的计算资源是根据待训练模型的计算资源需求、其他正在训练的模型所占用的计算资源以及空闲的计算资源确定的,计算资源的属性用于表征计算资源的拓扑关系、任务处理能力中的至少一种;利用计算资源的属性,确定每个切分结果在计算资源中的分布策略;根据分布策略,利用计算资源对待训练的模型进行分布式训练。可以实现模型训练的端到端自适应调节。自适应调节。自适应调节。

【技术实现步骤摘要】
基于端到端自适应的分布式训练方法、装置、设备


[0001]本公开涉及人工智能
,尤其涉及深度学习、云计算等领域,特别涉及一种基于端到端自适应的分布式训练方法、装置、设备以及存储介质。

技术介绍

[0002]近年来,为了追求更好的效果,在计算机视觉、自然语言处理、个性化推荐等领域的模型都采用更大规模的模型参数或更大规模的训练数据。从训练框架的使用者角度来说,当前传统的分布式训练技术在易用性、鲁棒性、资源利用率几个维度上面临的问题还比较严峻。例如,常见问题包括自动化程度低、单点故障率高等。

技术实现思路

[0003]本公开提供了一种基于端到端自适应的分布式训练方法、装置、设备以及存储介质。
[0004]根据本公开的一方面,提供了一种基于端到端自适应的分布式训练方法,该方法可以包括以下过程:
[0005]对待训练的模型进行切分,得到切分结果;
[0006]对分配给待训练的模型进行训练的计算资源进行解析,得到计算资源的属性,分配给待训练的模型进行训练的计算资源是根据待训练模型的计算资源需求、其他正在训练的模本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于端到端自适应的分布式训练方法,包括:对待训练的模型进行切分,得到切分结果;对分配给所述待训练的模型进行训练的计算资源进行解析,得到所述计算资源的属性,所述分配给所述待训练的模型进行训练的计算资源是根据所述待训练模型的计算资源需求、其他正在训练的模型所占用的计算资源以及空闲的计算资源确定的,所述计算资源的属性用于表征所述计算资源的拓扑关系、任务处理能力中的至少一种;利用所述计算资源的属性,确定每个所述切分结果在所述计算资源中的分布策略;根据所述分布策略,利用所述计算资源对所述待训练的模型进行分布式训练。2.根据权利要求1所述的方法,其中,所述对待训练的模型进行切分,得到切分结果,包括:确定所述待训练的模型的算子和张量;利用所述切分策略,对所述待训练的模型中的算子和张量进行切分,得到所述切分结果。3.根据权利要求2所述的方法,其中,所述利用所述切分策略,对所述待训练的模型中的算子和张量进行切分,得到所述切分结果,包括:利用所述切分策略,对所述待训练的模型中的算子和张量进行切分,得到N个切片,所述N为正整数;对于每个所述切片,加载所述切片的分布式属性信息,所述分布式属性信息包括该切片在所述待训练的模型中的进程拓扑信息、该切片的切分映射信息、该切片的切片大小信息中的至少一类;将加载所述分布式属性信息的切片作为所述切分结果。4.根据权利要求3所述的方法,其中,所述分布式属性信息的类别的确定方式,包括:利用预定方式接收所述分布式属性信息的多个候选类别;将在所述多个候选类别确定出的目标类别,作为所述分布式属性信息的类别。5.根据权利要求3所述的方法,还包括:利用每个所述切片的分布式属性,确定每个所述切片的放置信息,所述放置信息用于表征所述切片与所述计算资源的物理映射关系。6.根据权利要求5所述的方法,当所述切片位于所述待训练的模型的相邻网络层且所述切片的放置信息不同,包括:利用所述放置信息,确定通信辅助算子,所述通信辅助算子用于表征各所述切片之间的逻辑运算关系。7.根据权利要求5所述的方法,当所述切片位于所述待训练的模型的同一网络层,包括:确定重组转换算子,所述重组转换算子用于表征各所述切片之间的网络层一致性关系。8.根据权利要求2至7任一所述的方法,其中,所述切分策略的确定方式包括:对所述用户端发起的模型训练请求进行解析确定。9.根据权利要求2至7任一所述的方法,其中,所述切分策略的确定方式包括:利用预先训练的切分策略模型确定。
10.根据权利要求1所述的方法,其中,所述对分配给所述待训练的模型进行训练的计算资源进行解析,得到所述计算资源的属性,包括:确定所述计算资源的硬件拓扑关系,将所述硬件拓扑关系作为所述计算资源的属性。11.根据权利要求10所述的方法,其中,所述确定所述计算资源的硬件拓扑关系,包括:确定所述计算资源中的最小组件,所述最小组件包括处理器或存储器;确定由至少一个所述最小组件组成的机器设备,每个所述机器设备中的最小组件不重复;确定由至少一个所述机器设备组成的簇,每个所述簇中的机器设备不重复;将所述最小组件、所述机器设备和所述簇作为所述计算资源的硬件拓扑关系。12.根据权利要求11所述的方法,所述确定所述计算资源的硬件拓扑关系,还包括:确定每个所述最小组件的密切关系列表;所述密切关系列表包括源最小组件和目的最小组件之间的连接关系、带宽信息和延迟信息中的至少一种;将所述密切关系列表作为所述计算资源的硬件拓扑关系。13.根据权利要求1或10所述的方法,其中,所述分配给所述待训练的模型进行训练的计算资源是根据所述用户端发起的模型训练请求的内容,以及发起模型训练请求的用户端的数量中的至少一种确定的。14.根据权利要求1或10所述的方法,所述对分配给所述待训练的模型进行训练的计算资源进行解析,得到所述计算资源的属性,包括:获取所述计算资源的通信路径;利用所述计算资源的通信路径,构建各所述计算资源之间的通信拓扑关系;将所述通信拓扑关系作为所述计算资源的属性。15.根据权利要求14所述的方法,还包括:根据所述通信拓扑关系,确定源计算资源与目标计算资源之间的最短通信路径。16.根据权利要求1所述的方法,其中,所述利用所述计算资源的属性,确定每个所述切分结果在所述计算资源中的分布策略,包括:获取各所述切分结果在所述计算资源中的候选分布策略;分别统计每个所述候选分布策略的效率;根据每个所述候选分布策略的效率,在所述候选分布策略中确定出目标分布策略。17.根据权利要求1或16所述的方法,其中,所述根据每个所述候选分布策略的效率,在所述候选分布策略中确定出目标分布策略,包括:利用预定规则,对每个所述候选分布策略进行排序;根据排序的结果,在所述候选分布策略中确定出目标分布策略。18.根据权利要求1所述的方法,其中,所述根据所述分布策略,利用所述计算资源对所述待训练的模型进行分布式训练,包括:定期检测所述计算资源的可用性;在检测结果存在所述计算资源不可用的情况下,执行补救措施,所述不可用的情况包括计算资源故障或计算资源数量的缩容。19.根据权利要求18所述的方法,其中,在所述不可用的情况为计算资源故障的情况下,所述执行补救措施,包括:
获取所述用户端发起的模型训练请求中包含的训练模式;在所述训练模式为容错训练模式的情况下,等待计算资源的故障恢复;在预定时间内所述计算资源的故障未恢复的情况下,确定执行结束。20.根据权利要求19所述的方法,其中,在所述不可用的情况为计算资源故障的情况下,所述执行补救措施,还包括:在所述训练模式为弹性训练模式的情况下,确定候选计算资源;在所述候选计算资源中进行训练的重试。21.根据权利要求20所述的方法,其中,所述在所述候选计算资源中进行训练的重试,包括:获取所述计算资源故障发生时的训练状态;基于所述训练状态,在所述候选计算资源中进行训练重试。22.根据权利要求20所述的方法,其中,所述在所述候选计算资源中进行重试,包括:获取训练的初始状态;基于所述初始状态,在所述候选计算资源中进行训练重试。23.根据权利要求18所述的方法,其中,在所述不可用的情况为计算资源数量的缩容的情况下,所述执行补救措施,包括:确定缩容后所述计算资源的第一数量;根据所述第一数量,对所述待训练的模型进行重新切分,得到重新切分的第一结果;利用重新确定的缩容后剩余的所述计算资源的属性,确定每个所述重新切分的第一结果在缩容后的所述计算资源中的第一分布策略;根据所述第一分布策略,利用缩容后的所述计算资源对所述待训练的模型进行分布式训练。24.根据权利要求18所述的方法,在检测结果存在额外的计算资源可用的情况下,包括:确定可用的所述额外的计算资源的第二数量;根据所述第二数量,对所述待训练的模型进行重新切分,得到重新切分的第二结果;利用重新确定的额外的所述计算资源的属性,确定每个所述重新切分的第二结果在增容后的所述计算资源中的第二分布策略;根据所述第二分布策略,利用增容后的所述计算资源对所述待训练的模型进行分布式训练。25.根据权利要求23或24所述的方法,在所述计算资源的数量出现变化的情况下,还包括:根据变化后的数量,调整所述待训练模型的学习率和单次训练所选取的样本数量。26.根据权利要求1、18、23或24任一所述的方法,所述分布式训练包括:去中心化的异步流水训练。27.根据权利要求1至26任一所述的方法,所述待训练的模型是根据用户端发起的模型训练请求得到的。28.一种基于端到端自适应的分布式训练装置,包括:切分模块,用于对待训练的模型进行切分,得到切分结果;
计算资源的属性确定模块,用于对分配给所述待训练的模型进行训练的计算资源进行解析,得到所述计算资源的属性,所述分配给所述待训练的模型进行训练的计算资源是根据所述待训练模型的计算资源需求、其他正在训练的模型所占用的计算资源以及空闲的计算资源确定的,所述计算资源的属性用于表征所述计算资源的拓扑关系、任务处理能力中的至少一种;分布策略确定模块,用于利用所述计算资源的属性,确定每个所述切分结果在所述计算资源中的分布策略;分布式训练模块,用于根据所述分布策略,利用所述计算资源对所述待训练的模型进行分布式训练。29.根据权利要求...

【专利技术属性】
技术研发人员:王海峰吴志华于佃海马艳军吴甜
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:

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

1