CN114490065A - 一种负载预测方法、装置及设备 - Google Patents
一种负载预测方法、装置及设备 Download PDFInfo
- Publication number
- CN114490065A CN114490065A CN202210103339.9A CN202210103339A CN114490065A CN 114490065 A CN114490065 A CN 114490065A CN 202210103339 A CN202210103339 A CN 202210103339A CN 114490065 A CN114490065 A CN 114490065A
- Authority
- CN
- China
- Prior art keywords
- load prediction
- layer
- inputting
- computing node
- prediction model
- 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.)
- Pending
Links
Images
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
- 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/044—Recurrent networks, e.g. Hopfield 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/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/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请实施例提供了一种负载预测方法、装置及设备,获取所述计算节点中多个负载的时间序列数据,将时间序列数据输入至预先构建的负载预测模型,得到计算节点的CPU负载预测值,负载预测模型是在基于注意力机制的神经网络模型和自回归模型的基础上训练得到的,可见,负载预测模型的输入是多种负载的时间序列数据,不仅关注了不同负载的时间特征,还能够获得多种负载之间的依赖关系,有助于负载预测模型输出CPU负载预测值的准确性,并且负载预测模型是利用基于注意力机制的神经网络模型和自回归模型的基础上训练得到的,能够进一步提高CPU负载预测值的准确性,以便得到计算集群系统中每个计算节点的中央处理器CPU负载预测值的准确结果。
Description
技术领域
本发明涉及计算机领域,特别涉及一种负载预测方法及装置。
背景技术
随着计算机技术的快速发展,对于计算机的计算资源的需求越来越高。但是单一的计算机的计算资源已经无法满足对于资源和算力的需求。由此提出了计算集群系统,计算集群系统中包括多台计算机,可以利用多台计算机进行并行计算达到高性能的计算效果。
计算集群系统中每个计算机可以作为一个计算节点,完成计算任务中的一部分内容。由于每个计算节点的计算资源是有限的,因此根据每个计算节点的计算资源进行与其匹配的任务分配非常重要。如果任务分配不合理,导致某些计算节点的负载值过高,导致该计算节点任务完成速率较低甚至出现该计算节点无法工作的情况出现。可以通过预测每个计算节点的当前负载状态,得到当前计算节点的计算资源情况,进而进行合理的任务分配,以提高计算集群系统的计算性能。
因此,现在急需一种计算集群系统的负载预测方法。
发明内容
有鉴于此,本申请的目的在于提供一种负载预测方法,能够得到计算集群系统中每个计算节点的中央处理器CPU负载预测值,并在后续根据该CPU负载预测值进行任务分配,提高计算集群系统的计算性能。
为实现上述目的,本申请有如下技术方案:
本申请实施例提供了一种负载预测方法,应用于计算集群系统,所述计算集群系统包括多个计算节点,所述方法包括:
获取所述计算节点中多个负载的时间序列数据;所述多个负载包括中央处理器CPU、内存、磁盘和网络;
将所述时间序列数据输入至预先构建的负载预测模型,得到所述计算节点的CPU负载预测值;所述负载预测模型是在基于注意力机制的神经网络模型和自回归模型的基础上训练得到的。
可选地,所述负载预测模型的构建方式如下:
获取所述计算节点中多个负载的训练时间序列数据以及CPU负载训练值;
利用所述训练时间序列数据和所述CPU负载训练值,对初始负载预测模型进行训练,得到所述负载预测模型。
可选地,所述初始负载预测模型包括预处理层、循环层、卷积层、注意力机制层、自回归模型和全连接层。
可选地,所述将所述时间序列数据输入至预先构建的负载预测模型,得到所述计算节点的CPU负载预测值包括:
将所述时间序列数据输入所述预处理层进行归一化处理,得到输入序列;
将所述输入序列输入所述自回归模型,得到线性特征向量;
将所述输入序列输入所述循环层,得到隐层状态矩阵,所述隐层状态矩阵包括多个时刻的隐层状态向量;
将所述隐层状态矩阵输入所述卷积层,得到所述计算节点中多个负载的依赖关系特征矩阵;
将所述依赖关系特征矩阵输入所述注意力机制层,得到非线性特征向量;
将所述隐层状态矩阵中的最后一个时刻的隐层状态向量、所述线性特征向量和所述非线性特征向量输入所述全连接层,得到所述计算节点的CPU负载预测值。
可选地,所述将所述依赖关系特征矩阵输入所述注意力机制层,得到非线性特征向量包括:
将所述依赖关系特征矩阵输入所述注意力机制层,计算所述依赖关系特征矩阵中的每个行特征向量和所述最后一个时刻的隐层状态向量的相似度,得到每个行特征向量的相似度,利用激活函数计算所述每个行特征向量的相似度得到每个行特征向量的权重,对所述每个行特征向量利用对应的权重进行加权求和,得到非线性特征向量。
可选地,所述方法还包括:
获取所述计算节点中多个负载的验证时间序列数据以及CPU负载验证值;
将所述验证时间序列数据输入所述负载预测模型,得到所述计算节点的CPU负载预测值;
当所述CPU负载预测值与所述CPU负载验证值不同时,将所述验证时间序列数据重新作为所述训练时间序列数据,对所述负载预测模型进行更新。
可选地,所述循环层为循环神经网络RNN、长短期记忆网络LSTM或门控循环单元GRU。
可选地,所述长短期记忆网络LSTM中加入残差连接机制。
本申请实施例提供了一种负载预测装置,所述装置包括:
第一获取单元,用于获取计算节点中多个负载的时间序列数据;所述多个负载包括中央处理器CPU、内存、磁盘和网络;
第一预测单元,用于将所述时间序列数据输入至预先构建的负载预测模型,得到所述计算节点的CPU负载预测值;所述负载预测模型是在基于注意力机制的神经网络模型和自回归模型的基础上训练得到的。
可选地,所述装置还包括:
第二获取单元,用于获取所述计算节点中多个负载的训练时间序列数据以及CPU负载训练值;
训练单元,用于利用所述训练时间序列数据和所述CPU负载训练值,对初始负载预测模型进行训练,得到所述负载预测模型。
可选地,所述初始负载预测模型包括预处理层、循环层、卷积层、注意力机制层、自回归模型和全连接层。
可选地,所述第一预测单元420包括:
第一输入子单元,用于将所述时间序列数据输入所述预处理层进行归一化处理,得到输入序列;
第二输入子单元,用于将所述输入序列输入所述自回归模型,得到线性特征向量;
第三输入子单元,用于将所述输入序列输入所述循环层,得到隐层状态矩阵,所述隐层状态矩阵包括多个时刻的隐层状态向量;
第四输入子单元,用于将所述隐层状态矩阵输入所述卷积层,得到所述计算节点中多个负载的依赖关系特征矩阵;
第五输入子单元,用于将所述依赖关系特征矩阵输入所述注意力机制层,得到非线性特征向量;
第六输入子单元,用于将所述隐层状态矩阵中的最后一个时刻的隐层状态向量、所述线性特征向量和所述非线性特征向量输入所述全连接层,得到所述计算节点的CPU负载预测值。
可选地,所述第五输入子单元,具体用于:
将所述依赖关系特征矩阵输入所述注意力机制层,计算所述依赖关系特征矩阵中的每个行特征向量和所述最后一个时刻的隐层状态向量的相似度,得到每个行特征向量的相似度,利用激活函数计算所述每个行特征向量的相似度得到每个行特征向量的权重,对所述每个行特征向量利用对应的权重进行加权求和,得到非线性特征向量。
可选地,所述装置还包括:
第三获取单元,用于获取所述计算节点中多个负载的验证时间序列数据以及CPU负载验证值;
验证单元,用于将所述验证时间序列数据输入所述负载预测模型,得到所述计算节点的CPU负载预测值;
更新单元,用于当所述CPU负载预测值与所述CPU负载验证值不同时,将所述验证时间序列数据重新作为所述训练时间序列数据,对所述负载预测模型进行更新。
可选地,所述循环层为循环神经网络RNN、长短期记忆网络LSTM或门控循环单元GRU。
可选地,所述长短期记忆网络LSTM中加入残差连接机制。
本申请实施例提供了一种负载预测设备,包括:处理器、存储器、系统总线;
所述处理器以及所述存储器通过所述系统总线相连;
所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行上述负载预测方法。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行上述负载预测方法的任一种实现方法。
本申请实施例还提供了一种计算机程序产品,所述计算机程序产品在终端设备上运行时,使得所述终端设备执行上述负载预测方法的任一种实现方法。
本申请实施例提供了一种负载预测方法,应用于计算集群系统,计算集群系统包括多个计算节点,获取所述计算节点中多个负载的时间序列数据;其中,多个负载包括中央处理器CPU、内存、磁盘和网络,将时间序列数据输入至预先构建的负载预测模型,得到计算节点的CPU负载预测值,负载预测模型是在基于注意力机制的神经网络模型和自回归模型的基础上训练得到的,可见,负载预测模型的输入是多种负载的时间序列数据,不仅关注了不同负载的时间特征,还能够获得多种负载之间的依赖关系,有助于负载预测模型输出CPU负载预测值的准确性,并且负载预测模型是利用基于注意力机制的神经网络模型和自回归模型的基础上训练得到的,能够进一步提高CPU负载预测值的准确性,以便得到计算集群系统中每个计算节点的中央处理器CPU负载预测值的准确结果,并在后续根据该CPU负载预测值进行任务分配,提高计算集群系统的计算性能。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1示出了本申请实施例提供的一种负载预测方法的流程示意图;
图2示出了本申请实施例提供的一种负载预测模型的结构示意图;
图3示出了本申请实施例提供的长短期记忆网络LSTM示意图;
图4示出了本申请实施例提供的一种负载预测装置的流程示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,随着计算机技术的快速发展,对于计算机的计算资源的需求越来越高。但是单一的计算机的计算资源已经无法满足对于资源和算力的需求。由此提出了计算集群系统,计算集群系统中包括多台计算机,可以利用多台计算机进行并行计算达到高性能的计算效果。
计算集群系统中每个计算机可以作为一个计算节点,完成计算任务中的一部分内容。由于每个计算节点的计算资源是有限的,计算资源尤其是中央处理器(CentralProcessing Unit/Processor,CPU)资源,比较有限,因此根据每个计算节点的计算资源进行与其匹配的任务分配非常重要。如果任务分配不合理,导致某些计算节点的负载值过高,导致该计算节点任务完成速率较低甚至出现该计算节点无法工作的情况出现。可以通过预测每个计算节点的当前CPU负载状态,得到当前计算节点的计算资源情况,进而进行合理的任务分配,以提高计算集群系统的计算性能。
可以利用自回归(AR)模型,移动平均(MA)模型,自回归移动平均(ARMA)模型,差分自回归移动平均(ARIMA)模型等预测每个计算节点的CPU负载状态,但是上述模型适用于方差等统计特征不随时间变化的静止的时间序列,对于预测类似CPU负载状态随时间变化的统计特征,预测精度较低。
因此,现在急需一种预测精度较高的计算集群系统的负载预测方法。
基于以上技术问题,本申请实施例提供了一种负载预测方法,应用于计算集群系统,计算集群系统包括多个计算节点,获取所述计算节点中多个负载的时间序列数据;其中,多个负载包括中央处理器CPU、内存、磁盘和网络,将时间序列数据输入至预先构建的负载预测模型,得到计算节点的CPU负载预测值,负载预测模型是在基于注意力机制的神经网络模型和自回归模型的基础上训练得到的,可见,负载预测模型的输入是多种负载的时间序列数据,不仅关注了不同负载的时间特征,还能够获得多种负载之间的依赖关系,有助于负载预测模型输出CPU负载预测值的准确性,并且负载预测模型是利用基于注意力机制的神经网络模型和自回归模型的基础上训练得到的,能够进一步提高CPU负载预测值的准确性,以便得到计算集群系统中每个计算节点的中央处理器CPU负载预测值的准确结果,并在后续根据该CPU负载预测值进行任务分配,提高计算集群系统的计算性能。
为了更好地理解本申请的技术方案和技术效果,以下将结合附图对具体的实施例进行详细的描述。
参考图1所示,为本申请实施例提供的一种负载预测方法的流程图。本申请实施例提供的负载预测方法,应用于计算集群系统,计算集群系统包括至少一个管理节点和多个计算节点。管理节点控制整个计算集群系统,同时为计算节点提供服务和对外的网络连接。计算节点用于提供计算资源,进行计算服务。
该方法包括以下步骤:
S101,获取所述计算节点中多个负载的时间序列数据。
在本申请的实施例中,计算集群系统中包括多个计算节点,可以获取多个计算节点中每个计算节点的多个负载的时间序列数据,时间序列数据可以为负载随时间变化的负载数据。多个负载可以包括中央处理器CPU、内存、磁盘和网络。计算节点上例如内存、磁盘和网络等的负载会对CPU负载产生影响,即内存、磁盘和网络等对CPU处理任务进行影响。
获取每个计算节点中多个负载的时间序列数据,以便后续关注不同负载的时间特征,以及获得多种负载之间的依赖关系,尤其是CPU负载和其他负载之间的依赖关系。
S102,将所述时间序列数据输入至预先构建的负载预测模型,得到所述计算节点的CPU负载预测值。
在本申请的实施例中,在获取了某一计算节点的多个负载的时间序列数据之后,将时间序列数据输入至预先构建的负载预测模型,得到该计算节点的CPU负载预测值,后续利用该CPU负载预测值为该计算节点分配任务进行处理。
负载预测模型是在基于注意力机制的神经网络模型和自回归模型的基础上训练得到的。
参考图2所示,为本申请实施例提供的一种负载预测模型的结构示意图。负载预测模型包括预处理层、循环层、卷积层、注意力机制层、自回归模型和全连接层。
在此基础上,一种可选的实现方式是,本步骤S102的具体实现过程可以包括下述步骤A-F:
步骤A:将所述时间序列数据输入所述预处理层进行归一化处理,得到输入序列。
在本实现方式中,在获取得到计算节点中多个负载的时间序列数据之后,对时间序列进行归一化处理处理,例如最大最小归一化处理,得到输入序列。
在本实现方式中,对归一化后的输入序列进行数据划分,划分为训练集、验证集和测试集,训练集用于进行负载预测模型的训练,验证集用于进行负载预测模型的验证,测试集用于进行负载预测模型的测试。
数据划分之后,针对训练集中的输入序列可以采用一个长度为L窗口中的数据作为输入,L的取值范围为{12,24,48,60,72,84,96,108,120,132,144},取窗口外的第m时刻作为需要预测的计算节点的CPU负载值的时间点,m的取值范围为{1,3,5,7}。
具体的,训练集、验证集和测试集的数据比例可以为7:2:1或者8:1:1。
步骤B:将输入序列输入自回归模型,得到线性特征向量。
在本实现方式中,在对时间序列数据进行归一化处理之后,可以将得到的输入序列输入自回归模型,得到输入序列的线性特征向量。针对CPU负载的时间序列数据具有数据量较大且变化剧烈的特点,自回归模型能够灵敏感知这种变化巨大的情况,采用自回归模型对这种特征进行提取,能够提高负载预测模型的预测精确度。
具体的,线性特征向量var=∑i=1Wixt-w+i,其中Wi是可训练参数矩阵,i=1,2,…,w。其中,w代表输入历史窗口的大小。xt-w+i代表经过归一化后的输入序列Xnorm处于t-w+i时刻的负载向量。
步骤C:将所述输入序列输入所述循环层,得到隐层状态矩阵。
在本实现方式中,在对时间序列数据进行归一化处理之后,可以将得到的输入序列输入循环层,得到隐层状态矩阵,隐层状态矩阵包括多个时刻的隐层状态向量。循环层可以为循环神经网络(Recurrent Neural Networks,RNN)、长短期记忆网络(Long-shortterm memory,LSTM)或门控循环单元(Gated Recurrent Unit,GRU)。
长短期记忆(LSTM)网络是循环神经网络(RNN)的一种变种模型,常用于自然语言处理任务,在时间序列预测中也得到广泛的使用。LSTM在RNN的基础之上引入了门结构,包括输入门、输出门、遗忘门,缓解了RNN存在的梯度消失和梯度爆炸的问题。
下面以循环层是长短期记忆网络LSTM为例,对输入序列在长短期记忆网络LSTM的处理进行说明。
在本实现方式中,长短期记忆网络LSTM为2层网络,参考图3所示,为本申请实施例提供的长短期记忆网络LSTM示意图。在长短期记忆网络LSTM中还加入残差连接机制,这使得底层信息能够直接流向高层,减小错误信息对后序步骤的影响,从而提高负载预测模型的预测效果。
具体的,可以将输入序列Xnorm输入长短期记忆网络LSTM层,利用公式H=F(F(x)+x)得到隐层状态矩阵H={ht-w+1,ht-w+2,…,ht},hi代表i时刻的隐层状态向量,其中F(·)代表具有两层残差连接的长短期记忆网络LSTM对输入序列进行处理的过程,hi可以利用如下公式进行计算:
it=σ(Wi·[xt,ht-1]+bi)
ft=σ(Wf·[xt,ht-1]+bf)
ot=σ(Wo·[xt,ht-1]+bo)
ht=ot*tanh(Ct)
其中,it,ft,ot分别代表t时刻的输入门、遗忘门、输出门的输出,xt,ot表示t时刻的输入与输出,ht-1,ht分别表示t-1时刻和t时刻的隐层状态向量,即ht为隐层状态矩阵中的最后一个时刻的隐层状态向量,Ct表示t时刻LSTM神经元细胞的状态,W,b均为可训练参数。
步骤D:将隐层状态矩阵输入卷积层,得到计算节点中多个负载的依赖关系特征矩阵。
在本实现方式中,在获得隐层状态矩阵之后,将隐层状态矩输入卷积层,得到计算节点中多个负载的依赖关系特征矩阵。
卷积层可以为卷积神经网络(Convolutional Neural Networks,CNN),由卷积、激活、池化三种结构组成。可以利用CNN卷积操作提取多个负载的时间序列数据之间的依赖关系,从而提高负载预测模型的预测精确度。
具体的,使用k个长度为w的一维卷积核Ci(i=1,2,…,k)与隐层状态矩阵H进行卷积运算得到依赖关系特征矩阵为HC,k的范围为{20,25,30,35,40,45,50},w为隐层状态矩阵H的列数。
步骤E:将依赖关系特征矩阵输入注意力机制层,得到非线性特征向量。
在本实现方式中,在获得计算节点中多个负载的依赖关系特征矩阵之后,可以将依赖关系特征矩阵输入注意力机制层,为依赖关系特征矩阵中的不同的特征计算不同的权重,而后通过加权求和得到非线性特征向量。
也就是,将依赖关系特征矩阵输入注意力机制层,计算依赖关系特征矩阵中的每个行特征向量和最后一个时刻的隐层状态向量的相似度,得到每个行特征向量的相似度,利用激活函数计算每个行特征向量的相似度得到每个行特征向量的权重,对每个行特征向量利用对应的权重进行加权求和,得到非线性特征向量。
具体的,计算依赖关系特征矩阵中每个行特征向量(i=1,2,…,m)和最后一个时刻的隐层状态向量hy的相似度,m为依赖关系特征矩阵HC的行数,得到m个相似度而后利用激活函数计算出每个行特征向量的权重αi,其中,
在本方式中,激活函数可以包括softmax,sigmoid,tanh和relu。
步骤F:将隐层状态矩阵中的最后一个时刻的隐层状态向量、线性特征向量和非线性特征向量输入全连接层,得到计算节点的CPU负载预测值。
在本方式中,在获得隐层状态矩阵中的最后一个时刻的隐层状态向量、线性特征向量和非线性特征向量之后,将其全部输入全连接层,得到计算节点的CPU负载预测值。
接下来,本实施例将对负载预测模型的构建过程进行介绍,其中,一种可选的实现方式是,负载预测模型的构建过程具体可以包括:获取计算节点中多个负载的训练时间序列数据以及CPU负载训练值,利用训练时间序列数据和CPU负载训练值,对初始负载预测模型进行训练,得到负载预测模型。
具体来讲,在本实现方式中,为了构建负载预测模型,需要预先进行大量的准备工作,首先,需要获取大量的时间序列数据,作为训练时间序列数据,用于构成模型的训练数据。例如,如上文所述,将经过归一化处理的输入数据划分为训练集、验证集和测试集,训练集的数据中包括多个负载的训练时间序列数据以及CPU负载训练值,可以利用训练时间序列数据和CPU负载训练值,对初始负载预测模型进行训练,得到负载预测模型。
其中,一种可选的实现方式是,初始负载预测模型模型可以为(但不限于)包括预处理层、循环层、卷积层、注意力机制层、自回归模型和全连接层的神经网络模型。
具体地,在进行模型训练时,可以依次从训练时间序列数据中提取一份训练时间序列数据作为模型输入,对应的CPU负载预测值作为输出,进行多轮模型训练,并将每轮训练得到的CPU负载预测值与对应的CPU负载训练值进行比较,并根据二者的差异对模型参数进行更新,直至满足预设的条件,则停止模型参数的更新,完成负载预测模型的训练,生成一个训练好的负载预测模型。
在此基础上,在根据多个负载的训练时间序列数据以及CPU负载训练值训练生成负载预测模型后,进一步的,还可以利用验证时间序列数据以及CPU负载验证值对生成的负载识别模型进行验证。具体验证过程可以包括下述步骤(1)-(3):
步骤(1):获取所述计算节点中多个负载的验证时间序列数据以及CPU负载验证值。
在本实施例中,为了实现对负载预测模型进行验证,首先需要获取计算节点中多个负载的验证时间序列数据以及CPU负载验证值。例如,如上文所述,将经过归一化处理的输入数据划分为训练集、验证集和测试集,验证集的数据中包括多个负载的验证时间序列数据以及CPU负载验证值。在获取得到多个负载的验证时间序列数据以及CPU负载验证值之后,可继续执行步骤(2)。
步骤(2):将所述验证时间序列数据输入所述负载预测模型,得到所述计算节点的CPU负载预测值。
通过步骤(1)获取到多个负载的验证时间序列数据以及CPU负载验证值之后,进一步的,可以将验证时间序列数据输入负载预测模型,获得计算节点的CPU负载预测值。
步骤(3):当所述CPU负载预测值与所述CPU负载验证值不同时,将所述验证时间序列数据重新作为所述训练时间序列数据,对所述负载预测模型进行更新。
通过步骤(2)获得计算节点的CPU负载预测值之后,若CPU负载预测值与CPU负载验证值不同时,将验证时间序列数据重新作为训练时间序列数据,对负载预测模型进行更新。
通过上述实施例,可以利用多个负载的验证时间序列数据以及CPU负载验证值对负载预测模型进行有效验证,当CPU负载预测值与CPU负载验证值不同时,可以及时调整更新负载预测模型,进而有助于提高负载预测模型的预测精度和准确性。
综上,本申请实施例通过引入多维的负载时间序列,并且在多维的负载时间序列经过LSTM之后使用多个卷积核去提取其他负载和CPU负载之间的依赖关系,从而提高负载预测模型的预测精确度。并且,LSTM相较于RNN引入了门结构改善了长期依赖关系的记忆问题,但是LSTM每一时刻的输出仍然取决于上一时刻的隐层状态以及当前时刻的输入,这导致了单一的LSTM的预测出现整体性的滞后现象,即预测曲线相当于原始曲线后移一定时间步,会最终导致预测精确度的下降。因此本申请实施例中引入了注意力机制,即对于历史窗口中的隐层状态给予不同的注意力,也就是不同的权重,因为整个历史窗口中的隐层状态对于预测都可能存在一定的贡献。此外,线性的自回归模型对于输入尺度变化巨大的相邻时间步具有良好的感知,因此加入了线性的自回归模型用于感知这些变化巨大的两个时间步,从而提升预测精确度。最后,通过在两层LSTM之间加入了残差连接机制,使得底层信息能够直接流向高层,减小错误信息对后序步骤的影响,从而进一步提高负载预测模型的预测效果。
由此可见,本申请实施例提供了一种负载预测方法,应用于计算集群系统,计算集群系统包括多个计算节点,获取所述计算节点中多个负载的时间序列数据;其中,多个负载包括中央处理器CPU、内存、磁盘和网络,将时间序列数据输入至预先构建的负载预测模型,得到计算节点的CPU负载预测值,负载预测模型是在基于注意力机制的神经网络模型和自回归模型的基础上训练得到的,可见,负载预测模型的输入是多种负载的时间序列数据,不仅关注了不同负载的时间特征,还能够获得多种负载之间的依赖关系,有助于负载预测模型输出CPU负载预测值的准确性,并且负载预测模型是利用基于注意力机制的神经网络模型和自回归模型的基础上训练得到的,能够进一步提高CPU负载预测值的准确性,以便得到计算集群系统中每个计算节点的中央处理器CPU负载预测值的准确结果,并在后续根据该CPU负载预测值进行任务分配,提高计算集群系统的计算性能。
基于以上实施例提供的负载预测方法,本申请实施例还提供了一种负载预测装置。参见图4,为本实施例提供的一种负载预测装置的组成示意图,该装置400包括:
第一获取单元410,用于获取计算节点中多个负载的时间序列数据;所述多个负载包括中央处理器CPU、内存、磁盘和网络;
第一预测单元420,用于将所述时间序列数据输入至预先构建的负载预测模型,得到所述计算节点的CPU负载预测值;所述负载预测模型是在基于注意力机制的神经网络模型和自回归模型的基础上训练得到的。
可选地,所述装置还包括:
第二获取单元,用于获取所述计算节点中多个负载的训练时间序列数据以及CPU负载训练值;
训练单元,用于利用所述训练时间序列数据和所述CPU负载训练值,对初始负载预测模型进行训练,得到所述负载预测模型。
可选地,所述初始负载预测模型包括预处理层、循环层、卷积层、注意力机制层、自回归模型和全连接层。
可选地,所述第一预测单元420包括:
第一输入子单元,用于将所述时间序列数据输入所述预处理层进行归一化处理,得到输入序列;
第二输入子单元,用于将所述输入序列输入所述自回归模型,得到线性特征向量;
第三输入子单元,用于将所述输入序列输入所述循环层,得到隐层状态矩阵,所述隐层状态矩阵包括多个时刻的隐层状态向量;
第四输入子单元,用于将所述隐层状态矩阵输入所述卷积层,得到所述计算节点中多个负载的依赖关系特征矩阵;
第五输入子单元,用于将所述依赖关系特征矩阵输入所述注意力机制层,得到非线性特征向量;
第六输入子单元,用于将所述隐层状态矩阵中的最后一个时刻的隐层状态向量、所述线性特征向量和所述非线性特征向量输入所述全连接层,得到所述计算节点的CPU负载预测值。
可选地,所述第五输入子单元,具体用于:
将所述依赖关系特征矩阵输入所述注意力机制层,计算所述依赖关系特征矩阵中的每个行特征向量和所述最后一个时刻的隐层状态向量的相似度,得到每个行特征向量的相似度,利用激活函数计算所述每个行特征向量的相似度得到每个行特征向量的权重,对所述每个行特征向量利用对应的权重进行加权求和,得到非线性特征向量。
可选地,所述装置还包括:
第三获取单元,用于获取所述计算节点中多个负载的验证时间序列数据以及CPU负载验证值;
验证单元,用于将所述验证时间序列数据输入所述负载预测模型,得到所述计算节点的CPU负载预测值;
更新单元,用于当所述CPU负载预测值与所述CPU负载验证值不同时,将所述验证时间序列数据重新作为所述训练时间序列数据,对所述负载预测模型进行更新。
可选地,所述循环层为循环神经网络RNN、长短期记忆网络LSTM或门控循环单元GRU。
可选地,所述长短期记忆网络LSTM中加入残差连接机制。
进一步地,本申请实施例还提供了一种负载预测设备,包括:处理器、存储器、系统总线;
所述处理器以及所述存储器通过所述系统总线相连;
所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行上述负载预测方法的任一种实现方法。
进一步地,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行上述负载预测方法的任一种实现方法。
进一步地,本申请实施例还提供了一种计算机程序产品,所述计算机程序产品在终端设备上运行时,使得所述终端设备执行上述负载预测方法的任一种实现方法。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如媒体网关等网络通信设备,等等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅是本申请的优选实施方式,虽然本申请已以较佳实施例披露如上,然而并非用以限定本申请。任何熟悉本领域的技术人员,在不脱离本申请技术方案范围情况下,都可利用上述揭示的方法和技术内容对本申请技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本申请技术方案的内容,依据本申请的技术实质对以上实施例所做的任何的简单修改、等同变化及修饰,均仍属于本申请技术方案保护的范围内。
Claims (10)
1.一种负载预测方法,其特征在于,应用于计算集群系统,所述计算集群系统包括多个计算节点,所述方法包括:
获取所述计算节点中多个负载的时间序列数据;所述多个负载包括中央处理器CPU、内存、磁盘和网络;
将所述时间序列数据输入至预先构建的负载预测模型,得到所述计算节点的CPU负载预测值;所述负载预测模型是在基于注意力机制的神经网络模型和自回归模型的基础上训练得到的。
2.根据权利要求1所述的方法,其特征在于,所述负载预测模型的构建方式如下:
获取所述计算节点中多个负载的训练时间序列数据以及CPU负载训练值;
利用所述训练时间序列数据和所述CPU负载训练值,对初始负载预测模型进行训练,得到所述负载预测模型。
3.根据权利要求2所述的方法,其特征在于,所述初始负载预测模型包括预处理层、循环层、卷积层、注意力机制层、自回归模型和全连接层。
4.根据权利要求3所述的方法,其特征在于,所述将所述时间序列数据输入至预先构建的负载预测模型,得到所述计算节点的CPU负载预测值包括:
将所述时间序列数据输入所述预处理层进行归一化处理,得到输入序列;
将所述输入序列输入所述自回归模型,得到线性特征向量;
将所述输入序列输入所述循环层,得到隐层状态矩阵,所述隐层状态矩阵包括多个时刻的隐层状态向量;
将所述隐层状态矩阵输入所述卷积层,得到所述计算节点中多个负载的依赖关系特征矩阵;
将所述依赖关系特征矩阵输入所述注意力机制层,得到非线性特征向量;
将所述隐层状态矩阵中的最后一个时刻的隐层状态向量、所述线性特征向量和所述非线性特征向量输入所述全连接层,得到所述计算节点的CPU负载预测值。
5.根据权利要求4所述的方法,其特征在于,所述将所述依赖关系特征矩阵输入所述注意力机制层,得到非线性特征向量包括:
将所述依赖关系特征矩阵输入所述注意力机制层,计算所述依赖关系特征矩阵中的每个行特征向量和所述最后一个时刻的隐层状态向量的相似度,得到每个行特征向量的相似度,利用激活函数计算所述每个行特征向量的相似度得到每个行特征向量的权重,对所述每个行特征向量利用对应的权重进行加权求和,得到非线性特征向量。
6.根据权利要求2所述的方法,其特征在于,所述方法还包括:
获取所述计算节点中多个负载的验证时间序列数据以及CPU负载验证值;
将所述验证时间序列数据输入所述负载预测模型,得到所述计算节点的CPU负载预测值;
当所述CPU负载预测值与所述CPU负载验证值不同时,将所述验证时间序列数据重新作为所述训练时间序列数据,对所述负载预测模型进行更新。
7.根据权利要求3-5任意一项所述的方法,其特征在于,所述循环层为循环神经网络RNN、长短期记忆网络LSTM或门控循环单元GRU。
8.根据权利要求7所述的方法,其特征在于,所述长短期记忆网络LSTM中加入残差连接机制。
9.一种负载预测装置,其特征在于,所述装置包括:
第一获取单元,用于获取计算节点中多个负载的时间序列数据;所述多个负载包括中央处理器CPU、内存、磁盘和网络;
第一预测单元,用于将所述时间序列数据输入至预先构建的负载预测模型,得到所述计算节点的CPU负载预测值;所述负载预测模型是在基于注意力机制的神经网络模型和自回归模型的基础上训练得到的。
10.一种负载预测设备,其特征在于,包括:处理器、存储器、系统总线;
所述处理器以及所述存储器通过所述系统总线相连;
所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行权利要求1-8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210103339.9A CN114490065A (zh) | 2022-01-27 | 2022-01-27 | 一种负载预测方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210103339.9A CN114490065A (zh) | 2022-01-27 | 2022-01-27 | 一种负载预测方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114490065A true CN114490065A (zh) | 2022-05-13 |
Family
ID=81475673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210103339.9A Pending CN114490065A (zh) | 2022-01-27 | 2022-01-27 | 一种负载预测方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114490065A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115860281A (zh) * | 2023-02-27 | 2023-03-28 | 之江实验室 | 基于跨实体注意力的能源系统多实体负载预测方法和装置 |
WO2024040947A1 (zh) * | 2022-08-23 | 2024-02-29 | 浙江大学 | 一种基于深度学习的服务器负载预测方法 |
WO2024060788A1 (zh) * | 2022-09-21 | 2024-03-28 | 之江实验室 | 面向智能计算的流水并行训练自适应调整系统、方法 |
WO2024065904A1 (zh) * | 2022-09-29 | 2024-04-04 | 福州大学 | 基于深度自回归循环神经网络的边缘预测方法 |
-
2022
- 2022-01-27 CN CN202210103339.9A patent/CN114490065A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024040947A1 (zh) * | 2022-08-23 | 2024-02-29 | 浙江大学 | 一种基于深度学习的服务器负载预测方法 |
WO2024060788A1 (zh) * | 2022-09-21 | 2024-03-28 | 之江实验室 | 面向智能计算的流水并行训练自适应调整系统、方法 |
WO2024065904A1 (zh) * | 2022-09-29 | 2024-04-04 | 福州大学 | 基于深度自回归循环神经网络的边缘预测方法 |
CN115860281A (zh) * | 2023-02-27 | 2023-03-28 | 之江实验室 | 基于跨实体注意力的能源系统多实体负载预测方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111130839B (zh) | 一种流量需求矩阵预测方法及其系统 | |
CN114490065A (zh) | 一种负载预测方法、装置及设备 | |
CN110738984A (zh) | 人工智能cnn、lstm神经网络语音识别系统 | |
CN111860982A (zh) | 一种基于vmd-fcm-gru的风电场短期风电功率预测方法 | |
CN110852426A (zh) | 基于知识蒸馏的预训练模型集成加速方法及装置 | |
US11650968B2 (en) | Systems and methods for predictive early stopping in neural network training | |
CN108879732B (zh) | 电力系统暂态稳定评估方法及装置 | |
CN111080360B (zh) | 行为预测方法、模型训练方法、装置、服务器及存储介质 | |
CN113553755B (zh) | 电力系统状态估计方法、装置及设备 | |
CN113128671B (zh) | 一种基于多模态机器学习的服务需求动态预测方法及系统 | |
CN110781686B (zh) | 一种语句相似度计算方法、装置及计算机设备 | |
CN110264270A (zh) | 一种行为预测方法、装置、设备和存储介质 | |
CN110647974A (zh) | 深度神经网络中的网络层运算方法及装置 | |
CN114548532A (zh) | 一种基于vmd的tgcn-gru超短期负荷预测方法、装置和电子设备 | |
Ibragimovich et al. | Effective recognition of pollen grains based on parametric adaptation of the image identification model | |
CN114332500A (zh) | 图像处理模型训练方法、装置、计算机设备和存储介质 | |
CN115496144A (zh) | 配电网运行场景确定方法、装置、计算机设备和存储介质 | |
CN113449840A (zh) | 神经网络训练方法及装置、图像分类的方法及装置 | |
CN111178986A (zh) | 用户-商品偏好的预测方法及系统 | |
CN111310462A (zh) | 用户属性的确定方法、装置、设备及存储介质 | |
CN116706907B (zh) | 基于模糊推理的光伏发电预测方法和相关设备 | |
CN116543289B (zh) | 一种基于编码器-解码器及Bi-LSTM注意力模型的图像描述方法 | |
CN108765137A (zh) | 一种信贷需求预测方法和系统、存储介质 | |
CN117454776A (zh) | 基于vmd优化下多层次分解与集成的空中交通流量预测方法 | |
CN110288002B (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 |