CN111638958B - 云主机负载处理方法、装置、控制设备及存储介质 - Google Patents
云主机负载处理方法、装置、控制设备及存储介质 Download PDFInfo
- Publication number
- CN111638958B CN111638958B CN202010487858.0A CN202010487858A CN111638958B CN 111638958 B CN111638958 B CN 111638958B CN 202010487858 A CN202010487858 A CN 202010487858A CN 111638958 B CN111638958 B CN 111638958B
- Authority
- CN
- China
- Prior art keywords
- load
- cloud host
- encoder
- hidden layer
- load data
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 23
- 230000015654 memory Effects 0.000 claims abstract description 54
- 238000012545 processing Methods 0.000 claims abstract description 42
- 230000006403 short-term memory Effects 0.000 claims abstract description 33
- 230000007787 long-term memory Effects 0.000 claims abstract description 31
- 230000007246 mechanism Effects 0.000 claims abstract description 31
- 238000000034 method Methods 0.000 claims abstract description 24
- 230000005012 migration Effects 0.000 claims abstract description 20
- 238000013508 migration Methods 0.000 claims abstract description 20
- 239000013598 vector Substances 0.000 claims description 36
- 238000012549 training Methods 0.000 claims description 23
- 230000001131 transforming effect Effects 0.000 claims description 7
- 238000012795 verification Methods 0.000 claims description 6
- 230000002123 temporal effect Effects 0.000 claims description 2
- 238000012360 testing method Methods 0.000 claims 2
- 230000000694 effects Effects 0.000 abstract description 8
- 239000010410 layer Substances 0.000 description 116
- 230000006870 function Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000005291 magnetic effect Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 239000002355 dual-layer Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 238000010219 correlation analysis Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation 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
- G06F9/505—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 considering the load
-
- 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/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
-
- 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
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (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)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供的云主机负载处理方法、装置、控制设备及存储介质,通过获取云主机的历史负载数据,所述历史负载数据包括至少一个云主机对应的CPU负载序列、内存负载序列和磁盘负载序列中的至少两种负载序列;将所述历史负载数据输入预先训练的基于双层注意力机制的长短期记忆网络编码‑解码模型,输出所述至少一个云主机的负载预测值;根据所述至少一个云主机的负载预测值,对所述至少一个云主机进行负载迁移处理;即本发明示例通过获取CPU负载、内存负载、磁盘负载等更多维度的负载特征,对云主机进行负载预测,提高了预测精度,进而提高了云主机负载迁移的效果。
Description
技术领域
本发明涉及云计算领域,尤其涉及一种云主机负载处理方法、装置、控制设备及存储介质。
背景技术
云主机作为数据存储、处理和交换的核心,已经成为云计算时代最重要的基础设施之一,其中,云主机负载的准确预测对于实现资源的智能管理以及云系统的可靠高效运行至关重要。
现有技术中,常见的云主机负载的预测模型有APIMA(整合移动平均自回归模型),VAR(向量自回归模型),GBRI(梯度提升回归树)。LSTM(长短期记忆网络)等,这些预测模型均可直接用于云主机负载预测,然后根据预测结果对云主机的资源进行相应调度。
但是,上述预测模型中仅采用单个负载特征进行预测,负载预测精度低,进而导致根据预测结果对云主机资源调度效果不佳。
发明内容
针对上述问题,本发明提供了一种云主机负载处理方法、装置、控制设备及存储介质。
第一方面,本发明提供了一种云主机负载处理方法,包括:获取云主机的历史负载数据,所述历史负载数据包括至少一个云主机对应的中央处理器CPU负载序列、内存负载序列和磁盘负载序列中的至少两种负载序列;将所述历史负载数据输入预先训练的基于双层注意力机制的编解码模型,输出所述至少一个云主机的负载预测值;根据所述至少一个云主机的负载预测值,对所述至少一个云主机进行负载迁移处理。
在其他可选的示例中,所述将所述历史负载数据输入预先训练的基于双层注意力机制的长短期记忆网络编码-解码模型,输出所述至少一个云主机的负载预测值,包括:将所述历史负载数据输入所述模型中的特征注意力层,得到加权后的历史负载数据;将所述加权后的历史负载数据输入所述模型中的长短期记忆网络编码器,得到编码器隐藏层状态;将所述编码器隐藏层状态输入所述模型中的时间注意力层,得到加权后的编码器隐藏层状态;对所述加权后的编码器隐藏层状态进行求和,得到上下文向量;将所述上下文向量输入所述模型中的长短期记忆网络解码器,得到解码器隐藏层状态;将所述解码器隐藏层状态和所述上下文向量进行线性变换,得到所述至少一个云主机的负载预测值。
在其他可选的示例中,所述将所述历史负载数据输入所述模型中的特征注意力层,得到加权后的历史负载数据,包括:根据上一时刻编码器隐藏层状态、上一时刻编码器细胞状态以及所述历史负载数据,确定各云主机的各负载序列在当前时刻的特征影响权重;对所述特征影响权重进行归一化处理,得到归一化特征注意力权重;根据所述归一化特征注意力权重和所述历史负载数据,得到所述加权后的历史负载数据。
在其他可选的示例中,所述将所述编码器隐藏层状态输入所述模型中的时间注意力层,得到加权后的编码器隐藏层状态,包括:根据上一时刻解码器隐藏层状态、上一时刻解码器细胞状态以及所述编码器隐藏层状态,确定不同时刻的历史负载数据在当前时刻的时间影响权重;对所述时间影响权重进行归一化处理,得到归一化时间注意力权重;根据所述归一化时间注意力权重和所述编码器隐藏层状态,得到所述加权后的编码器隐藏层状态。
在其他可选的示例中,所述获取云主机的历史负载数据之前,还包括:获取云主机的负载数据训练集,所述负载数据集包括至少一个云主机对应的CPU负载序列、内存负载序列和磁盘负载序列中的至少两种负载序列;利用所述负载数据训练集对待训练的双层注意力机制的长短期记忆网络编码-解码模型进行训练,获得所述预先训练的基于双层注意力机制的长短期记忆网络编码-解码模型。
第二方面,本发明提供了一种云主机负载处理装置,包括:获取模块,用于获取云主机的历史负载数据,所述历史负载数据包括至少一个云主机对应的中央处理器CPU负载序列、内存负载序列和磁盘负载序列中的至少两种负载序列;预测模块,用于将所述历史负载数据输入预先训练的基于双层注意力机制的长短期记忆网络编码-解码模型,输出所述至少一个云主机的负载预测值;处理模块,用于根据所述至少一个云主机的负载预测值,对所述至少一个云主机进行负载迁移处理。
在其他可选的示例中,所述预测模块,具体用于:将所述历史负载数据输入所述模型中的特征注意力层,得到加权后的历史负载数据;将所述加权后的历史负载数据输入所述模型中的长短期记忆网络编码器,得到编码器隐藏层状态;将所述编码器隐藏层状态输入所述模型中的时间注意力层,得到加权后的编码器隐藏层状态;对所述加权后的编码器隐藏层状态进行求和,得到上下文向量;将所述上下文向量输入所述模型中的长短期记忆网络解码器,得到解码器隐藏层状态;将所述解码器隐藏层状态和所述上下文向量进行线性变换,得到所述至少一个云主机的负载预测值。
在其他可选的示例中,所述预测模块,具体用于:根据上一时刻编码器隐藏层状态、上一时刻编码器细胞状态以及所述历史负载数据,确定各云主机的各负载序列在当前时刻的特征影响权重;对所述特征影响权重进行归一化处理,得到归一化特征注意力权重;根据所述归一化特征注意力权重和所述历史负载数据,得到所述加权后的历史负载数据。
在其他可选的示例中,所述预测模块,具体用于:根据上一时刻解码器隐藏层状态、上一时刻解码器细胞状态以及所述编码器隐藏层状态,确定不同时刻的历史负载数据在当前时刻的时间影响权重;对所述时间影响权重进行归一化处理,得到归一化时间注意力权重;根据所述归一化时间注意力权重和所述编码器隐藏层状态,得到所述加权后的编码器隐藏层状态。
第三方面,本发明提供了一种控制设备,包括:至少一个处理器和存储器;所述存储器存储计算机执行指令;所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如前任一项所述的云主机负载处理方法。
第四方面,本发明提供一种可读存储介质,所述可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如前任一项所述的云主机负载处理方法。
本发明提供的云主机负载处理方法、装置、控制设备及存储介质,通过获取云主机的历史负载数据,所述历史负载数据包括至少一个云主机对应的CPU负载序列、内存负载序列和磁盘负载序列中的至少两种负载序列;将所述历史负载数据输入预先训练的基于双层注意力机制的长短期记忆网络编码-解码模型,输出所述至少一个云主机的负载预测值;根据所述至少一个云主机的负载预测值,对所述至少一个云主机进行负载迁移处理;即本发明示例通过获取CPU负载、内存负载、磁盘负载等更多维度的负载特征,对云主机进行负载预测,提高了预测精度,进而提高了云主机负载迁移的效果。
附图说明
图1为本发明所提供的一种LSTM Encoder-Decoder模型结构示意图;
图2为本发明所提供的一种基于注意力机制的LSTM Encoder-Decoder模型结构示意图;
图3为本发明提供的一种云主机负载处理方法的流程示意图;
图4为本发明提供的另一种云主机负载处理方法的流程示意图;
图5为本发明提供的一种云主机负载处理流程框图;
图6为本发明提供的一种云主机负载处理装置的结构示意图;
图7为本发明提供的一种控制设备的硬件结构示意图。
具体示例
为使本发明示例的目的、技术方案和优点更加清楚,下面将结合本发明示例中的附图,对本发明示例中的技术方案进行清楚、完整地描述。
首先对本发明所涉及的名词进行解释:
长短期记忆网络编码-解码模型(Long Short-Term Memory Encoder-Decoder,简称LSTM Encoder-Decoder):是一个循环神经网络,旨在解决序列到序列的预测问题。图1为本发明所提供的一种LSTM Encoder-Decoder模型结构示意图,如图1所示,编码器将一个不定长的输入序列(x1,x2,x3,x4)转化成一个固定长度的向量C,该向量C中包含了输入序列的信息;然后解码器根据这个固定长度的向量C得到输出序列(y1,y2,y3)。
注意力机制:源于对人类视觉的研究。在认知科学中,由于信息处理的瓶颈,人类会选择性地关注所有信息的一部分,同时忽略其他可见的信息。当注意力机制应用于长短期记忆网络编码-解码模型,图2为本发明所提供的一种基于注意力机制的LSTM Encoder-Decoder模型结构示意图,如图2所示,在该模型中,就不再要求编码器将所有输入序列都编码进一个固定长度的向量C之中,相反,此时编码器需要将输入编码成一个向量的序列,而在解码的时候,每一步都会选择性的从向量序列中挑选一个子集进行进一步处理。这样,在产生每一个输出的时候,都能够做到充分利用输入序列携带的信息。
云主机作为数据存储、处理和交换的核心,已经成为云计算时代最重要的基础设施之一,然而,大多数云主机存在负载不均衡、总体资源利用率低、资源分配与配置效率低、服务水平协议(SLA)违反以及能耗损失严重等问题。对此,资源调度、虚拟机迁移、服务器的动态整合等资源管理技术成为提高云服务的有效途径。其中,云主机负载的准确预测对于实现资源的智能管理以及云系统的可靠高效运行至关重要。
现有技术中,常见的云主机负载的预测模型有APIMA(整合移动平均自回归模型),VAR(向量自回归模型),GBRI(梯度提升回归树)。LSTM(长短期记忆网络)等,这些预测模型均可直接用于云主机负载预测,但这些预测模型均采用单变量时序预测,忽略了多个负载特征变量之间的依赖关系,比如CPU负载值的变化可能会受到内存、磁盘等因素的影响,这表明单个负载变量的预测不仅依赖于其过去的趋势,还依赖于其它负载特征。因此,现有技术对云主机负载的预测精度低,进而导致无法对云主机负载进行准确迁移。
针对上述问题,本发明的技术构思在于,通过采集多维度的负载特征,对云主机负载进行预测,提高预测精度,进而提高云主机负载迁移的效果。
第一方面,本发明示例提供了一种云主机负载处理方法,图3为本发明提供的一种云主机负载处理方法的流程示意图。
如图3所示,该云主机负载处理方法包括:
步骤101、获取云主机的历史负载数据,所述历史负载数据包括至少一个云主机对应的CPU负载序列、内存负载序列和磁盘负载序列中的至少两种负载序列。
具体来说,通过对云主机的CPU负载数据、内存负载数据和磁盘负载数据进行相关性分析,可以看到这三个负载特征之间具有很强的相关性,例如当内存负载急剧上升时,将可能导致CPU负载也升高。因此,在本示例中,当需要预测云主机的负载时,可以将CPU负载、内存负载和磁盘负载任意两个或全部负载特征的历史数据一起输入,从而可以充分利用各负载特征之间的相关性来提高云主机负载预测的精确度。
步骤102、将所述历史负载数据输入预先训练的基于双层注意力机制的长短期记忆网络编码-解码模型,输出所述至少一个云主机的负载预测值。
具体来说,通过双层注意力机制,可以获取不同负载特征、不同时刻的负载特征数据对云主机负载预测结果的影响程度,从而提高对各云主机的负载预测结果的精确度。
步骤103、根据所述至少一个云主机的负载预测值,对所述至少一个云主机进行负载迁移处理。
具体来说,根据各云主机的负载预测值,可以确定各云主机在未来一段时间内的负载情况,当云主机的负载值达到预设阈值时,可以控制该云主机上的部分任务进程迁移到其他云主机上,而负载值比较低的云主机可以接收其他云主机迁移的任务进程,实现负载均衡。
作为可选示例,在步骤101之前,所述方法还包括:获取云主机的负载数据训练集,所述负载数据集包括至少一个云主机对应的CPU负载序列、内存负载序列和磁盘负载序列中的至少两种负载序列;利用所述负载数据训练集对待训练的双层注意力机制的长短期记忆网络编码-解码模型进行训练,获得所述预先训练的基于双层注意力机制的长短期记忆网络编码-解码模型。
具体来说,可以获取较长一段时间内的云主机的历史负载数据作为训练集,对待训练的双层注意力机制的长短期记忆网络编码-解码模型进行训练,获得训练好的基于双层注意力机制的长短期记忆网络编码-解码模型。优选的,可以将较长一段时间内的云主机的历史负载数据划分为训练集和验证集,采用反向传播算法训练网络,优化函数选用Adam算法,由于是回归问题,用云主机的负载预测结果与实际结果的均方误差(MSE)作为损失函数,在验证集上测试模型的预测精度,当预测精度达到预设阈值后,确定模型为训练好的基于双层注意力机制的长短期记忆网络编码-解码模型。
本发明示例提供的云主机负载处理方法,通过获取云主机的历史负载数据,所述历史负载数据包括至少一个云主机对应的CPU负载序列、内存负载序列和磁盘负载序列中的至少两种负载序列;将所述历史负载数据输入预先训练的基于双层注意力机制的长短期记忆网络编码-解码模型,输出所述至少一个云主机的负载预测值;根据所述至少一个云主机的负载预测值,对所述至少一个云主机进行负载迁移处理;即本发明示例通过获取CPU负载、内存负载、磁盘负载等更多维度的负载特征,对云主机进行负载预测,提高了预测精度,进而提高了云主机负载迁移的效果。
结合前述的实现方式,图4为本发明提供的另一种云主机负载处理方法的流程示意图,如图4所示,该云主机负载处理方法包括:
步骤201、获取云主机的历史负载数据,所述历史负载数据包括至少一个云主机对应的CPU负载序列、内存负载序列和磁盘负载序列中的至少两种负载序列。
步骤202、将所述历史负载数据输入所述模型中的特征注意力层,得到加权后的历史负载数据。
具体来说,将各负载序列输入到特征注意力层中,可以获得各负载特征对预测结果的影响权重,进而根据各影响权重和各负载序列可以获得加权后的负载序列,从而实现了根据注意力机制捕获多个负载序列之间的动态关系。
作为可选示例,步骤202包括:根据上一时刻编码器隐藏层状态、上一时刻编码器细胞状态以及所述历史负载数据,确定各云主机的各负载序列在当前时刻的特征影响权重;对所述特征影响权重进行归一化处理,得到归一化特征注意力权重;根据所述归一化特征注意力权重和所述历史负载数据,得到所述加权后的历史负载数据。
具体来说,利用LSTM编码器第t-1时刻输出的隐藏层状态、LSTM编码器第t-1时刻输出的细胞状态,以及各负载序列,可以确定不同负载序列对第第t时刻的编码器输出的隐藏层状态的特征影响权重,其中t=1,2…T,即可以获得各负载特征在各时刻的特征影响权重;然后采用softmax函数对特征影响权重进行归一化处理,获得归一化的特征注意力权重;最后将归一化的特征注意力权重与各负载序列相乘,从而获得加权后的历史负载数据。
步骤203、将所述加权后的历史负载数据输入所述模型中的长短期记忆网络编码器,得到编码器隐藏层状态。
步骤204、将所述编码器隐藏层状态输入所述模型中的时间注意力层,得到加权后的编码器隐藏层状态。
具体来说,将编码器隐藏层状态输入时间注意力层,可以获得不同时刻的编码器隐藏层状态对预测结果的时间影响权重,然后根据时间影响权重和编码器隐藏层状态,获得加权后的编码器隐藏层状态,从而实现了根据注意力机制捕获时间相关性。
作为可选示例,步骤204包括:根据上一时刻解码器隐藏层状态、上一时刻解码器细胞状态以及所述编码器隐藏层状态,确定不同时刻的历史负载数据在当前时刻的时间影响权重;对所述时间影响权重进行归一化处理,得到归一化时间注意力权重;根据所述归一化时间注意力权重和所述编码器隐藏层状态,得到所述加权后的编码器隐藏层状态。
具体来说,利用LSTM解码器第t-1时刻输出的隐藏层状态、LSTM解码器第t-1时刻输出的细胞状态,以及编码器隐藏层状态,确定不同时刻的编码器隐藏层状态在第t时刻的时间影响权重,其中t=1,2…T,从而获得不同时刻的负载对解码器输出的时间影响权重;然后采用softmax函数对时间影响权重进行归一化处理,获得归一化时间注意力权重;最后将归一化时间注意力权重与编码器隐藏层状态相乘,获得加权后的编码器隐藏层状态。
步骤205、对所述加权后的编码器隐藏层状态进行求和,得到上下文向量。
步骤206、将所述上下文向量输入所述模型中的长短期记忆网络解码器,得到解码器隐藏层状态。
步骤207、将所述解码器隐藏层状态和所述上下文向量进行线性变换,得到所述至少一个云主机的负载预测值。
步骤208、根据所述至少一个云主机的负载预测值,对所述至少一个云主机进行负载迁移处理。
本示例中的步骤201、步骤208分别与前述示例中的步骤101、步骤103的实现方式类似,在此不进行赘述。
与前述示例不同的是,本示例进一步限定了云主机负载预测的具体实现方式。在本实施方式中,将所述历史负载数据输入所述模型中的特征注意力层,得到加权后的历史负载数据;将所述加权后的历史负载数据输入所述模型中的长短期记忆网络编码器,得到编码器隐藏层状态;将所述编码器隐藏层状态输入所述模型中的时间注意力层,得到加权后的编码器隐藏层状态;对所述加权后的编码器隐藏层状态进行求和,得到上下文向量;将所述上下文向量输入所述模型中的长短期记忆网络解码器,得到解码器隐藏层状态;将所述解码器隐藏层状态和所述上下文向量进行线性变换,得到所述至少一个云主机的负载预测值。
举例来说,假设需要对某集群中的各云主机进行资源调度。图5为本发明提供的一种云主机负载处理流程框图,如图5所示,首先获取集群中所有云主机的历史负载数据如下:
X=(x1,x2,…xT)
其中,T表示负载序列的长度;xi表示第i时刻的云主机负载,i=1,2,…T,xi∈Rm*n,m为集群中云主机数量,n为负载序列的数量。
以m=n=3为例,则
其中,j表示第j个云主机,j=1,2,…m;k表示第k种负载序列,k=1,2,…n;表示第j个云主机的第k种负载序列在第i时刻的负载值。
将历史负载数据X输入特征注意力层中,计算负载特征在第t时刻的得分,即在第t时刻的特征注意权重,公式如下:
其中,用于评估第j个云主机的第k个负载序列对t时刻预测输出的影响;ht-1和st-1分别为编码器LSTM网络中t-1时刻的隐藏层状态和细胞状态,Ve∈RT、We∈RT×2m′和Ue∈RT*T均为需要学习的参数,m′是LSTM隐藏层单元个数。[ht-1;st-1]表示编码器LSTM网络中t-1时刻的隐藏层状态和细胞状态的级联。
然后根据各云主机的各负载序列在t时刻的得分,确定各云主机的各负载序列在t时刻的归一化特征注意力权重。具体的,采用softmax函数对得分进行归一化处理,获得第j个云主机的第k个负载序列在t时刻的特征注意力权重/>公式如下:
然后根据各云主机的各负载序列在t时刻的归一化特征注意力权重以及在t时刻的负载值,确定加权后的负载序列,如下:
其中,表示第j个云主机的第k种负载序列中t时刻的加权后的负载值。
将所述加权后的负载序列输入到LSTM编码器中,获得第t时刻的编码器隐藏层状态为:
需要说明的是,这里选择LSTM作为编码器非线性激活函数f1。
然后将各时刻的的编码器隐藏层状态输入时间注意力层,确定第j个云主机的第i个时刻的负载值对于第t时刻预测输出的时间影响权重和归一化时间注意力权重/>
其中,Ws和Us为需要学习的权重参数,h′t-1和s′t-1分别为LSTM解码器输出的隐藏层状态和细胞状态。
然后,对加权后的编码器隐藏层状态进行求和,得到上下文向量ct:
然后根据解码器的输入是上一个时刻的目标序列yt-1、隐藏层状态h′t-1以及上下文向量ct-1,即:
h′t=f2(yt-1,ct-1,h′t-1)
这里同样选取LSTM作为解码器非线性激活函数f2。
最后建立当前输入与所有时刻的输入以及之前时刻的输出之间的关系,即:
通过之前解码器的隐藏层状态h′T和上下文向量ct使用一个全连接层对做回归,即:
其中,[h′T;cT∈Rp+m]是解码器隐藏层状态与上下文向量的级联,vy∈Rp是权重,bv∈R是偏差,p是解码器隐藏层单元个数。
最后在获取到各云主机的负载预测结果后,根据负载预测结果,进行云主机负载迁移处理。
本发明示例提供的云主机负载处理方法,通过获取云主机的历史负载数据,所述历史负载数据包括至少一个云主机对应的CPU负载序列、内存负载序列和磁盘负载序列中的至少两种负载序列;将所述历史负载数据输入所述模型中的特征注意力层,得到加权后的历史负载数据;将所述加权后的历史负载数据输入所述模型中的长短期记忆网络编码器,得到编码器隐藏层状态;将所述编码器隐藏层状态输入所述模型中的时间注意力层,得到加权后的编码器隐藏层状态;对所述加权后的编码器隐藏层状态进行求和,得到上下文向量;将所述上下文向量输入所述模型中的长短期记忆网络解码器,得到解码器隐藏层状态;将所述解码器隐藏层状态和所述上下文向量进行线性变换,得到所述至少一个云主机的负载预测值;根据所述至少一个云主机的负载预测值,对所述至少一个云主机进行负载迁移处理;即本发明示例通过获取CPU负载、内存负载、磁盘负载等更多维度的负载特征,并利用特征注意力机制捕获各负载特征的动态关系,利用时间注意力层捕获时间相关性,提高了对云主机负载预测的精度,进而提高了云主机负载迁移的效果。
第二方面,本发明示例提供了一种云主机负载处理装置,图6为本发明提供的一种云主机负载处理装置的结构示意图,如图6所示,该云主机负载处理装置包括:
获取模块10,用于获取云主机的历史负载数据,所述历史负载数据包括至少一个云主机对应的CPU负载序列、内存负载序列和磁盘负载序列中的至少两种负载序列;预测模块20,用于将所述历史负载数据输入预先训练的基于双层注意力机制的长短期记忆网络编码-解码模型,输出所述至少一个云主机的负载预测值;处理模块,用于根据所述至少一个云主机的负载预测值,对所述至少一个云主机进行负载迁移处理。
在其他可选的示例中,所述预测模块20用于:将所述历史负载数据输入所述模型中的特征注意力层,得到加权后的历史负载数据;将所述加权后的历史负载数据输入所述模型中的长短期记忆网络编码器,得到编码器隐藏层状态;将所述编码器隐藏层状态输入所述模型中的时间注意力层,得到加权后的编码器隐藏层状态;对所述加权后的编码器隐藏层状态进行求和,得到上下文向量;将所述上下文向量输入所述模型中的长短期记忆网络解码器,得到解码器隐藏层状态;将所述解码器隐藏层状态和所述上下文向量进行线性变换,得到所述至少一个云主机的负载预测值。
在其他可选的示例中,所述预测模块20具体用于:根据上一时刻编码器隐藏层状态、上一时刻编码器细胞状态以及所述历史负载数据,确定各云主机的各负载序列在当前时刻的特征影响权重;对所述特征影响权重进行归一化处理,得到归一化特征注意力权重;根据所述归一化特征注意力权重和所述历史负载数据,得到所述加权后的历史负载数据。
在其他可选的示例中,所述预测模块20具体用于:根据上一时刻解码器隐藏层状态、上一时刻解码器细胞状态以及所述编码器隐藏层状态,确定不同时刻的历史负载数据在当前时刻的时间影响权重;对所述时间影响权重进行归一化处理,得到归一化时间注意力权重;根据所述归一化时间注意力权重和所述编码器隐藏层状态,得到所述加权后的编码器隐藏层状态。
在其他可选的示例中,所述装置还包括训练模块40,所述训练模块40用于:获取云主机的负载数据训练集,所述负载数据集包括至少一个云主机对应的CPU负载序列、内存负载序列和磁盘负载序列中的至少两种负载序列;利用所述负载数据训练集对待训练的双层注意力机制的长短期记忆网络编码-解码模型进行训练,获得所述预先训练的基于双层注意力机制的长短期记忆网络编码-解码模型。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的云主机负载处理装置的具体工作过程以及相应的有益效果,可以参考前述方法示例中的对应过程,在此不再赘述。
本发明示例提供的云主机负载处理装置,通过获取模块,获取云主机的历史负载数据,所述历史负载数据包括至少一个云主机对应的CPU负载序列、内存负载序列和磁盘负载序列中的至少两种负载序列;预测模块将所述历史负载数据输入预先训练的基于双层注意力机制的长短期记忆网络编码-解码模型,输出所述至少一个云主机的负载预测值;处理模块根据所述至少一个云主机的负载预测值,对所述至少一个云主机进行负载迁移处理;即本发明示例通过获取CPU负载、内存负载、磁盘负载等更多维度的负载特征,对云主机进行负载预测,提高了预测精度,进而提高了云主机负载迁移的效果。
第三方面,本发明示例提供了一种控制设备,图7为本发明提供的一种控制设备的硬件结构示意图,如图7所示,包括:
至少一个处理器701和存储器702。
在具体实现过程中,至少一个处理器701执行所述存储器702存储的计算机执行指令,使得至少一个处理器701执行如上的云主机负载处理方法,其中,处理器701、存储器702通过总线703连接。
处理器701的具体实现过程可参见上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
在上述的图7所示的实施例中,应理解,处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application SpecificIntegrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器。
总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component Interconnect,PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
第四方面,本发明还提供了一种可读存储介质,所述可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上的云主机负载处理方法。
上述的可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。可读存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路(Application Specific IntegratedCircuits,简称:ASIC)中。当然,处理器和可读存储介质也可以作为分立组件存在于设备中。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (4)
1.一种云主机负载处理方法,其特征在于,包括:
获取云主机的历史负载数据,所述历史负载数据包括至少一个云主机对应的中央处理器CPU负载序列、内存负载序列和磁盘负载序列中的至少两种负载序列;
根据上一时刻编码器隐藏层状态、上一时刻编码器细胞状态以及所述历史负载数据,确定各云主机的各负载序列在当前时刻的特征影响权重;
对所述特征影响权重进行归一化处理,得到归一化特征注意力权重;
根据所述归一化特征注意力权重和所述历史负载数据,得到加权后的历史负载数据;
将所述加权后的历史负载数据输入模型中的长短期记忆网络编码器,得到编码器隐藏层状态;
将所述编码器隐藏层状态输入所述模型中的时间注意力层,得到加权后的编码器隐藏层状态;
对所述加权后的编码器隐藏层状态进行求和,得到上下文向量;
将所述上下文向量输入所述模型中的长短期记忆网络解码器,得到解码器隐藏层状态;
将所述解码器隐藏层状态和所述上下文向量进行线性变换,得到所述至少一个云主机的负载预测值;
根据所述至少一个云主机的负载预测值,对所述至少一个云主机进行负载迁移处理;
所述获取云主机的历史负载数据之前,还包括:
获取云主机的负载数据训练集,所述负载数据集包括至少一个云主机对应的CPU负载序列、内存负载序列和磁盘负载序列中的至少两种负载序列;其中,将一段时间内的云主机的历史负载数据划分为训练集和验证集,利用所述验证集测试模型的预测精度;
利用所述负载数据训练集对待训练的双层注意力机制的长短期记忆网络编码-解码模型进行训练,获得预先训练的基于双层注意力机制的长短期记忆网络编码-解码模型;
所述将所述编码器隐藏层状态输入所述模型中的时间注意力层,得到加权后的编码器隐藏层状态,包括:
根据上一时刻解码器隐藏层状态、上一时刻解码器细胞状态以及所述编码器隐藏层状态,确定不同时刻的历史负载数据在当前时刻的时间影响权重;
对所述时间影响权重进行归一化处理,得到归一化时间注意力权重;
根据所述归一化时间注意力权重和所述编码器隐藏层状态,得到所述加权后的编码器隐藏层状态。
2.一种云主机负载处理装置,其特征在于,包括:
获取模块,用于获取云主机的历史负载数据,所述历史负载数据包括至少一个云主机对应的中央处理器CPU负载序列、内存负载序列和磁盘负载序列中的至少两种负载序列;
预测模块,用于将所述历史负载数据输入预先训练的基于双层注意力机制的长短期记忆网络编码-解码模型,输出所述至少一个云主机的负载预测值;
处理模块,用于根据所述至少一个云主机的负载预测值,对所述至少一个云主机进行负载迁移处理;
所述预测模块,具体用于:
将所述历史负载数据输入所述模型中的特征注意力层,得到加权后的历史负载数据;
将所述加权后的历史负载数据输入所述模型中的长短期记忆网络编码器,得到编码器隐藏层状态;
将所述编码器隐藏层状态输入所述模型中的时间注意力层,得到加权后的编码器隐藏层状态;
对所述加权后的编码器隐藏层状态进行求和,得到上下文向量;
将所述上下文向量输入所述模型中的长短期记忆网络解码器,得到解码器隐藏层状态;
将所述解码器隐藏层状态和所述上下文向量进行线性变换,得到所述至少一个云主机的负载预测值;
所述预测模块,具体用于:
根据上一时刻编码器隐藏层状态、上一时刻编码器细胞状态以及所述历史负载数据,确定各云主机的各负载序列在当前时刻的特征影响权重;
对所述特征影响权重进行归一化处理,得到归一化特征注意力权重;
根据所述归一化特征注意力权重和所述历史负载数据,得到所述加权后的历史负载数据;
训练模块,用于获取云主机的负载数据训练集,所述负载数据集包括至少一个云主机对应的CPU负载序列、内存负载序列和磁盘负载序列中的至少两种负载序列;其中,将一段时间内的云主机的历史负载数据划分为训练集和验证集,利用所述验证集测试模型的预测精度;
利用所述负载数据训练集对待训练的双层注意力机制的长短期记忆网络编码-解码模型进行训练,获得所述预先训练的基于双层注意力机制的长短期记忆网络编码-解码模型;
所述预测模块,具体用于:
根据上一时刻解码器隐藏层状态、上一时刻解码器细胞状态以及所述编码器隐藏层状态,确定不同时刻的历史负载数据在当前时刻的时间影响权重;
对所述时间影响权重进行归一化处理,得到归一化时间注意力权重;
根据所述归一化时间注意力权重和所述编码器隐藏层状态,得到所述加权后的编码器隐藏层状态。
3.一种控制设备,其特征在于,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求1所述的云主机负载处理方法。
4.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1所述的云主机负载处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010487858.0A CN111638958B (zh) | 2020-06-02 | 2020-06-02 | 云主机负载处理方法、装置、控制设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010487858.0A CN111638958B (zh) | 2020-06-02 | 2020-06-02 | 云主机负载处理方法、装置、控制设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111638958A CN111638958A (zh) | 2020-09-08 |
CN111638958B true CN111638958B (zh) | 2024-04-05 |
Family
ID=72330446
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010487858.0A Active CN111638958B (zh) | 2020-06-02 | 2020-06-02 | 云主机负载处理方法、装置、控制设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111638958B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113051130B (zh) * | 2021-03-19 | 2023-05-02 | 南京航空航天大学 | 结合注意力机制的lstm网络的移动云负载预测方法及系统 |
CN113033780A (zh) * | 2021-03-24 | 2021-06-25 | 西北大学 | 一种基于双层注意力机制的云平台资源预测方法 |
CN113076196A (zh) * | 2021-04-08 | 2021-07-06 | 上海电力大学 | 结合注意力机制和门控循环单元的云计算主机负载预测法 |
CN113220450B (zh) * | 2021-04-29 | 2022-10-21 | 南京邮电大学 | 面向云端多数据中心的负载预测方法、资源调度方法及装置 |
CN113268403B (zh) * | 2021-05-25 | 2023-10-31 | 中国联合网络通信集团有限公司 | 时间序列的分析预测方法、装置、设备及存储介质 |
CN115118602B (zh) * | 2022-06-21 | 2024-05-07 | 中船重工信息科技有限公司 | 一种基于使用量预测的容器资源动态调度方法及系统 |
CN115378948A (zh) * | 2022-08-23 | 2022-11-22 | 浙江大学中原研究院 | 一种基于深度学习的服务器负载预测方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105260794A (zh) * | 2015-10-12 | 2016-01-20 | 上海交通大学 | 一种云数据中心的负载预测方法 |
CN108196957A (zh) * | 2017-12-28 | 2018-06-22 | 福州大学 | 一种云环境下的主机负载预测方法 |
CN108829494A (zh) * | 2018-06-25 | 2018-11-16 | 杭州谐云科技有限公司 | 基于负载预测的容器云平台智能资源优化方法 |
CN110222840A (zh) * | 2019-05-17 | 2019-09-10 | 中山大学 | 一种基于注意力机制的集群资源预测方法和装置 |
CN110347498A (zh) * | 2019-06-10 | 2019-10-18 | 华南理工大学 | 一种容器和虚拟机混合云环境下的负载动态迁移方法 |
CN111158454A (zh) * | 2019-12-20 | 2020-05-15 | 青岛海尔科技有限公司 | 一种实时嵌入式操作系统低功耗方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7383405B2 (en) * | 2004-06-30 | 2008-06-03 | Microsoft Corporation | Systems and methods for voluntary migration of a virtual machine between hosts with common storage connectivity |
US7801650B2 (en) * | 2006-09-15 | 2010-09-21 | Oracle America, Inc. | Inferring the altitude of computing devices using multivariate pattern recognition of telemetry signals |
-
2020
- 2020-06-02 CN CN202010487858.0A patent/CN111638958B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105260794A (zh) * | 2015-10-12 | 2016-01-20 | 上海交通大学 | 一种云数据中心的负载预测方法 |
CN108196957A (zh) * | 2017-12-28 | 2018-06-22 | 福州大学 | 一种云环境下的主机负载预测方法 |
CN108829494A (zh) * | 2018-06-25 | 2018-11-16 | 杭州谐云科技有限公司 | 基于负载预测的容器云平台智能资源优化方法 |
CN110222840A (zh) * | 2019-05-17 | 2019-09-10 | 中山大学 | 一种基于注意力机制的集群资源预测方法和装置 |
CN110347498A (zh) * | 2019-06-10 | 2019-10-18 | 华南理工大学 | 一种容器和虚拟机混合云环境下的负载动态迁移方法 |
CN111158454A (zh) * | 2019-12-20 | 2020-05-15 | 青岛海尔科技有限公司 | 一种实时嵌入式操作系统低功耗方法及装置 |
Non-Patent Citations (2)
Title |
---|
"基于容器的负载预测模型与能耗优化调度策略研究";王泽涛;《中国优秀硕士学位论文全文数据库信息科技辑》;20200115(第01期);I137-38 * |
一种基于C-RAN架构下资源负载预测方法;龙恳;胡渝纺;;科学技术与工程;20141128(第33期);62-66 * |
Also Published As
Publication number | Publication date |
---|---|
CN111638958A (zh) | 2020-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111638958B (zh) | 云主机负载处理方法、装置、控制设备及存储介质 | |
CN110298663B (zh) | 基于序列宽深学习的欺诈交易检测方法 | |
CN111860982A (zh) | 一种基于vmd-fcm-gru的风电场短期风电功率预测方法 | |
CN114297036B (zh) | 数据处理方法、装置、电子设备及可读存储介质 | |
CN112433896B (zh) | 一种服务器磁盘故障预测方法、装置、设备及存储介质 | |
CN113516248B (zh) | 一种量子门测试方法、装置及电子设备 | |
CN112418482A (zh) | 一种基于时间序列聚类的云计算能耗预测方法 | |
CN110067696B (zh) | 一种风电机组载荷确定方法、装置、设备及可读存储介质 | |
Peng et al. | Multi-step-ahead host load prediction with gru based encoder-decoder in cloud computing | |
CN110413657B (zh) | 面向季节型非平稳并发量的平均响应时间评估方法 | |
CN111461445A (zh) | 短期风速预测方法、装置、计算机设备及存储介质 | |
CN116707331B (zh) | 基于模型预测的逆变器输出电压高精度调节方法及系统 | |
CN114490065A (zh) | 一种负载预测方法、装置及设备 | |
CN114781692A (zh) | 短期电力负荷预测方法、装置及电子设备 | |
CN110083518B (zh) | 一种基于AdaBoost-Elman的虚拟机软件老化预测方法 | |
CN113051130A (zh) | 结合注意力机制的lstm网络的移动云负载预测方法及系统 | |
CN116680569A (zh) | 基于rwkv神经网络的风资源预测方法和装置 | |
CN111461353A (zh) | 一种模型训练的方法和系统 | |
CN117406100A (zh) | 锂离子电池剩余寿命预测方法和系统 | |
CN116542673A (zh) | 应用于机器学习的欺诈行为识别方法及系统 | |
CN114389953B (zh) | 一种基于流量预测的Kubernetes容器动态扩缩容方法及系统 | |
CN113361621B (zh) | 用于训练模型的方法和装置 | |
CN114584476A (zh) | 一种流量预测方法、网络训练方法、装置及电子设备 | |
CN113158134A (zh) | 非侵入式负荷辨识模型的构建方法、装置和存储介质 | |
CN111931994A (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 |