一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于探索利用分离的联合神经网络的云作业调度方法及系统

2022-06-05 10:33:48 来源:中国专利 TAG:


1.本发明涉及云计算领域,更具体地,涉及一种基于探索利用分离的联合神经网络的云作业调度方法及系统。


背景技术:

2.云计算的发展推动了整个信息产业的高速发展,云计算是分布式计算、并行计算、效用计算、网络存储、虚拟化、负载均衡、热备份冗余等传统计算机技术和网络技术发展融合的产物。一直以来,由于云计算平台中资源的异构性、作业的多样性、服务质量的差异性以及用户数量巨大性,使得云计算系统要处理大量的作业和数据。在这种情况下,单独部署一台虚拟机容易使虚拟机服务器过载,造成作业响应过慢,加大sla违规的风险。为此,云服务提供商和用户倾向于使用多队列多虚拟机集群的服务模式。多队列是指将不同性质或要求的作业组织成多个不同队列进行提交。多虚拟机集群是指将属于多个用户的可以相互通信协调的虚拟机簇,其通过簇内负载均衡等控制技术大幅度提升其整体性能。在这种服务模式中,高效地进行作业调度和合理地进行资源配置,降低作业执行的时间成本和虚拟机集群的能耗是云服务提供商非常重视的技术问题,直接决定了云平台的服务质量水平和运营利润。多队列多集群下作业调度和资源配置优化问题成为了云计算领域亟待解决的核心问题之一。
3.针对云计算的调度优化问题,众多学者以及机构对该问题展开了多方面的研究。有部分学者尝试使用启发式算法解决该问题,但传统的启发式算法需要在特定的条件下,才能获得最优解。面对复杂多变的云环境,其通用性不强,而且在多目标优化问题的求解过程中容易陷入局部最优解,而无法获得全局最优解。强化学习作为一种无模型的学习方法,具有强大的决策能力,通过不断试错的机制来获取云调度优化问题的最优解。因此,有一些研究人员尝试采用强化学习方法来解决云计算的作业调度和资源管理问题,但在面对大规模状态空间情况下,强化学习算法容易出现收敛速度慢,或是不收敛的情况。而深度神经网络具有强大的感知能力,能够有效应对大规模状态空间,很好弥补强化学习的不足。
4.实际应用中,云调度问题是一个复杂多变的问题,面对云作业系统中批量提交作业到集群中执行时,如何进行有效的作业调度,依然值得探究。


技术实现要素:

5.本发明旨在克服上述现有技术的至少一种缺陷(不足),提供一种基于探索利用分离的联合神经网络的云作业调度方法及系统,用于优化解决云系统中批量作业提交过程中,如何进行有效的作业调度问题。
6.本发明采取的技术方案是,一种基于探索利用分离的联合神经网络的云作业调度方法,包括:
7.将用户负载解耦成子作业,将子作业分配到多个队列中;
8.将多个队列中的多个作业属性组成状态;
9.将状态作为多个并行神经网络的输入,多个并行神经网络输出对应的动作决策;
10.利用回报函数计算每个动作决策的成本值,选择获取最小成本值的动作决策作为该组作业的最佳动作决策;
11.根据选择的最佳动作决策将队列中的子作业调度到多个集群中;
12.其中,所述多个并行的神经网络分为探索部分和利用部分,将利用部分的神经网络利用训练集进行训练得到训练后的神经网络;
13.所述将状态作为多个并行神经网络的输入具体是将状态输入训练后的利用部分的神经网络和探索部分的神经网络。
14.进一步地,所述作业属性包括作业所需要的cpu周期数和作业所需要传输的数据量。
15.进一步地,将状态作为多个并行神经网络的输入,多个并行神经网络输出对应的动作决策,具体为:
16.状态其中,n表示队列数,n∈n,m表示每个队列包含的作业数量,m∈m;表示作业t
nm
所需要的cpu周期数,表示作业t
nm
所需要传输的数据量;t表示调度时隙;
17.每个神经网络输出的动作决策表示为:其中表示第x个神经网络参数的函数,a
nmk
={0,1},a
nmk
=1表示队列qn中的作业tm调度到集群cluk中,k表示系统中计算集群的数量,k∈k,即:
[0018][0019]
进一步地,利用回报函数计算每个动作决策的成本值,具体为:
[0020]
回报函数定义为:
[0021]
cost(s,d)=λ
×
td (1-λ)
×
ec
[0022]
其中,s表示作业集,d表示动作决策,λ∈[0,1]表示作业时延在总的优化目标中的权重,(1-λ)表示能耗的优化权重;
[0023]
令d表示为作业集s的所有调度策略,则优化目标表示为:
[0024]
min
d∈d
cost(s,d)
[0025]
s.t.
[0026][0027][0028]
c3:1≤n≤n,1≤k≤k
[0029]
其中,表示作业tm被分配到集群cluk中其所能占用的带宽;bw
nk
表示队列qn与集群cluk之间被分配的带宽;表示每个作业的计算能力,cpk表示集群的计算能力。
[0030]
进一步地,选择获取最小成本值的动作决策作为该组作业的最佳动作决策具体为
根据如下公式获取:
[0031]
最佳动作决策
[0032]
本发明一种基于探索利用分离的联合神经网络的云作业调度系统,包括:
[0033]
分配模块,用于将用户负载解耦成子作业,将子作业分配到多个队列中;
[0034]
状态构建模块,用于将多个队列中的多个作业属性组成状态;
[0035]
动作决策模块,用于将状态作为多个并行神经网络的输入,多个并行神经网络输出对应的动作决策;
[0036]
最佳动作决策模块,用于利用回报函数计算每个动作决策的成本值,选择获取最小成本值的动作决策作为该组作业的最佳动作决策;
[0037]
调度模块,用于根据选择的最佳动作决策将队列中的子作业调度到多个集群中;
[0038]
其中,所述多个并行的神经网络分为探索部分和利用部分,将利用部分的神经网络利用训练集进行训练得到训练后的神经网络;
[0039]
所述将状态作为多个并行神经网络的输入具体是将状态输入训练后的利用部分的神经网络和探索部分的神经网络。
[0040]
进一步地,所述作业属性包括作业所需要的cpu周期数和作业所需要传输的数据量。
[0041]
进一步地,所述动作决策模块具体为:
[0042]
状态其中,n表示队列数,n∈n,m表示每个队列包含的作业数量,m∈m;表示作业t
nm
所需要的cpu周期数,表示作业t
nm
所需要传输的数据量;t表示调度时隙;
[0043]
每个神经网络输出的动作决策表示为:其中表示第x个神经网络参数的函数,a
nmk
={0,1},a
nmk
=0表示队列qn中的作业tm调度到集群cl
uk
中,k表示系统中计算集群的数量,k∈k,即:
[0044][0045]
进一步地,最佳动作决策模块,具体为:
[0046]
回报函数定义为:
[0047]
cost(s,d)=λ
×
td (1-λ)
×
ec
[0048]
其中,s表示作业集,d表示动作决策,λ∈[0,1]表示作业时延在总的优化目标中的权重,(1-λ)表示能耗的优化权重;
[0049]
令d表示为作业集s的所有调度策略,则优化目标表示为:
[0050]
min
d∈d
cost(s,d)
[0051]
s.t.
[0052][0053]
[0054]
c3:1≤n≤n,1≤k≤k
[0055]
其中,表示作业tm被分配到集群cl
uk
中其所能占用的带宽;bw
nk
表示队列qn与集群cl
uk
之间被分配的带宽;表示每个作业的计算能力,cpk表示集群的计算能力;
[0056]
根据如下公式获取最佳动作决策
[0057]
、一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述所述云作业调度方法。
[0058]
与现有技术相比,本发明的有益效果为:
[0059]
本发明将神经网络的分为两部分:探索部分和利用部分,使探索和利用两部分分离,分别执行不同的训练方法,在训练时,只有利用部分的神经网络进行训练,而探索部分不进行训练,以保证模型获得其他调度策略的可能,从而避免陷入局部最优,进而提升优化本发明的作业调度问题。
附图说明
[0060]
图1为本发明中云计算系统的模型图。
[0061]
图2为本发明一种基于探索利用分离的联合神经网络的云作业调度方法的流程图。
[0062]
图3为本发明具体实验中不同队列数量相同集群情况下udl算法改进前后性能比较示意图。
[0063]
图4为本发明具体实验中相同队列数量不同集群情况下udl算法改进前后性能比较示意图。
具体实施方式
[0064]
本发明附图仅用于示例性说明,不能理解为对本发明的限制。为了更好说明以下实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
[0065]
如图1所示,个人用户、研究机构等将更需要执行的作业以批的方式提交到相应的云服务提供商。云服务提供商接收到作业后,将作业输入到由多个训练好的神经网络组成的作业调度器中进行调度。作业调度器根据提交作业的情况生成相应的调度策略,并以此策略将作业调度到相应的计算集群中进行处理。在用户作业提交之前,云服务提供商需要根据训练作业集,以降低能耗和作业完工时间为目标对各个神经网络进行训练。
[0066]
本发明是针对图1所示的系统模型以最小化作业延迟和能源消耗为目标对云计算作业进行调度。
[0067]
实施例1
[0068]
如图1所示,本实施例提供一种基于探索利用分离的联合神经网络的云作业调度方法,包括:
[0069]
s1.将用户负载解耦成子作业,将子作业分配到多个队列中;可以采用作业解耦器对存在依赖关系的用户负载解耦成子作业,然后分配到多个等待队列中,同时确保等待队列中子作业的父作业优先数据传输和执行,以及队列中各作业具有原子性且均能独立运
行。各个等待队列具有相同的存储空间,队列的数量根据实际需要动态调整。
[0070]
数量众多的基础设备组成规模庞大的数据中心,可以按照地理位置将邻近的服务器聚类成计算集群。云系统作业调度是将多个队列中的子作业调度到多个集群中。
[0071]
假设系统中的计算集群的数量为k,表示为{clu1,clu2,

,cluk},k∈k。等待调度到作业队列数量为n,表示为{q1,q2,

,qn},n∈n;每个队列包含的作业数量为m,表示为{t1,t2,

,tm},m∈m。因此,总作业数量为m*n。作业t
nm
表示第n个队列中的第m个作业。
[0072]
s2.将多个队列中的多个作业属性组成状态;作业t
nm
的作业属性包括作业所需要的cpu周期数和作业所需要传输的数据量,用二元组表示,表示作业t
nm
所需要的cpu周期数,表示作业t
nm
所需要传输的数据量。是一个随机变量并服从均匀分布,即其中和分别表示作业数据量的最小值和最大值。另外,假设每个作业所需要的cpu周期与作业的数据量呈线性相关,即:
[0073][0074]
其中,μ表示计算力与数据量的比率cdr,其取值取决于作业的类型,不同类型的作业有不同的比率cdr。
[0075]
s3.将状态作为多个并行神经网络的输入,多个并行神经网络输出对应的动作决策;
[0076]
其中,所述多个并行神经网络采用深度神经网络dnn,所述多个并行的神经网络分为探索部分和利用部分,将利用部分的神经网络利用训练集进行训练得到训练后的神经网络;
[0077]
所述将状态作为多个并行神经网络的输入具体是将状态输入训练后的利用部分的神经网络和探索部分的神经网络。
[0078]
将多个队列中的多个作业属性组成状态s
t
,状态其中,n表示队列数,n∈n,m表示每个队列包含的作业数量,m∈m;t表示调度时隙;
[0079]
状态s
t
作为多个并行深度神经网络的输入,每个深度神经网络dnn输出不同的动作决策,每个深度神经网络dnn输出的动作决策表示为:其中表示第x个神经网络参数的函数,动作决策是一串二进制序列,表示为a
nmk
={0,1},a
nmk
=1表示队列qn中的作业tm调度到集群cluk中,k表示系统中计算集群的数量,1≤n≤n,1≤m≤m,1≤k≤k,即:
[0080][0081]
s4.利用回报函数计算每个动作决策的成本值,选择获取最小成本值的动作决策作为该组作业的最佳动作决策;
[0082]
s5.根据选择的最佳动作决策将队列中的子作业调度到多个集群中。
[0083]
具体实施过程中,首先构建通信模型和计算模型,具体地:
[0084]
(1)通信模型
[0085]
集群cluk的属性用三元组表示,其中crk表示集群的计算能力,即cpu的周期数,表示集群的通信功耗,表示集群的计算功耗。
[0086]
队列与集群之间的通信带宽表示为{bw
12
,

,bw
nk
},bw
nk
表示队列qn与集群cluk之间被分配到带宽。
[0087]
根据a
nmk
地定义可知,在调度时隙t,从队列qn中分配给集群cluk的作业数量为:
[0088]ank
=σ
1≤m≤manmk
[0089]
通信模型包含传输作业数据所需要的传输时间和能耗。当同个队列中有多个作业同时调度到同一集群时,采用平均分配原则将该队列到该机器的带宽分配给这些作业。因此,如果作业tm被分配到集群cluk,则其所能占用的带宽为:
[0090][0091]
通信延迟是上传作业数据到服务器所消耗的时间,具体为:
[0092][0093]
通信能耗是作业传输过程中所消耗的能源,具体为:
[0094][0095]
从而,队列qn中所有作业的通新能源消耗为:
[0096][0097]
(2)计算模型
[0098]
计算模型包含作业的计算延迟和计算能耗。采用平均分配原则,将某集群的计算能力平均分给调度到该集群的所有作业。类似的,调度到集群cluk的作业数量为:
[0099][0100]
从而,每个作业获得计算能力为:
[0101][0102]
计算延迟是作业完成计算所消耗的时间,具体为:
[0103][0104]
计算能耗即是作业计算过程中所消耗的能源,具体为:
[0105][0106]
队列qn中所有作业的计算能源消耗为:
[0107][0108]
(3)优化目标
[0109]
在某个调度时隙t,被调度的作业集在集群中被并行执行,因此,该批作业所需要的总时延为:
[0110][0111]
执行该批作业的总能耗为每个作业的能耗之和,即:
[0112][0113]
具体实现过程中,本发明的优化目标是最小化作业延迟与能源消耗,这是一个多目标优化问题,给每个目标赋予一个权重因子,以表征其在总优化目标中的偏重。假设作业集s采取的调度策略为d,则系统的回报函数定义如下:
[0114]
cost(s,d)=λ
×
td (1-λ)
×
ec
[0115]
其中,s表示作业集,λ∈[0,1]表示作业时延在总的优化目标中的权重,(1-λ)表示能耗的优化权重;λ值越大,说明时延在总优化目标中所占比重就越大,能耗则越小。如果λ=0,说明优化目标只考虑能耗因素,如果λ=1则说明优化目标只考虑时延因素。
[0116]
系统的目标是获得最优的调度策略,即最小化作业延迟与能源消耗。令d表示为作业集s的所有调度策略,则优化目标表示为:
[0117]
min
d∈d
cost(s,d)
[0118]
s.t.
[0119][0120][0121]
c3:1≤n≤n,1≤k≤k
[0122]
选择获取最小成本值的动作决策作为该组作业的最佳动作决策具体为根据如下公式获取:
[0123]
最佳动作决策
[0124]
在具体实施过程中,多个并行深度神经网络的训练过程中可以采用深度强化学习的经验回放机制,多个并行深度神经网络所生成的样本存储到同一个经验样本池中,作为公用训练样本集供各个深度神经网络进行训练,从而加大训练样本的规模以及多样性。另外,还周期性地从样本池中随机抽取小批量样本进行网络模型训练,指导多agent探索最优调度策略。这样不仅提高了agent对最优策略的探索能力,而且提高了训练样本的利用率。具体地,将当前作业集状态空间s
t
和最佳动作决策作为样本存储到经验池中,待经验池中的样本数达到预期阈值后,周期性地从中随机抽取minibatch数量的样本,进行模型训练,目标是最小化期望回报值,训练过程可以使用梯度下降算法最小化交叉熵损失来优化各dnn的参数值
[0125][0126]
实施例2
[0127]
本发明还提供一种基于探索利用分离的联合神经网络的云作业调度系统,具体包括:
[0128]
分配模块,用于将用户负载解耦成子作业,将子作业分配到多个队列中;具体可以
采用作业解耦器对存在依赖关系的用户负载解耦成子作业,然后分配到多个等待队列中,同时确保等待队列中子作业的父作业优先数据传输和执行,以及队列中各作业具有原子性且均能独立运行。各个等待队列具有相同的存储空间,队列的数量根据实际需要动态调整。
[0129]
数量众多的基础设备组成规模庞大的数据中心,可以按照地理位置将邻近的服务器聚类成计算集群。云系统作业调度是将多个队列中的子作业调度到多个集群中。
[0130]
假设系统中的计算集群的数量为k,表示为{clu1,clu2,

,cluk},k∈k。等待调度到作业队列数量为n,表示为{q1,q2,

,qn},n∈n;每个队列包含的作业数量为m,表示为{t1,t2,

,tm},m∈m。因此,总作业数量为m*n。作业t
nm
表示第n个队列中的第m个作业。
[0131]
状态构建模块,用于将多个队列中的多个作业属性组成状态;作业t
nm
的作业属性包括作业所需要的cpu周期数和作业所需要传输的数据量,用二元组表示,表示作业t
nm
所需要的cpu周期数,表示作业t
nm
所需要传输的数据量。是一个随机变量并服从均匀分布,即其中和分别表示作业数据量的最小值和最大值。另外,假设每个作业所需要的cpu周期与作业的数据量呈线性相关,即:
[0132][0133]
其中,μ表示计算力与数据量的比率cdr,其取值取决于作业的类型,不同类型的作业有不同的比率cdr。
[0134]
动作决策模块,用于将状态作为多个并行神经网络的输入,多个并行神经网络输出对应的动作决策;
[0135]
其中,所述多个并行神经网络采用深度神经网络dnn,所述多个并行的神经网络分为探索部分和利用部分,将利用部分的神经网络利用训练集进行训练得到训练后的神经网络;
[0136]
所述将状态作为多个并行神经网络的输入具体是将状态输入训练后的利用部分的神经网络和探索部分的神经网络。
[0137]
将多个队列中的多个作业属性组成状态s
t
,状态其中,n表示队列数,n∈n,m表示每个队列包含的作业数量,m∈m;t表示调度时隙;
[0138]
状态s
t
作为多个并行深度神经网络的输入,每个深度神经网络dnn输出不同的动作决策,每个深度神经网络dnn输出的动作决策表示为:其中表示第x个神经网络参数的函数,动作决策是一串二进制序列,表示为a
nmk
={0,1},a
nmk
=1表示队列qn中的作业tm调度到集群cluk中,k表示系统中计算集群的数量,1≤n≤n,1≤m≤m,1≤k≤k,即:
[0139][0140]
最佳动作决策模块,用于利用回报函数计算每个动作决策的成本值,选择获取最小成本值的动作决策作为该组作业的最佳动作决策;
[0141]
最佳动作决策模块需要构建通信模型和计算模型,具体为:
[0142]
(1)通信模型
[0143]
集群cluk的属性用三元组表示,其中crk表示集群的计算能力,即cpu的周期数,表示集群的通信功耗,表示集群的计算功耗。
[0144]
队列与集群之间的通信带宽表示为{bw
12
,

,bw
nk
},bw
nk
表示队列qn与集群cluk之间被分配到带宽。
[0145]
根据a
nmk
地定义可知,在调度时隙t,从队列qn中分配给集群cluk的作业数量为:
[0146]ank
=σ
1≤m≤manmk
[0147]
通信模型包含传输作业数据所需要的传输时间和能耗。当同个队列中有多个作业同时调度到同一集群时,采用平均分配原则将该队列到该机器的带宽分配给这些作业。因此,如果作业tm被分配到集群cluk,则其所能占用的带宽为:
[0148][0149]
通信延迟是上传作业数据到服务器所消耗的时间,具体为:
[0150][0151]
通信能耗是作业传输过程中所消耗的能源,具体为:
[0152][0153]
从而,队列qn中所有作业的通新能源消耗为:
[0154][0155]
(2)计算模型
[0156]
计算模型包含作业的计算延迟和计算能耗。采用平均分配原则,将某集群的计算能力平均分给调度到该集群的所有作业。类似的,调度到集群cluk的作业数量为:
[0157][0158]
从而,每个作业获得计算能力为:
[0159][0160]
计算延迟是作业完成计算所消耗的时间,具体为:
[0161][0162]
计算能耗即是作业计算过程中所消耗的能源,具体为:
[0163][0164]
队列qn中所有作业的计算能源消耗为:
[0165][0166]
(3)优化目标
[0167]
在某个调度时隙t,被调度的作业集在集群中被并行执行,因此,该批作业所需要
的总时延为:
[0168][0169]
执行该批作业的总能耗为每个作业的能耗之和,即:
[0170][0171]
具体实现过程中,本发明的优化目标是最小化作业延迟与能源消耗,这是一个多目标优化问题,给每个目标赋予一个权重因子,以表征其在总优化目标中的偏重。假设作业集s采取的调度策略为d,则系统的回报函数定义如下:
[0172]
cost(s,d)=λ
×
td (1-λ)
×
ec
[0173]
其中,s表示作业集,λ∈[0,1]表示作业时延在总的优化目标中的权重,(1-λ)表示能耗的优化权重;λ值越大,说明时延在总优化目标中所占比重就越大,能耗则越小。如果λ=0,说明优化目标只考虑能耗因素,如果λ=1则说明优化目标只考虑时延因素。
[0174]
系统的目标是获得最优的调度策略,即最小化作业延迟与能源消耗。令d表示为作业集s的所有调度策略,则优化目标表示为:
[0175]
min
d∈d
cost(s,d)
[0176]
s.t.
[0177][0178][0179]
c3:1≤n≤n,1≤k≤k
[0180]
选择获取最小成本值的动作决策作为该组作业的最佳动作决策具体为根据如下公式获取:
[0181]
最佳动作决策
[0182]
调度模块,用于根据选择的最佳动作决策将队列中的子作业调度到多个集群中;
[0183]
其中,所述多个并行的神经网络分为探索部分和利用部分,将利用部分的神经网络利用训练集进行训练得到训练后的神经网络;
[0184]
所述将状态作为多个并行神经网络的输入具体是将状态输入训练后的利用部分的神经网络和探索部分的神经网络。
[0185]
进一步地,所述作业属性包括作业所需要的cpu周期数和作业所需要传输的数据量。
[0186]
进一步地,所述动作决策模块具体为:
[0187]
状态其中,n表示队列数,n∈n,m表示每个队列包含的作业数量,m∈m;表示作业t
nm
所需要的cpu周期数,表示作业t
nm
所需要传输的数据量;t表示调度时隙;
[0188]
每个神经网络输出的动作决策表示为:其中表示第x个神经网络参数的函数,a
nmk
={0,1},a
nmk
=0表示队列qn中的作业tm调
度到集群cluk中,k表示系统中计算集群的数量,k∈k,即:
[0189][0190]
进一步地,最佳动作决策模块,具体为:
[0191]
回报函数定义为:
[0192]
cost(s,d)=λ
×
td (1-λ)
×
ec
[0193]
其中,s表示作业集,d表示动作决策,λ∈[0,1]表示作业时延在总的优化目标中的权重,(1-λ)表示能耗的优化权重;
[0194]
令d表示为作业集s的所有调度策略,则优化目标表示为:
[0195]
min
d∈d
cost(s,d)
[0196]
s.t.
[0197][0198][0199]
c3:1≤n≤n,1≤k≤k
[0200]
其中,表示作业tm被分配到集群cluk中其所能占用的带宽;bw
nk
表示队列qn与集群cluk之间被分配的带宽;表示每个作业的计算能力,cpk表示集群的计算能力;
[0201]
根据如下公式获取最佳动作决策
[0202]
在具体实施过程中,多个并行深度神经网络的训练过程中可以采用深度强化学习的经验回放机制,多个并行深度神经网络所生成的样本存储到同一个经验样本池中,作为公用训练样本集供各个深度神经网络进行训练,从而加大训练样本的规模以及多样性。另外,还周期性地从样本池中随机抽取小批量样本进行网络模型训练,指导多agent探索最优调度策略。这样不仅提高了agent对最优策略的探索能力,而且提高了训练样本的利用率。具体地,将当前作业集状态空间s
t
和最佳动作决策作为样本存储到经验池中,待经验池中的样本数达到预期阈值后,周期性地从中随机抽取minibatch数量的样本,进行模型训练,目标是最小化期望回报值,训练过程可以使用梯度下降算法最小化交叉熵损失来优化各dnn的参数值
[0203][0204]
在具体实施过程中,本技术将基于多个深度神经网络的学习模型称为联合式深度学习(united deep learning,udl)模型,基于udl模型的作业调度算法称为udl算法。实际应用中,应用udl算法时,其中所述多个并行的神经网络全部进行训练,该算法称为基础udl算法,而算法执行时所述多个并行的神经网络分为探索部分和利用部分,将利用部分的神经网络利用训练集进行训练得到训练后的神经网络,该算法称为改进后的udl算法。本技术针对基础udl算法和改进后的udl算法进行实验。在相同集群下不同作业队列数量情况下,udl算法改进前后的比较结果如图3所示。在实验中,集群数量固定为5,λ取值0.9,队列数量
从3逐渐增大到12。从图3中可以看出,随着作业队列数的增长,系统负载随之增加,算法模型的回报值均呈上升趋势。当作业队列数量较少时,算法的优化效果不是很明显。但是,当作业队列数达到5个及以上后,改进后的udl的优化效果较改进前更好。因为计算集群数量是固定的,当作业队列数量增多时,队列之间对有限计算资源的竞争将更为激烈,这种情况下,改进后的udl体现出比改进前更好的作业调度性能。
[0205]
此外,在相同作业队列数量不同集群情况下,udl算法改进前后的比较结果如图4所示。在实验中,作业队列数量固定为10,λ取值0.9,集群数量从3逐渐增大到12。从图4中可以看出,随着集群数的增长,系统可用资源增加,算法的回报值呈下降趋势。与上一实验类似,在作业队列数量固定的情况下,当集群数越少时,意味作业对计算资源的竞争将更为激烈,这时改进后udl的表现要比改进前更为出色。
[0206]
基于上述实验数据可以看出,基于udl算法,对神经网络的训练方法进行改进,使其多个并行的神经网络分为探索部分和利用部分,将利用部分的神经网络利用训练集进行训练得到训练后的神经网络,训练后的神经网络和未训练的神经网络来进行目标优化,可以获得更好的调度结果。
[0207]
显然,本发明的上述实施例仅仅是为清楚地说明本发明技术方案所作的举例,而并非是对本发明的具体实施方式的限定。凡在本发明权利要求书的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献