[发明专利]一种云环境下的深度学习训练资源配置预测方法在审
申请号: | 202010313690.1 | 申请日: | 2020-04-20 |
公开(公告)号: | CN111444026A | 公开(公告)日: | 2020-07-24 |
发明(设计)人: | 梁毅;刘明洁;丁毅;丁振兴 | 申请(专利权)人: | 北京工业大学 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06N3/08 |
代理公司: | 北京思海天达知识产权代理有限公司 11203 | 代理人: | 刘萍 |
地址: | 100124 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 环境 深度 学习 训练 资源配置 预测 方法 | ||
1.一种云环境下的深度学习训练资源配置预测方法,其特征在于,此方法分为四个步骤:初始化、性能模型构建、启发式搜索、执行模型训练;
上述方法在计算机上按以下步骤实现:
(1)初始化
1.1)结合模型训练执行环境,构建云环境资源节点集合DataResources,DataResources={dri|1≤i≤M},其中,对于任一资源节点dri∈DataResources,dri用三元组(centeri,capacityi,memoryi)来表示,centeri代表了一个资源节点的编号,capacityi代表资源节点centeri的存储容量,memoryi代表资源节点centeri的内存容量,M表示数据中心的总个数;
1.2)令模型训练执行过程中的配置信息组合成数据集合TrainDataSet,TrainDataSet={tdj|1≤j≤N},其中,对于任一数据tdj∈TrainDataSet,tdj用六元组(batchsizej,resj,timej,roundj,dataseizej,accj)来表示,batchsizej代表数据tdj所使用的批尺寸参数大小,resj代表数据tdj使用的资源节点数,timej代表数据tdj每轮次训练耗时,roundj代表数据tdj使用的迭代轮次数值,datasizej代表数据tdj对应的训练数据集规模大小,accj代表数据tdj的训练任务最终获得的训练精度,N表示数据的总个数;
(2)性能模型建模
2.1)依据已经执行模型训练的训练数据信息构建数据矩阵Xv,形式如下
在矩阵Xv中,每行代表一组样例数据,每组数据中包含某次模型训练时对应所使用的批尺寸参数、资源节点数、训练数据集大小、总训练轮次数以及每轮次训练执行耗时以及训练获得的模型精度;其中,批尺寸参数用xbatchk代表、资源节点数用xresourcek代表、训练数据集大小用xdsizek代表、总训练轮次数用xroundk代表、每轮次训练执行耗时用ytimek代表、训练精度用yacck代表,k=1,2,…,n,n代表构建训练数据信息的条目总数;
2.2)构建每轮次耗时与批尺寸参数、资源供给和训练数据大小之间的关系,数学函数关系式形如下式
f(batchsize,res,datasize)=tround
在上述式子中,batchsize表示批尺寸参数变量,res表示本次模型训练给定的资源供给量,datasize表示训练数据规模大小,tround表示每轮次时间耗时;对于本数学函数关系式的训练,选择数据矩阵Xv中的第一、二、三和第五列进行;因此,数学关系式中的变量与数据矩阵中参数对应关系为:函数式中的batchsize对应着数据矩阵中的xbatchk,函数式中的datasize对应着数据矩阵中的xdsizek,函数式中的res对应着数据矩阵中的xresourcek,函数关系式中的tround对应着数据矩阵中的ytimek;
在确立数据项后,即可进行保序回归的计算;由于本保序回归算法为多维保序回归,因此采取降维方法,即考虑其中某一维自变量与因变量之间的保序回归;以此类推,完成各个维度自变量的保序回归;最后将各个维度的自变量保序回归进行合并,最终完成多维保序回归的解算;
设矩阵∧v为选取数据矩阵Xv中第一、二、三和五列后所形成的数据矩阵;令Av表示矩阵∧v所对应的向量矩阵,即Av=(xbatchk,xresourcek,xdsizek,ytimek);按照数学函数关系式,下面求解矩阵Av中(xbatchk,xresourcek,xdsizek)与ytimek之间的保序回归;
选取矩阵Av中的向量xbatchk与ytimek,其中xbatchk所包含元素即为矩阵Xv中的(xbatch1,xbatch2,...,xbatchn)T;设所求的保序回归函数关系的权重序列为w=(Wu)T,u的取值同k;
遍历xbatchk,如果存在l∈k使xbatchl>xbatchl+1,令B={l,l+1},则
wB=wl+wl+1
此时令
分别表示在保序回归过程中某次遍历计算得到的值序列和权重序列;如果计算到某次遍历时使得是保序的,即:xbatch1≤…≤xbatchl-1≤xB≤xbatchl+1≤…≤xbatchn,则停止计算;如果不是保序的,则继续遍历,直至得到保序回归序列以及对应的权重
依次对xresourcek和xdsizek分别进行保序回归计算,形成对应的权重序列;令xbatchk,xresourcek,xdsizek对应的权重分别为wbatch,wresource,wdsize;则最终构建的函数关系式为
xbatchk*wbatch+xresourcek*wresource+xdsizek*wdsize=tround
2.3)构建批尺寸参数、迭代轮次数和训练精度之间的关系,数学函数关系形如下式
f(batchsize,round)=acc
在上述式子中,batchsize表示批尺寸参数变量,round表示模型训练总轮次数,acc表示模型训练精度;对于本数学关系式的训练,选择数据矩阵Xv中的第一、四和第六列进行;因此,数学关系式中的变量与数据矩阵中参数对应关系为:函数式中的batchsize对应着数据矩阵中的xbatchk,函数式中的round对应着数据矩阵中的xroundk,函数式中的acc对应着数据矩阵中的xacck;
对此数学函数关系式的构建方法同步骤2.2)中的方法;令xbatchk,xroundk对应的保序回归权重分别为wbatch,wround;则最终构建的函数关系式为
xbatchk*wbatch+xroundk*wround=acc
(3)最优化参数配置搜索
3.1)选取优化参数配置和资源分配方案的问题可形式化为如下形式:
min(rvm)
min(Tlimit)
max(accpredict)
subject to:
在上述关系中:rvm表示资源节点数,Tlimit表示模型训练作业运行总时间,accpredict表示最终训练精度,Cbatch为数据划分的分组数,tround为模型训练作业某个阶段运行耗时;其中,min(rvm)表示最小化资源使用量;min(Tlimit)表示最小化训练时间;max(accpredict)表示最大化模型的训练精度;Cbatch%rvm=0表示数据集按照批尺寸数值划分后,其数据划分的分组数目应与工作节点数目成整数倍关系;表示对于模型训练作业,其各轮次的运行时间总和应保证小于模型训练作业总时间;
3.2)通过步骤2)的计算,形成不同批尺寸和资源配置组合下的每轮次训练耗时列表和不同批尺寸和迭代轮次数下能达到的训练精度列表,分别记为table1和table2;
3.3)联合两张结果表依据最小化运行时间及最优模型训练精度目标进行搜索,其中,最小化运行时间为迭代轮次数乘以每轮次训练耗时;
3.4)根据搜索方法分为两步,
3.4.1)在列表table2中搜索最优可达模型精度所对应的批尺寸数值和迭代轮次数;
3.4.2)依据批尺寸数值在列表table1查找对应的每轮次迭代耗时以及工作节点资源配置数;
3.4.3)对应查找到的多条记录,将每轮次迭代耗时与上一步搜索的迭代轮次数相乘获取训练总耗时,对应着相乘所得训练总耗时最小的记录,将此条记录下来形成待确认列表供后续使用;如果不满足要求则直接舍弃;
3.5)最后,在待确认列表中确定最终参数配置组合,这时出现列表中存在多个记录或者无记录情形:
3.5.1)如果是无记录,则需要重新在列表table2中寻找次优数值以便继续进行搜索;
3.5.2)如果是多条记录,则需要根据训练总耗时最小的限制条件,找到在训练总耗时中工作节点资源最少的一组配置,按照此配置结果来执行模型训练;
(4)执行模型训练
4.1)根据步骤(3)的解空间搜索结果,组成参数配置列表;
4.2)按照参数配置表设置模型训练配置
(5)结束:等待模型训练作业执行完毕。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京工业大学,未经北京工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010313690.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于余热分级利用的日用瓷连续生产系统及方法
- 下一篇:一种油墨生产工艺