CN111444019B - 云端协同的深度学习模型分布式训练方法及系统 - Google Patents
云端协同的深度学习模型分布式训练方法及系统 Download PDFInfo
- Publication number
- CN111444019B CN111444019B CN202010240843.4A CN202010240843A CN111444019B CN 111444019 B CN111444019 B CN 111444019B CN 202010240843 A CN202010240843 A CN 202010240843A CN 111444019 B CN111444019 B CN 111444019B
- Authority
- CN
- China
- Prior art keywords
- training
- local device
- cloud server
- local
- deep learning
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012549 training Methods 0.000 title claims abstract description 319
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000013136 deep learning model Methods 0.000 title claims abstract description 28
- 238000013135 deep learning Methods 0.000 claims abstract description 26
- 238000012216 screening Methods 0.000 claims abstract description 11
- 238000013077 scoring method Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 claims description 4
- 238000013515 script Methods 0.000 claims description 4
- 230000002776 aggregation Effects 0.000 claims description 3
- 238000004220 aggregation Methods 0.000 claims description 3
- 230000000007 visual effect Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 claims 1
- 238000007726 management method Methods 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及一种云端协同的深度学习模型分布式训练方法及系统,所述训练方法包括:客户端接收用户输入的关于深度学习网络的训练任务;客户端根据所述训练任务调取网络配置和训练信息;云服务器根据网络配置和本地设备的资源情况,筛选出能够用于训练的各训练本地设备;云服务器根据所述网络配置和训练信息,生成多个训练子任务;云服务器将各训练子任务分别发送到不同的训练本地设备中;云服务器与各训练本地设备根据网络配置,对对应的训练子任务进行训练,以实现对深度学习网络的分布式训练。本发明通过云端协同实现了分布式资源的发现和筛选,从而可在深度学习模型分布式训练时合理有效的利用资源。
Description
技术领域
本发明机器学习技术领域,特别涉及一种云端协同的深度学习模型分布式训练方法及系统。
背景技术
随着深度学习网络的不断加深,训练数据量也与日俱增,单机训练不能满足人们的需求,速度过慢的弊端日益凸显,为解决这一问题,分布式机器学习的训练方式随之出现。
分布式机器学习是指将训练任务拆分成多个小任务,并将训练任务交由多个设备处理,同时数据也分布存储在不同设备中。分布式训练能发挥更大的计算、存储以及容错能力。
尽管分布式训练给大家带来新训练方式,但完成分布式训练需要构建训练集群,同一调度集群设备安排训练工作,从构建部署到运行维护,都是极为复杂且专业的工作。
随着云计算的兴起,云服务在互联网时代发挥越来越重要的作用,于是通过云服务器与边端设备互联的云端协同技术开始出现,通过云端协同可以更好的对分布式训练展开部署和调动,整合空闲资源,投入到训练任务中,加快模型训练速度,提高工作效率。
为了更加高效地完成分布式训练工作,容器云技术应运而生,它是一种能够实现容器集群快速部署的容器云平台。如Kubernetes平台,可以打包应用并确保在不同设备上运行的一致性,并且支持GPU调度。
然而目前,在云端协同下,面临端部资源发现和资源分配不均的问题,这导致有些优质的空闲资源难以被发现和调用起来,资源发现和资源筛选成为重要问题。
发明内容
为了解决现有技术中的上述问题,即为了有效利用资源,本发明的目的在于提供一种云端协同的深度学习模型分布式训练方法及系统。
为解决上述技术问题,本发明提供了如下方案:
一种云端协同的深度学习模型分布式训练方法,所述训练方法包括:
客户端接收用户输入的关于深度学习网络的训练任务;
客户端根据所述训练任务调取网络配置和训练信息;
云服务器根据网络配置和本地设备的资源情况,筛选出能够用于训练的各训练本地设备;
云服务器根据所述网络配置和训练信息,生成多个训练子任务;
云服务器将各训练子任务分别发送到不同的训练本地设备中;
云服务器与各训练本地设备根据网络配置,对对应的训练子任务进行训练,以实现对深度学习网络的分布式训练。
可选地,所述本地设备的资源情况包括本地设备的存储容量、CPU/GPU处理能力、资源空闲、网络畅通程度、深度学习环境配置中至少一者;
其中,所述云服务器根据网络配置和本地设备的资源情况,筛选出能够用于训练的各训练本地设备,具体包括:
所述云服务器根据网络配置和本地设备的资源情况,采用配置相近法或者资源评分法,计算各本地设备的评分数值;
将所述评分数值与评分阈值比较,确定用于训练的各训练本地设备。
可选地,所述评分数值为差距程度或整体评分;
所述将所述评分数值与评分阈值比较,确定训练本地设备群,具体包括:
当采用配置相近法计算差距程度时,筛选出小于第一评分阈值的差距程度对应的本地设备为训练本地设备;
当采用资源评分法计算整体评分时,筛选出大于第二评分阈值的整体评分对应的本地设备为训练本地设备。
可选地,根据以下公式计算差距程度a:
根据以下公式计算整体评分b:
其中,其中,a为本地设备配置与需求配置的差距程度,k为配置评分项目数,xn为训练需求设备配置项的评分数值,x′n为本地设备配置第n项配置的评分数值;b表示本地设备资源配置的整体评分,wn为本地设备第n项配置的评分权重。
可选地,所述训练信息包括分布式训练参数和训练数据集;所述分布式训练参数包括训练节点数、更新间隔、是否自动调动本地设各、是否自动调参中至少一者;
其中,所述云服务器根据所述网络配置和训练信息,生成多个训练子任务,具体包括:
所述云服务器根据分布式训练参数,将所述训练数据集进行划分,得到多个子数据集;
根据网络配置、分布式训练参数及各子数据集,生成对应的容器,所述容器为训练子任务。
可选地,所述网络配置包括度学习框架、模型的训练脚本/预训练模型、训练设备配置需求、训练命令、训练所需的子数据集、训练的各种超参数和梯度更新次数。
可选地,所述云服务器与各训练本地设备根据网络配置,对对应的训练子任务进行训练,具体包括:
在当前阶段的训练中,各训练本地设备分别根据当前梯度及训练子任务子数据集对本地的深度学习模型进行训练;
计算当前模型的准确率;
确定当前模型的准确率是否达到预先设定的准确率阈值,如果达到,则结束训练,否则将当前梯度上传到云服务器;
云服务器对所有各训练本地设备上传的当前梯度进行平均聚合得到更新梯度,并将更新梯度发送至各所述训练本地设备;
各训练本地设备根据接收到的更新梯度,对模型进行更新,并继续下阶段的训练,直到模型的准确率达到准确率阈值或达到梯度更新次数。
可选地,所述训练方法还包括:
云服务器从各训练本地设备中读取对应的训练日志,并存储;所述训练日志包括训练指标,所述训练指标包括:各训练本地设备的子任务执行进度、样本量分布以及当前模型的准确率;
云服务器将所述训练指标发送至客户端进行显示。
为解决上述技术问题,本发明还提供了如下方案:
一种云端协同的深度学习模型分布式训练系统,所述训练系统包括:
客户端,用于接收用户输入的关于深度学习网络的训练任务;
以及根据所述训练任务调取网络配置和训练信息;
云服务器,与客户端连接,用于根据网络配置和本地设备的资源情况,筛选出能够用于训练的各训练本地设备;
根据所述网络配置和训练信息,生成多个训练子任务;
将各训练子任务分别发送到不同的训练本地设备中;
多个训练本地设备,所述云服务器与各训练本地设备根据网络配置,对对应的训练子任务进行训练,以实现对深度学习网络的分布式训练。
可选地,所述客户端、云服务器和各训练本地设备通过网络或总线相连。
根据本发明的实施例,本发明公开了以下技术效果:
在本发明中,通过客户端根据用户输入的训练任务调取网络配置和训练信息,并通过云服务器筛选出能够用于训练的各训练本地设备,以及生成多个训练子任务,并分别发送到不同的训练本地设备中;从而使得云服务器与各训练本地设备对对应的训练子任务进行训练,以实现对深度学习网络的分布式训练。本发明通过云端协同实现了分布式资源的发现和筛选,从而可在深度学习模型分布式训练时合理有效的利用资源。
附图说明
图1是本发明云端协同的深度学习模型分布式训练方法的流程图;
图2是本发明云端协同的深度学习模型分布式训练系统的模块结构示意图。
符号说明:
客户端—1,云服务器—2,训练本地设备—3。
具体实施方式
下面参照附图来描述本发明的优选实施方式。本领域技术人员应当理解的是,这些实施方式仅仅用于解释本发明的技术原理,并非旨在限制本发明的保护范围。
本发明的目的在于提供一种云端协同的深度学习模型分布式训练方法及系统,在本发明中,通过客户端根据用户输入的训练任务调取网络配置和训练信息,并通过云服务器筛选出能够用于训练的各训练本地设备,以及生成多个训练子任务,并分别发送到不同的训练本地设备中;从而使得云服务器与各训练本地设备对对应的训练子任务进行训练,以实现对深度学习网络的分布式训练。本发明通过云端协同实现了分布式资源的发现和筛选,从而可在深度学习模型分布式训练时合理有效的利用资源。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
如图1所示,本发明云端协同的深度学习模型分布式训练方法包括:
步骤100:客户端接收用户输入的关于深度学习网络的训练任务;
步骤200:客户端根据所述训练任务调取网络配置和训练信息;
步骤300:云服务器根据网络配置和本地设备的资源情况,筛选出能够用于训练的各训练本地设备;
步骤400:云服务器根据所述网络配置和训练信息,生成多个训练子任务;
步骤500:云服务器将各训练子任务分别发送到不同的训练本地设备中;
步骤600:云服务器与各训练本地设备根据网络配置,对对应的训练子任务进行训练,以实现对深度学习网络的分布式训练。
在步骤200中,通过客户端的可视化界面,获取用户提交的训练任务的网络配置以及训练信息。
其中,所述训练信息包括分布式训练参数和训练数据集。所述分布式训练参数包括训练节点数、更新间隔、是否自动调动本地设备、是否自动调参等中至少一者。
根据用户输入的训练任务,确定训练数据集所在的存储路径或者网站链接:若是存储路径,则根据训练数据路径查找训练数据,若数据不存在,则反馈给用户客户端;若训练数据为网站链接,则打开并下载训练数据。
所述网络配置包括度学习框架、模型的训练脚本/预训练模型、训练设备配置需求、训练命令、训练所需的子数据集、训练的各种超参数和梯度更新次数。
进一步地,在步骤300中,所述本地设备的资源情况包括本地设备的存储容量、CPU/GPU处理能力、资源空闲、网络畅通程度、深度学习环境配置中至少一者。
优选地,所述云服务器根据网络配置和本地设备的资源情况,筛选出能够用于训练的各训练本地设备,具体包括:
步骤301:所述云服务器根据网络配置和本地设备的资源情况,采用配置相近法或者资源评分法,计算各本地设备的评分数值。
其中,所述评分数值为差距程度或整体评分。
步骤302:将所述评分数值与评分阈值比较,确定用于训练的各训练本地设备。
具体地:当采用配置相近法计算差距程度时,筛选出小于第一评分阈值的差距程度对应的本地设备为训练本地设备:
根据以下公式计算差距程度a:
其中,其中,a为本地设备配置与需求配置的差距程度,k为配置评分项目数,xn为训练需求设备配置项的评分数值,x′n为本地设备配置第n项配置的评分数值。
例如,根据训练需求得出需求配置参数为:CPU所需得分数值x1、GPU所需得分数值X2、存储容量所需得分数值x3、运行内存空闲资源所需得分数值X4、网络通畅程度所需得分数值X5,深度学习环境配置所需得分数值X6。
相应的,对本地设备的资源配置进行评分,得到:CPU得分数值x′1、GPU得分数值x′2、存储容量得分数值x′3、运行内存空闲资源得分数值x′4、网络通畅程度得分数值x′5,深度学习环境配置得分数值x′6。
按照配置相近法的公式:计算该本地设备的差距程度a1:
若本地设备有t个,则共会得到a1,a2,……,at,共t个评分结果,将这结果按从小到大排列,得分越小的设备,越接近需求设备配置,并根据第一评分阈值,优先选取符合条件的该类设备进行训练任务。
当采用资源评分法计算整体评分时,筛选出大于第二评分阈值的整体评分对应的本地设备为训练本地设备:
根据以下公式计算整体评分b:
其中,b表示本地设备资源配置的整体评分,wn为本地设备第n项配置的评分权重。
例如:对本地设备的资源配置进行评分,得到:CPU得分数值x′1、GPU得分数值x′2、存储容量得分数值x′3、运行内存空闲资源得分数值x′4、网络通畅程度得分数值x′5,深度学习环境配置得分数值x′6;对应的,CPU得分权重数值w1、GPU得分权重数值w2、存储容量得分权重数值w3、运行内存空闲资源得分权重数值w4、网络通畅程度得分权重数值w5,深度学习环境配置得分权重数值w6。
按照资源评分法的公式:计算该本地设备的整体评分b1:
b1=w1x′1+w2x′2+w3x′3+w4x′4+w5x′5+w6x′6。
若本地设备有m个,则共会得到b1,b2,……,bm,共m个评分结果,将这结果按从大到小排列,得分越大的设备,配置越好,根据第二整体评分,优先选取符合条件的该类设备进行训练任务。
需要指出的是,上述的xn,即项目评分数值的具体大小,可以由本领域专业人员视具体情况决定,也可以由评分软件或者评分机构给出,这里不做具体限制。上述的评分方法仅作举例,本领域专业人员视具体情况,可以采用其他评分项目或评分算法,达到对本地资源的筛选目的即可。
在步骤400中,所述云服务器根据所述网络配置和训练信息,生成多个训练子任务,具体包括:
步骤401:所述云服务器根据分布式训练参数,将所述训练数据集进行划分,得到多个子数据集。
例如按照batch_size大小进行划分。
步骤402:根据网络配置、分布式训练参数及各子数据集,生成对应的容器,所述容器为训练子任务。
下面以在Kubernetes平台部署分布式TensorFlow任务的过程为示例,详细说明:
根据分布式训练的类型,结合计算资源/计算资源和模型,将预训练的整个任务分解为若干个子任务,并分别为每个子任务生成对应的TF_CONFIG;
利用Kubernetes平台在本地设备群上部署用于训练的容器集群:
根据TF_CONFIG等为上述每个子任务创建对应的训练Pod(Kubernetes平台的“容器组”,是平台对容器进行编排管理时的最小调度单位)以及网络service(可以是蓝牙,WiFi或者网线);
上述容器集群部署完成后,启动执行分布式训练任务,也即在各部署好的本地设备上执行各子任务。
进一步地,在步骤600中,所述云服务器与各训练本地设备根据网络配置,对对应的训练子任务进行训练,具体包括:
步骤601:在当前阶段的训练中,各训练本地设备分别根据当前梯度及训练子任务子数据集对本地的深度学习模型进行训练;
步骤602:计算当前模型的准确率;
步骤603:确定当前模型的准确率是否达到预先设定的准确率阈值,如果达到,则结束训练,否则将当前梯度上传到云服务器;
步骤604:云服务器对所有各训练本地设备上传的当前梯度进行平均聚合得到更新梯度,并将更新梯度发送至各所述训练本地设备;
步骤605:各训练本地设备根据接收到的更新梯度,对模型进行更新,并继续下阶段的训练,直到模型的准确率达到准确率阈值或达到梯度更新次数。
优选地,本发明云端协同的深度学习模型分布式训练方法还包括:
云服务器从各训练本地设备中读取对应的训练日志,并存储;所述训练日志包括训练指标,所述训练指标包括:各训练本地设备的子任务执行进度、样本量分布以及当前模型的准确率;
云服务器将所述训练指标发送至客户端进行显示。
此外,本发明还提供一种云端协同的深度学习模型分布式训练系统,可有效利用资源。
如图2所示,本发明云端协同的深度学习模型分布式训练系统包括客户端1、云服务器2及多个训练本地设备3。
其中,所述客户端1用于接收用户输入的关于深度学习网络的训练任务;以及根据所述训练任务调取网络配置和训练信息。
所述云服务器2与客户端1连接;所述云服务器2用于根据网络配置和本地设备的资源情况,筛选出能够用于训练的各训练本地设备;根据所述网络配置和训练信息,生成多个训练子任务;将各训练子任务分别发送到不同的训练本地设备中。
所述云服务器2与各训练本地设备3根据网络配置,对对应的训练子任务进行训练,以实现对深度学习网络的分布式训练。
云服务器实时收集本地设备的资源数据;云服务器实时收集本地设备的本地子任务执行情况;云服务器与客户端分享收集到的信息。
其中,所述客户端1、云服务器2和各训练本地设备3通过网络或总线相连。
进一步地,客户端包括:
前端输入单元,用户通过所述前端输入单元的可视化界面,输入训练任务;
查询单元,用于用户通过客户端获取模型训练结果和本地设备训练进度;
第一任务管理单元,用于对训练任务包括子任务进行接收、生成、编排、分配、开启、暂停、调度等相关操作。
云服务器包括:
评分单元,用于对本地设备的资源进行评分,在分配子任务时提供参考依据;
任务状态监控单元,用于对训练过程以及本地设备运行状况进行监控并汇报给客户端;
第二任务管理单元,用于对训练任务包括子任务进行接收、生成、编排、分配、开启、暂停、调度等相关操作。
通过容器云上分布式训练的方法,将训练任务分解为若干个子任务,为子任务创建对应容器/容器组,将子任务分配到本地设备中。
客户端的任务管理单元与云服务器的任务管理单元相连,完成对训练任务包括子任务进行接收,生成,编排,分配,开启,暂停,调度等相关操作。查询单元与云服务器的任务状态监控单元相连,对设备运行状态和模型训练情况进行监控和信息查询。
相对于现有技术,本发明云端协同的深度学习模型分布式训练系统与上述云端协同的深度学习模型分布式训练方法的有益效果相同,在此不再赘述。
至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征作出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。
Claims (5)
1.一种云端协同的深度学习模型分布式训练方法,其特征在于,所述训练方法包括:
客户端接收用户输入的关于深度学习网络的训练任务;
客户端根据所述训练任务调取网络配置和训练信息;
云服务器根据网络配置和本地设备的资源情况,筛选出能够用于训练的各训练本地设备;
所述训练信息包括分布式训练参数和训练数据集;所述分布式训练参数包括训练节点数、更新间隔、是否自动调动本地设备、是否自动调参中至少一者;
其中,所述云服务器根据所述网络配置和训练信息,生成多个训练子任务,具体包括:
所述云服务器根据分布式训练参数,将所述训练数据集进行划分,得到多个子数据集;
根据网络配置、分布式训练参数及各子数据集,生成对应的容器,所述容器为训练子任务;
所述本地设备的资源情况包括本地设备的存储容量、CPU/GPU处理能力、资源空闲、网络畅通程度、深度学习环境配置中至少一者;
其中,所述云服务器根据网络配置和本地设备的资源情况,筛选出能够用于训练的各训练本地设备,具体包括:
所述云服务器根据网络配置和本地设备的资源情况,采用配置相近法或者资源评分法,计算各本地设备的评分数值;
通过客户端的可视化界面,获取用户提交的训练任务的网络配置以及训练信息;
其中,所述训练信息包括分布式训练参数和训练数据集;所述分布式训练参数包括训练节点数、更新间隔、是否自动调动本地设备、是否自动调参等中至少一者;
根据用户输入的训练任务,确定训练数据集所在的存储路径或者网站链接:若是存储路径,则根据训练数据路径查找训练数据,若数据不存在,则反馈给用户客户端;若训练数据为网站链接,则打开并下载训练数据;
所述网络配置包括深度学习框架、模型的训练脚本/预训练模型、训练设备配置需求、训练命令、训练所需的子数据集、训练的各种超参数和梯度更新次数;
所述云服务器根据网络配置和本地设备的资源情况,采用配置相近法或者资源评分法,计算各本地设备的评分数值;
其中,所述评分数值为差距程度或整体评分;
将所述评分数值与评分阈值比较,确定用于训练的各训练本地设备;
具体地:当采用配置相近法计算差距程度时,筛选出小于第一评分阈值的差距程度对应的本地设备为训练本地设备:
根据以下公式计算差距程度a:
其中,a为本地设备配置与需求配置的差距程度,k为配置评分项目数,xn为训练需求设备配置项的评分数值,x′n为本地设备配置第n项配置的评分数值;
当采用资源评分法计算整体评分时,筛选出大于第二评分阈值的整体评分对应的本地设备为训练本地设备:
根据以下公式计算整体评分b:
其中,b表示本地设备资源配置的整体评分,wn为本地设备第n项配置的评分权重,x′n为本地设备配置第n项配置的评分数值;云服务器根据所述网络配置和训练信息,生成多个训练子任务;
云服务器将各训练子任务分别发送到不同的训练本地设备中;
云服务器与各训练本地设备根据网络配置,对对应的训练子任务进行训练,以实现对深度学习网络的分布式训练;具体包括:
在当前阶段的训练中,各训练本地设备分别根据当前梯度及训练子任务子数据集对本地的深度学习模型进行训练;
计算当前模型的准确率;
确定当前模型的准确率是否达到预先设定的准确率阈值,如果达到,则结束训练,否则将当前梯度上传到云服务器;
云服务器对所有各训练本地设备上传的当前梯度进行平均聚合得到更新梯度,并将更新梯度发送至各所述训练本地设备;
各训练本地设备根据接收到的更新梯度,对模型进行更新,并继续下阶段的训练,直到模型的准确率达到准确率阈值或达到梯度更新次数。
2.根据权利要求1所述的云端协同的深度学习模型分布式训练方法,其特征在于,所述网络配置包括深度学习框架、模型的训练脚本/预训练模型、训练设备配置需求、训练命令、训练所需的子数据集、训练的各种超参数和梯度更新次数。
3.根据权利要求1所述的云端协同的深度学习模型分布式训练方法,其特征在于,所述训练方法还包括:
云服务器从各训练本地设备中读取对应的训练日志,并存储;所述训练日志包括训练指标,所述训练指标包括:各训练本地设备的子任务执行进度、样本量分布以及当前模型的准确率;
云服务器将所述训练指标发送至客户端进行显示。
4.一种云端协同的深度学习模型分布式训练系统,其特征在于,用以执行如权利要求1至3任一项所述训练方法的功能,所述训练系统包括:
客户端,用于接收用户输入的关于深度学习网络的训练任务;
以及根据所述训练任务调取网络配置和训练信息;
云服务器,与客户端连接,用于根据网络配置和本地设备的资源情况,筛选出能够用于训练的各训练本地设备;
根据所述网络配置和训练信息,生成多个训练子任务;
将各训练子任务分别发送到不同的训练本地设备中;
多个训练本地设备,所述云服务器与各训练本地设备根据网络配置,对对应的训练子任务进行训练,以实现对深度学习网络的分布式训练。
5.根据权利要求4所述的云端协同的深度学习模型分布式训练系统,其特征在于,所述客户端、云服务器和各训练本地设备通过网络或总线相连。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010240843.4A CN111444019B (zh) | 2020-03-31 | 2020-03-31 | 云端协同的深度学习模型分布式训练方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010240843.4A CN111444019B (zh) | 2020-03-31 | 2020-03-31 | 云端协同的深度学习模型分布式训练方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111444019A CN111444019A (zh) | 2020-07-24 |
CN111444019B true CN111444019B (zh) | 2024-01-26 |
Family
ID=71649274
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010240843.4A Active CN111444019B (zh) | 2020-03-31 | 2020-03-31 | 云端协同的深度学习模型分布式训练方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111444019B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112019510B (zh) * | 2020-07-28 | 2021-07-06 | 北京大学 | 一种深度神经网络架构的自适应搜索方法和系统 |
CN112202837B (zh) | 2020-09-04 | 2022-05-17 | 苏州浪潮智能科技有限公司 | 一种基于数据集与节点缓存的调度方法和装置 |
CN112199885B (zh) * | 2020-09-09 | 2021-07-06 | 北京达佳互联信息技术有限公司 | 一种分布式模型训练系统及应用方法 |
CN111931876B (zh) * | 2020-10-12 | 2021-02-05 | 支付宝(杭州)信息技术有限公司 | 一种用于分布式模型训练的目标数据方筛选方法及系统 |
CN114819195A (zh) * | 2021-01-28 | 2022-07-29 | 华为技术有限公司 | 集成学习模型的训练方法、装置、系统和相关设备 |
CN112988382B (zh) * | 2021-03-12 | 2023-09-19 | 中国科学院自动化研究所 | 基于分布式深度学习的医学影像智能分析系统 |
CN114091688B (zh) * | 2021-11-25 | 2022-05-20 | 北京九章云极科技有限公司 | 一种计算资源获取方法、装置、电子设备和存储介质 |
CN114594893A (zh) * | 2022-01-17 | 2022-06-07 | 阿里巴巴(中国)有限公司 | 性能分析方法和装置、电子设备及计算机可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106529673A (zh) * | 2016-11-17 | 2017-03-22 | 北京百度网讯科技有限公司 | 基于人工智能的深度学习网络训练方法及装置 |
CN109032671A (zh) * | 2018-06-25 | 2018-12-18 | 电子科技大学 | 一种基于数据并行策略的分布式深度学习方法及系统 |
CN109885389A (zh) * | 2019-02-19 | 2019-06-14 | 山东浪潮云信息技术有限公司 | 一种基于容器的并行深度学习调度训练方法及系统 |
CN110347500A (zh) * | 2019-06-18 | 2019-10-18 | 东南大学 | 用于边缘计算环境中面向深度学习应用的任务卸载方法 |
-
2020
- 2020-03-31 CN CN202010240843.4A patent/CN111444019B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106529673A (zh) * | 2016-11-17 | 2017-03-22 | 北京百度网讯科技有限公司 | 基于人工智能的深度学习网络训练方法及装置 |
CN109032671A (zh) * | 2018-06-25 | 2018-12-18 | 电子科技大学 | 一种基于数据并行策略的分布式深度学习方法及系统 |
CN109885389A (zh) * | 2019-02-19 | 2019-06-14 | 山东浪潮云信息技术有限公司 | 一种基于容器的并行深度学习调度训练方法及系统 |
CN110347500A (zh) * | 2019-06-18 | 2019-10-18 | 东南大学 | 用于边缘计算环境中面向深度学习应用的任务卸载方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111444019A (zh) | 2020-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111444019B (zh) | 云端协同的深度学习模型分布式训练方法及系统 | |
CN108924217B (zh) | 一种分布式云系统自动化部署方法 | |
Bu et al. | Coordinated self-configuration of virtual machines and appliances using a model-free learning approach | |
CN107003887A (zh) | Cpu超载设置和云计算工作负荷调度机构 | |
CN110502213A (zh) | 一种人工智能能力开发平台 | |
US11055139B2 (en) | Smart accelerator allocation and reclamation for deep learning jobs in a computing cluster | |
CN111209077A (zh) | 深度学习框架设计方法 | |
US20240111586A1 (en) | Multi-policy intelligent scheduling method and apparatus oriented to heterogeneous computing power | |
CN110308987B (zh) | 一种更新容器云上分布式训练任务连接参数的方法 | |
CN107370796A (zh) | 一种基于Hyper TF的智能学习系统 | |
CN107992392A (zh) | 一种用于云渲染系统的自动监控修复系统和方法 | |
Chieu et al. | Dynamic resource allocation via distributed decisions in cloud environment | |
CN113742031A (zh) | 节点状态信息获取方法、装置、电子设备及可读存储介质 | |
CN114610474A (zh) | 一种异构超算环境下多策略的作业调度方法及系统 | |
CN112685179A (zh) | 一种基于云上成本的资源部署系统及方法 | |
CN111324460B (zh) | 一种基于云计算平台的电力监测控制系统及方法 | |
CN111666158A (zh) | 一种基于Kubernetes的容器调度方法、装置、存储介质及电子设备 | |
CN111767145A (zh) | 容器调度系统、方法、装置和设备 | |
Luo et al. | Efficient pipeline planning for expedited distributed dnn training | |
CN105827744A (zh) | 云存储平台的数据处理方法 | |
CN105933136B (zh) | 一种资源调度方法及系统 | |
CN110290206A (zh) | 一种用于网吧环境的分布式计算系统及方法 | |
CN110727511A (zh) | 应用程序的控制方法、网络侧设备和计算机可读存储介质 | |
WO2021220616A1 (ja) | 情報処理装置及び情報処理方法、コンピュータプログラム、並びに分散学習システム | |
CN107819598A (zh) | 一种管理网络功能节点的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |