当前位置: 首页 > 专利查询>武汉大学专利>正文

面向分布式机器学习任务的云资源在线调度方法及装置制造方法及图纸

技术编号:21777237 阅读:68 留言:0更新日期:2019-08-03 23:12
本发明专利技术公开了一种面向分布式机器学习任务的云资源在线调度方法,首先由云资源经纪商在每个时段的开始,观测出每个数据中心各种资源的价格函数,以及每个任务需要训练的数据量大小,计算出调度分布式机器学习任务过程中所产生的所有的代价之和,表示成整数型线性规划,然后将松弛后的线性规划通过正则化方法将每相邻两个时段内的关系解耦,将难以处理的整个T时刻的在线规划问题转化成每个时刻独立的线性规划,这样就可以实时决策不需要依赖未来的信息,最后采用设计的独立取整方法求出每个时刻每个机器学习任务的计算节点和参数服务器的部署方案以及数据迁移方案,从而达到保证任务完成效果的基础上总体的代价之和最小,优化了调度效果。

Cloud Resource Online Scheduling Method and Device for Distributed Machine Learning Tasks

【技术实现步骤摘要】
面向分布式机器学习任务的云资源在线调度方法及装置
本专利技术涉及云计算
,具体涉及一种面向分布式机器学习任务的云资源在线调度方法及装置。
技术介绍
传统式机器学习倾向于把所有的数据集集中起来离线式训练,从而得到较优的模型。而实际训练的过程中,数据源通常是地理分散的,并且并不是同一时刻产生的,而是随着时间呈序列顺序产生,因而传统的机器学习的训练方法不再适用,而需要借助于分布式机器学习(geo-distributedmachinelearning)。分布式机器学习能够有效地训练随着时间的推移而产生的大型地理分散型数据集,无须再把所有的数据集集中在一个中心站点训练。目前,分布式机器学习普遍采用参数服务器(parameterserver)框架,为了训练一个全局机器学习模型,如何战略性地部署和调整地理分布式机器学习任务中的计算节点(worker)和参数服务器(parameterserver),以便于随时轻松访问数据集并且快速交换模型参数,是一个热点问题。与此同时,许多云平台提供总额折扣以鼓励大家使用他们的机器学习资源。本申请专利技术人在实施本专利技术的过程中,发现现有技术的方法,至少存在如下技术问题:现有的很多地理分布式机器学习任务一般单独从各个云资源平台租赁任务所需要的资源,调度效果不佳,用户很少能够享受折扣,因此,需要耗费巨额租赁费用,扩大了支出成本。由此可知,现有技术中的方法存在调度效果不佳的技术问题。
技术实现思路
有鉴于此,本专利技术提供了一种面向分布式机器学习任务的云资源在线调度方法及装置,用以解决或者至少部分解决现有技术中的方法存在调度效果不佳的技术问题。本专利技术第一方面提供了一种面向分布式机器学习任务的云资源在线调度方法,包括:步骤S1:云资源经纪商在每个时段的开始,观测出每个地理分布式数据中心各种资源的价格函数以及每个机器学习任务需要训练的数据量大小,其中,地理分布式数据中心用于放置计算节点和参数服务器,机器学习任务由用户提交,并且在每个时刻产生下个时刻每个任务需要训练的数据量,价格函数为其中,h为资源使用量,为阈值,和为根据实际资源价格设置可调整的参数;步骤S2:根据价格函数和数据量大小,计算出调度分布式机器学习任务过程中所产生的代价;步骤S3:将所有代价之和表示为成整数型线性规划;步骤S4:将整数型线性规划松弛为线性规划,求出t时刻在数据中心r上放置的任务i的计算节点的数量,在t时刻在数据中心r上放置的任务i的参数服务器的数量对应的分数解;步骤S5:对所述分数解采用独立取整方法,求出每个时刻每个机器学习任务的计算节点和参数服务器的部署方案、数据迁移方案,将其作为调度方案;步骤S6:基于所述调度方案,进行在线调度。在一种实施方式中,调度分布式机器学习任务过程中所产生的代价包括数据迁移代价、资源租用代价、部署代价和通信代价,步骤S2具体包括:步骤S2.1:获取与调度相关的参数,具体包括:任务i的计算节点的处理能力为Pi,任务i的计算节点需要的k类资源的数量为ni,k,任务i的参数服务器需要的k类资源的数量为mi,t,参数服务器和计算节点之间需要交换的参数大小为Bi,在t时刻在数据中心r上放置的任务i的计算节点的数量为在t时刻在数据中心r上放置的任务i的参数服务器的数量为在t时刻在系统里处理的任务集合为It,在将数据集从数据中心r迁移到r′的迁移成本是drr′,其需要迁移的数据量大小为参数服务器和计算节点之间的连接数为任务i的部署成本为ci,步骤S2.2:根据单位数据迁移成本与迁移的数据量,表示数据迁移代价C1(t),其中,步骤S2.3:根据用户任务所需要消耗的资源量和资源价格方程,表示出资源租用代价C2(t),其中,步骤S2.4:根据上一时刻和当前时刻计算节点和参数服务器的部署情况来表示部署代价C3(t),其中,其中,表示i任务在r数据中心上的部署代价,时表示需要发生新的部署,时表示不需要,上一时刻计算节点和参数服务器的部署情况为当前时刻计算节点和参数服务器的部署情况为步骤S2.5:根据部署方案表示出节点和参数服务器的通信代价其中,在一种实施方式中,步骤S3具体包括:将数据迁移代价、资源租用代价、部署代价和通信代价相加表示为整数型线性规划,minimize∑t∈T(C1(t)+C2(t)+C3(t)+C4(t)),并构建约束条件,约束条件具体包括约束条件(1)~(11):其中,I表示用户总数,T为总时长,R为地理分布式数据中心数量,为计算过程中的辅助变量,其值大小等于M为预设参数,为两个预设辅助变量,和分别表示前一时刻和当前时刻计算节点和参数服务器的部署情况。在一种实施方式中,步骤S4具体包括:将整数型线性规划松弛成线性规划,再采用正则化方法将每相邻两个时段内的关系解耦获得归一化项:求出和的分数解,其中,表示t时刻在数据中心r上放置的任务i的计算节点的数量,表示在t时刻在数据中心r上放置的任务i的参数服务器的数量ε和σ为设置参数,取大于0小于1的数。在一种实施方式中,步骤S5具体包括:步骤S5.1:对步骤S4的对应的分数解取整,具体为:将所有不为整数的的小数部分pi(t)放入一个集合当集合不为空集的时候,任取两个pi1(t)和pi2(t),定义两个变量Φ1和Φ2,分别表示为:根据概率设置pi1(t)=pi1(t)+Φ1,根据概率设置pi1(t)=pi1(t)-Φ2,到所有的都为0或者1;步骤S5.2:将对应的分数解取整,具体包括:根据概率分布任取一个i′使得为1其余的i对应的都为0;步骤S5.3:将通过步骤S5.1和步骤S5.2求出来的和输入整数型线性规划方程中,重新求解出其余所有的变量。基于同样的专利技术构思,本专利技术第二方面提供了一种面向分布式机器学习任务的云资源在线调度装置,包括:价格函数及数据量观测模块,用于在每个时段的开始,观测出每个地理分布式数据中心各种资源的价格函数以及每个机器学习任务需要训练的数据量大小,其中,地理分布式数据中心用于放置计算节点和参数服务器,机器学习任务由用户提交,并且在每个时刻产生下个时刻每个任务需要训练的数据量,价格函数为其中,h为资源使用量,为阈值,和为根据实际资源价格设置可调整的参数;代价计算模块,用于根据价格函数和数据量大小,计算出调度分布式机器学习任务过程中所产生的代价;整数型线性规划表示模块,用于将所有代价之和表示为成整数型线性规划;松弛化模块,用于将整数型线性规划松弛为线性规划,求出t时刻在数据中心r上放置的任务i的计算节点的数量,在t时刻在数据中心r上放置的任务i的参数服务器的数量对应的分数解;调度方案求解模块,用于对所述分数解采用独立取整方法,求出每个时刻每个机器学习任务的计算节点和参数服务器的部署方案、数据迁移方案,将其作为调度方案;调度模块,用于基于所述调度方案,进行在线调度。在一种实施方式中,调度分布式机器学习任务过程中所产生的代价包括数据迁移代价、资源租用代价、部署代价和通信代价,代价计算模块具体用于执行下述步骤:步骤S2.1:获取与调度相关的参数,具体包括:任务i的计算节点的处理能力为Pi,任务i的计算节点需要的k类资源的数量为ni,k,任务i的参数服务器需要的k类资源的数量为mi,t,参数服务器和计算节点之间需要交换的参数大小为Bi,在t本文档来自技高网...

【技术保护点】
1.面向分布式机器学习任务的云资源在线调度方法,其特征在于,包括:步骤S1:云资源经纪商在每个时段的开始,观测出每个地理分布式数据中心各种资源的价格函数以及每个机器学习任务需要训练的数据量大小,其中,地理分布式数据中心用于放置计算节点和参数服务器,机器学习任务由用户提交,并且在每个时刻产生下个时刻每个任务需要训练的数据量,价格函数为

【技术特征摘要】
1.面向分布式机器学习任务的云资源在线调度方法,其特征在于,包括:步骤S1:云资源经纪商在每个时段的开始,观测出每个地理分布式数据中心各种资源的价格函数以及每个机器学习任务需要训练的数据量大小,其中,地理分布式数据中心用于放置计算节点和参数服务器,机器学习任务由用户提交,并且在每个时刻产生下个时刻每个任务需要训练的数据量,价格函数为其中,h为资源使用量,为阈值,和为根据实际资源价格设置可调整的参数;步骤S2:根据价格函数和数据量大小,计算出调度分布式机器学习任务过程中所产生的代价;步骤S3:将所有代价之和表示为成整数型线性规划;步骤S4:将整数型线性规划松弛为线性规划,求出t时刻在数据中心r上放置的任务i的计算节点的数量,在t时刻在数据中心r上放置的任务i的参数服务器的数量对应的分数解;步骤S5:对所述分数解采用独立取整方法,求出每个时刻每个机器学习任务的计算节点和参数服务器的部署方案、数据迁移方案,将其作为调度方案;步骤S6:基于所述调度方案,进行在线调度。2.如权利要求1所述的方法,其特征在于,调度分布式机器学习任务过程中所产生的代价包括数据迁移代价、资源租用代价、部署代价和通信代价,步骤S2具体包括:步骤S2.1:获取与调度相关的参数,具体包括:任务i的计算节点的处理能力为Pi,任务i的计算节点需要的k类资源的数量为ni,k,任务i的参数服务器需要的k类资源的数量为mi,t,参数服务器和计算节点之间需要交换的参数大小为Bi,在t时刻在数据中心r上放置的任务i的计算节点的数量为在t时刻在数据中心r上放置的任务i的参数服务器的数量为在t时刻在系统里处理的任务集合为It,在将数据集从数据中心r迁移到r′的迁移成本是drr′,其需要迁移的数据量大小为参数服务器和计算节点之间的连接数为任务i的部署成本为ci,步骤S2.2:根据单位数据迁移成本与迁移的数据量,表示数据迁移代价C1(t),其中,步骤S2.3:根据用户任务所需要消耗的资源量和资源价格方程,表示出资源租用代价C2(t),其中,步骤S2.4:根据上一时刻和当前时刻计算节点和参数服务器的部署情况来表示部署代价C3(t),其中,其中,表示i任务在r数据中心上的部署代价,时表示需要发生新的部署,时表示不需要,上一时刻计算节点和参数服务器的部署情况为当前时刻计算节点和参数服务器的部署情况为步骤S2.5:根据部署方案表示出节点和参数服务器的通信代价C4(t),其中,3.如权利要求2所述的方法,其特征在于,步骤S3具体包括:将数据迁移代价、资源租用代价、部署代价和通信代价相加表示为整数型线性规划,minimize∑t∈T(C1(t)+C2(t)+C3(t)+C4(t)),并构建约束条件,约束条件具体包括约束条件(1)~(11):其中,I表示用户总数,T为总时长,R为地理分布式数据中心数量,为计算过程中的辅助变量,其值大小等于M为预设参数,为两个预设辅助变量,和分别表示前一时刻和当前时刻计算节点和参数服务器的部署情况。4.如权利要求3所述的方法,其特征在于,步骤S4具体包括:将整数型线性规划松弛成线性规划,再采用正则化方法将每相邻两个时段内的关系解耦获得归一化项:求出和的分数解,其中,表示t时刻在数据中心r上放置的任务i的计算节点的数量,表示在t时刻在数据中心r上放置的任务i的参数服务器的数量ε和σ为设置参数,取大于0小于1的数。5.如权利要求4所述的方法,其特征在于,步骤S5具体包括:步骤S5.1:对步骤S4的对应的分数解取整,具体为:将所有不为整数的的小数部分pi(t)放入一个集合当集合不为空集的时候,任取两个pi1(t)和pi2(t),定义两个变量Φ1和Φ2,分别表示为:根据概率设置pi1(t)=pi1(t)+Φ1,根据概率设置pi1(...

【专利技术属性】
技术研发人员:李晓彤李宗鹏周睿婷黄浩
申请(专利权)人:武汉大学
类型:发明
国别省市:湖北,42

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

1