[发明专利]一种对深度学习模型进行并行处理的方法及装置在审
申请号: | 201910916367.0 | 申请日: | 2019-09-26 |
公开(公告)号: | CN112561051A | 公开(公告)日: | 2021-03-26 |
发明(设计)人: | 栗伟清 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | G06N3/08 | 分类号: | G06N3/08;G06K9/62 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 胡艳华;龙洪 |
地址: | 518057 广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 深度 学习 模型 进行 并行 处理 方法 装置 | ||
本文公开了一种对深度学习模型进行并行处理的方法及装置。所述对深度学习模型进行并行处理的方法包括:确定模型中计算节点之间的依赖关系,根据所述依赖关系划分关系组;按照预定规则对关系组进行聚类,生成可并行执行集合;其中,每一个可并行执行集合内的关系组能够并行运行;将所有的可并行执行集合内的关系组分配到多个目标设备上使得所有可并行执行集合的总并行运算的耗时最短。本文的方案能够自动拆分深度学习模型,提高深度学习模型采用模型并行时的分布式训练效率。
技术领域
本发明涉及计算机技术领域,尤其涉及的是一种对深度学习模型进行并行处理的方法及装置。
背景技术
深度学习模型参数多,训练数据规模大,导致计算资源消耗大,一次训练耗时经常达到数天甚至数月,这对于调参的工作人员来说简直是无法忍受的。因此,对模型训练进行加速是非常有必要的,而单个设备计算力的提升非常有限,因此需要依靠分布式训练。
目前,深度学习模型的分布式训练主要有数据并行和模型并行两种方式,数据并行是指每个节点上都有一个完整模型的副本,分别取用不同的数据,各自完成前向和后向的计算得到梯度,然后更新参数。模型并行是指根据一定的规则把模型分拆到不同的节点上进行训练。
相关技术中,模型并行时,模型拆分通常是人工手动完成的,人工拆分费时费力,如果拆分的不合理,再加上节点之间的通信开销,模型并行甚至起不到任何加速的效果。
发明内容
本文提供一种对深度学习模型进行并行处理的方法及装置,能够自动拆分深度学习模型,提高深度学习模型采用模型并行时的分布式训练效率。
根据本申请的第一方面,本发明实施例提供一种对深度学习模型进行并行处理的方法,包括:
确定模型中计算节点之间的依赖关系,根据所述依赖关系划分关系组;
按照预定规则对关系组进行聚类,生成可并行执行集合;其中,每一个可并行执行集合内的关系组能够并行运行;
将所有的可并行执行集合内的关系组分配到多个目标设备上使得所有可并行执行集合的总并行运算的耗时最短。
根据本申请的第二方面,本发明实施例提供一种对深度学习模型进行并行处理的装置,包括:
存储器、处理器及存储在所述存储器上并可在所述处理器上运行的对深度学习模型进行并行处理的程序,所述对深度学习模型进行并行处理的程序被所述处理器执行时实现上述对深度学习模型进行并行处理的方法的步骤。
根据本申请的第三方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有对深度学习模型进行并行处理的程序,所述对深度学习模型进行并行处理的程序被处理器执行时实现上述对深度学习模型进行并行处理的方法的步骤。
与相关技术相比,本发明实施例提供的一种对深度学习模型进行并行处理的方法及装置,确定模型中计算节点之间的依赖关系,根据所述依赖关系划分关系组;按照预定规则对关系组进行聚类,生成可并行执行集合;其中,每一个可并行执行集合内的关系组能够并行运行;将所有的可并行执行集合内的关系组分配到多个目标设备上使得所有可并行执行集合的总并行运算的耗时最短。本发明实施例能够自动拆分深度学习模型,提高深度学习模型采用模型并行时的分布式训练效率。
附图说明
图1为本发明实施例1的一种对深度学习模型进行并行处理的方法流程图;
图2为本发明实施例2的一种对深度学习模型进行并行处理的装置示意图;
图3为本发明示例1中Inception-V3模型计算图的示意图;
图4为本发明示例1中挑选耗时排名靠前的关系组的示意图;
图5为本发明示例2中按照名称作用域字段划分关系组的示意图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910916367.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:显示面板及其制作方法及电子设备
- 下一篇:一种基于解耦控制的飞行机械臂系统