CN117389824A - 一种基于信号分解和混合模型的云服务器负载预测方法 - Google Patents
一种基于信号分解和混合模型的云服务器负载预测方法 Download PDFInfo
- Publication number
- CN117389824A CN117389824A CN202311187046.4A CN202311187046A CN117389824A CN 117389824 A CN117389824 A CN 117389824A CN 202311187046 A CN202311187046 A CN 202311187046A CN 117389824 A CN117389824 A CN 117389824A
- Authority
- CN
- China
- Prior art keywords
- data
- time
- cloud server
- training
- signal
- 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
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000000354 decomposition reaction Methods 0.000 title claims abstract description 32
- 238000002156 mixing Methods 0.000 title claims abstract description 16
- 238000012549 training Methods 0.000 claims abstract description 48
- 230000006870 function Effects 0.000 claims abstract description 44
- 230000007246 mechanism Effects 0.000 claims abstract description 22
- 238000012795 verification Methods 0.000 claims abstract description 17
- 238000012360 testing method Methods 0.000 claims abstract description 15
- 238000013135 deep learning Methods 0.000 claims abstract description 11
- 238000007781 pre-processing Methods 0.000 claims abstract description 8
- 238000001914 filtration Methods 0.000 claims abstract description 7
- 230000009467 reduction Effects 0.000 claims abstract description 6
- 238000012544 monitoring process Methods 0.000 claims abstract description 4
- 238000009499 grossing Methods 0.000 claims abstract 2
- 238000013528 artificial neural network Methods 0.000 claims description 25
- 230000008569 process Effects 0.000 claims description 18
- 230000000737 periodic effect Effects 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 13
- 238000010606 normalization Methods 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 8
- 230000007774 longterm Effects 0.000 claims description 8
- 230000009466 transformation Effects 0.000 claims description 8
- 230000004913 activation Effects 0.000 claims description 6
- 230000001364 causal effect Effects 0.000 claims description 4
- 125000004122 cyclic group Chemical group 0.000 claims description 4
- 238000001228 spectrum Methods 0.000 claims description 4
- 238000006467 substitution reaction Methods 0.000 claims description 4
- 238000004422 calculation algorithm Methods 0.000 claims description 3
- 238000011478 gradient descent method Methods 0.000 claims description 3
- 230000000306 recurrent effect Effects 0.000 claims description 3
- 230000001932 seasonal effect Effects 0.000 claims description 3
- 230000001131 transforming effect Effects 0.000 claims description 3
- 238000010200 validation analysis Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 11
- 230000008859 change Effects 0.000 description 5
- 238000000605 extraction Methods 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000007619 statistical method Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- YHXISWVBGDMDLQ-UHFFFAOYSA-N moclobemide Chemical compound C1=CC(Cl)=CC=C1C(=O)NCCN1CCOCC1 YHXISWVBGDMDLQ-UHFFFAOYSA-N 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/10—Pre-processing; Data cleansing
- G06F18/15—Statistical pre-processing, e.g. techniques for normalisation or restoring missing data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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
- G06N3/0442—Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
-
- 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/0464—Convolutional networks [CNN, ConvNet]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Biomedical Technology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Software Systems (AREA)
- Evolutionary Biology (AREA)
- Quality & Reliability (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开一种基于信号分解和混合模型的云服务器负载预测方法。所述方法包括以下步骤:从数据中心监控模块采集到云服务器节点各个资源类型的利用率时间序列数据,进行数据预处理,将处理后的数据按一定比例划分为训练集、验证集和测试集;对预处理过后的数据进行Savitzky‑Golay滤波平滑降噪处理;采用经验小波变换将主机负载信号分解为一组子序列;构建结合了多尺度时间卷积网络和带有双阶段注意力机制的门控循环网络的混合深度学习负载预测模型;将分解后的数据放入负载预测模型中进行训练,待损失函数值小于给定的阈值以后,保存训练好的模型,结束训练;将待测样本输入经过训练后得到的负载预测模型中,获得预测结果,对于非平稳、非线性含噪声的云服务器负载数据具有较好的预测精度。
Description
技术领域
本发明属于计算机云计算领域,具体涉及一种基于信号分解和混合模型的云服务器负载预测方法。
背景技术
云计算是互联网技术发展中的一种创新应用模式,通过高度敏捷和可伸缩的供应模型为云服务使用者提供经济、便利的业务部署与扩展的底层技术方案。在数字经济发展提速的大背景下,越来越多的应用程序和服务被部署到云平台上,服务提供商需要确保以尽可能低的成本满足与用户签署的服务水平协议(SLA)需求。然而,由于云环境的高度动态性和随机性,云中运行的服务时常会面临资源供应不足和过度供应的的问题,这会进一步导致SLA违规与资源浪费,造成云服务商的经济损失。因此,云计算研究人员提出了主动式的服务运行管理技术,通过工作负载预测方法提前进行运行时决策和分配,确保了服务质量(QoS)和协同效率。
在云计算中,对主机负载的准确预测有助于进行各种资源管理操作,如容量规划、负载平衡和服务器整合。对云服务器的负载进行预测采用的是时间序列预测技术。时间序列预测方法主要有三大类方法:基于传统统计学的方法、基于机器学习方法和基于深度学习的预测方法。(D.Saxena,J.Kumar,A.K.Singh and S.Schmid.Performance Analysis ofMachine Learning Centered Workload Prediction Models for Cloud[J].IEEETransactions on Parallel and Distributed Systems,2023,34:1313-1330.)传统统计学方法以ARIMA模型及其变体为主流模型,然而它们都是基于既定的数学模型并根据推到参数来进行时间序列的建模,难以有效地捕获复杂时间序列中的非线性依赖关系,导致最终的预测效果不够理想。机器学习方法将时间序列预测问题视为机器学习中的基本问题之一—回归问题,主要包括线性回归、逻辑回归、支持向量回归和随机森林等方法。相比于统计方法更加适用于多维的、非线性的时间序列数据中,但在数据量较大时,容易出现学习时间过长和过拟合的问题,且它们的特征提取能力仍然无法满足复杂时间序列预测的需要。近年来,由于神经网络出色的非线性拟合能力,许多研究人员都开始运用深度学习方法来解决时间序列预测问题。包括多层感知机、卷积神经网络、循环神经网络、自编码器等多种神经网络结构被广泛地应用于预测问题之中,相比于传统的统计学方法和机器学习方法,能够更好地处理高维和庞大地时间序列数据,在提取多变量时间序列的时序信息和变量之间的依赖关系时具有非常明显的优势。
目前,云环境下的负载预测问题主要存在着以下难点。云环境下的工作负载情况复杂多变,托管在异构云基础设施上的异构应用程序引入了复杂的资源利用模式,带来频繁的变化趋势和波动性质,即便是在同一任务的执行过程中,资源的使用情况也会不断地发生变化,这为预测工作带来了极大的挑战。其次,云服务器上的不同资源用量时间序列之间隐藏着长期依赖的关联信息和周期性的需求模式,这要求预测模型能够从表层的时间序列数据之间挖掘捕获到这些底层的关联特征和模式信息。除此之外,主机负载数据中的噪声变化仍然是影响预测模型准确性的重要因素之一,在保留主要关键信息的同时去除掉干扰预测性能的噪声因素才能更进一步地提升最终的预测结果。因此,针对于云服务器负载预测问题,采用单一的深度学习模型难以有效地提取工作负载或资源使用数据中的长期依赖关系和复杂的利用模式信息。如何根据其负载数据的变化特征设计高效的特征提取模块,然后利用提取到的特征信息对未来的负载变化情况做出准确的预测仍然是一项具有挑战性的工作。
针对云环境下负载预测问题,已有很多研究学者提出了相应的预测方法,中国专利文献CN115499511B“一种基于时空图神经网络负载预测的微服务主动伸缩方法”提出通过使用当前周期服务的指标信息和工作负载数据的ARIMA模型进行预测,该方法的模型较为简单,对数据平稳性有着较强的假设,难以预测非周期性质的复杂时间序列。中国专利文献CN113051130A“结合注意力机制的LSTM网络的移动云负载预测方法及系统”提出通过使用小波变换和特征选择的方法来进行数据预处理,然而这些方法都缺少自适应的特性,例如小波基的选择影响着不同输入样本的分解效果,该方法无法根据输入样本的特性去选择适宜的小波基来分解输入的样本;而通过联合特征选择出来的外生时间序列也仅能保证在测试集上与目标序列强相关,在高度可变的线上环境中无法满足海量服务类型的负载预测需求。且上述研究都未考虑噪声对负载预测所带来的负面影响,无法保证预测模型的稳定性和鲁棒性。
发明内容
本发明的目的在于提供一种基于经验小波变换和混合深度学习方法的云服务器负载预测方法,用以解决现有方法对具有非平稳、非线性且包含噪声的云负载数据预测性能不稳以及预测精度低的问题。
本发明的目的至少通过如下技术方案之一实现。
一种基于信号分解和混合模型的云服务器负载预测方法,包括以下步骤:
S1、从数据中心监控模块采集到云服务器节点各种类型资源的利用率时间序列数据,进行数据预处理,将处理后的数据按比例划分为训练集、验证集和测试集;
S2、对训练集、验证集和测试集进行Savitzky-Golay滤波平滑降噪处理;
S3、采用经验小波变换将主机负载信号分解为一组子序列,并对分解后的每段子序列分别进行归一化处理;
S4、构建结合了多尺度时间卷积网络和带有双阶段注意力机制的门控循环网络的混合深度学习负载预测模型;
S5、将训练集经过SG滤波算法和经验小波变换分解后的数据放入负载预测模型中进行训练,待损失函数值小于给定的阈值以后,结束训练,保存模型参数;
S6、将待预测样本输入到训练好的负载预测模型中,获得预测结果。
进一步地,步骤S1中,所采集到的各个资源类型的利用率时间序列数据主要包括云服务器物理机节点的CPU使用率(也称为工作负载)、内存使用率、磁盘利用率和网络带宽利用率信息。
进一步地,步骤S1中,数据的预处理为缺失值处理;对于缺失值连续数量少于4个的情况,使用前后两个时刻的数值进行插值替代,对于连续缺失值数量超过4个的情况,直接丢弃该段数据;
经过缺失值处理后的数据以设定的比例划分训练集、验证集和测试集,再使用滑动窗口进一步将训练集、验证集、测试集的数据划分为固定长度的训练样本。
进一步地,步骤S2中,利用Savitzky-Golay滤波器对训练集、验证集和测试集中的CPU利用率的时序数据进行平滑降噪处理,对于长度为t的时间序列数据,采用以下方式进行表示:
X={x1,x2,...,xt},t∈N+
其中,X为云服务器某种资源的利用率数据,xt是t时刻的利用率数值;考虑其窗口长度为2m+1的子序列进行基于最小二乘法的多项式拟合:
Y={xr-m,...,xr,...,xr+m},r∈[m+1,t-m]
其中,窗口大小m决定了拟合多项式函数的数据点数量,p(q)为窗口中第q个位置的拟合值,M是多项式阶数,是可以调整的超参数,ε为拟合值与真实值之间的最小二乘残差值,通过最小化残差值ε可以得到最优的多项式系数ak,然后便可以使用拟合值作为平滑后的数据。
进一步地,步骤S3中,利用经验小波变换将主机负载信号分解为一组子序列的具体步骤为:
采用快速傅里叶变换将负载信号从时序变换到频域,定义信号的傅里叶频谱范围为ω∈[0,π],将傅里叶支撑ω在[0,π]上划分为N个连续分段,每段表示为Λn=[ωn-1,ωn],其中ωn-1和ωn分别表示每个分段的边界,并在每个频带边界定义了一个以ωn为中心,长度为2τn的过渡段,其中n=1,2,...,N,ω0=0,ωN=π,τn=γωn且满足:
在分割好的频带基础上,根据Littlewood-Paley和Meyer小波的思想来构造对应频带的滤波器,对于子频带Λn,定义其尺度函数φn(ω)和小波函数Ψn(ω)分别为:
其中,γ(x)是由Daubechies提出的一个满足要求的多项式:
δ(x)=x4(35-84x+70x2-20x3)
细节系数和近似系数/>分别由经验小波的小波函数和尺度函数与信号的内积构造:
其中,和/>分别为Ψn和Φ1的复共轭,f(ω)为信号的傅里叶变换,F-1为傅里叶逆变换,/>和/>分别为Ψn和Φ1的傅里叶变换;
根据在紧支撑框架的基础上构造出的经验小波函数和尺度函数,完成对信号的分解和重构。
进一步地,步骤S3中,所述数据归一化处理为使用Min-Max归一化函数,使处理后的多个时序指标数据的值分布在[0,1]中。
进一步地,步骤S4中,所述混合深度学习负载预测模型主要包括多尺度时间卷积网络和带有双阶段注意力机制的门控循环神经网络两个部分,分别用于提取高频周期分量的季节特征以及低频趋势分量与其他外生时间序列之间长期依赖的关联特征;将两部分特征信息融合之后通过输出最终的预测结果,计算公式如下:
其中,hMSTCN和hDAGRU分别为多尺度时间卷积网络和带有双阶段注意力机制的门控循环网络所提取到的隐藏状态信息,Wo为输出层的权重值,bo为输出层的偏置值,皆为可训练参数。
进一步地,多尺度时间卷积网络输入样本为T∈N+是CPU利用率时间序列信号经过经验小波分解得到的高频子序列,/>为t时刻的具有高频周期特征的部分真值;
用于提取高频周期负载分量特征些信息的时间卷积神经网络主要由堆叠时间卷积网络层所实现,其定义如下:
式中,F(i)为对输入序列X中第i个位置的元素的卷积结果,μ为卷积核,K为卷积核大小,D为空洞因子大小,当D=1时空洞卷积退化为常规卷积;x(i-Dj)控制着卷积运算的方向,即只对i时刻之前的数据进行卷积运算,维持了时间序列数据之间的因果关系。
进一步地,带有双阶段注意力机制的门控循环神经网络的输入样本为 其中X1为CPU利用率时间序列信号经过经验小波分解得到的低频子序列,X2~XC是C-1条长度为T的时间序列,作为外生变量消息,包括内存利用率、网络利用率、磁盘利用率;
采用带有双阶段注意力机制的门控循环网络的对该输入信息进行计算,GRU循环单元在t时刻的具体更新过程如下:
zt=σ(Wz[ht-1,xt]+bz)
rt=σ(Wr[ht-1,xt]+br)
其中,zt、rt分别为GRU的更新门和重置门,为候选记忆单元,σ表示Sigmoid激活函数,tanh表示tanh激活函数,⊙表示Hadamard积;
对于输出第o条时间序列数据利用GRU编码器在t-1时刻生成的隐藏状态ht-1计算输入注意力分数:
其中Ve、We为编码器神经网络的权重值,be为偏置值,都是可训练参数,通过Softmax函数计算得到注意力权重,然后自适应提取外生变量中的相关时间序列信息:
类似地,利用GRU解码器自适应地在所有时间步长选择相关的编码器隐藏状态计算注意力分数:
其中,Vd、Wd为解码器神经网络的权重值,bd为偏置值,都是可训练参数,dt-1为解码器GRU单元在t-1时刻的隐状态向量,hg是编码器GRU单元在g时刻的隐状态向量,将两者连接后的向量作为注意力计算的输入,通过Softmax得到归一化的分数;
由于每个编码器隐藏状态hg都映射到输入的一个时间分量,注意机制将上下文向量conetxtt作为所有编码器隐藏状态{h1,h2,…,hT}的加权和:
最终,DA-GRU网络能够自适应地提取到每个时间步上的不同资源维度上的相关特征信息,在多时间序列之间建立完整地长期依赖关系,将该依赖信息作为负载趋势部分的重要识别特征,由线性输出层集成不同模块所提取的关键信息进行准确的负载预测。
进一步地,步骤S5中,所述负载预测模型训练过程中,损失函数的具体表达式为:
其中,U为训练样本的数量,horizon为预测的步长,和分别代表第ρ个样本的预测值与真实值,λ为正则项系数,θ是模型的训练参数,包括每层神经网络的权重W和偏置值b;模型使用均方误差MSE作为训练过程中的损失函数,通过梯度下降的方法迭代优化神经网络的参数,每一轮迭代完成后使用验证集来检验模型的预测性能,保留误差最小的一组模型参数;当验证损失不再减少时,利用早停法来终止训练过程,以避免过拟合。
与现有技术相比,本发明具有如下的优点和技术效果:
1.提供了一种基于Savitzky-Golay滤波器的数据处理方法,能够有效地去除原始云服务器负载数据中的异常点,使得CPU时间序列数据更加平滑,在降低噪声干扰的同时保留了负载数据中的关键性息,提高了后续预测模型的拟合能力和泛化能力。
2.提供了一种基于经验小波变换的时间序列分解方法,通过提取负载信号频域极大值点分割傅里叶频谱来构造正交小波函数,将原来复杂多变的时序信号自适应地分解为低频光滑的趋势分量以及围绕零值上下波动的一组高频周期分量,得到更易于预测的时序特征,降低了对非平稳、非线性负载数据的建模难度,提升模型的训练效果。
3.所提出的混合深度学习方法结合了多尺度因果膨胀卷积网络和带双阶段注意力机制的门控循环网络,前者通过设置不同的空洞因子能够有效地提取周期分量不同中不同尺度下的周期信息,后者通过注意力机制解决了长时间序列下的信息衰减问题,同时能够自适应地选择其他指标数据中的相关信息来进行趋势预测,融合二者提取到了特征隐变量,使得负载预测模型能够更加全面的建模云服务器负载变化,得到更准确、更鲁棒的预测结果。
附图说明
图1为本发明实施例中的模型训练流程示意图;
图2为本发明实施例中基于经验小波变换对阿里巴巴集群负载数据进行分解结果示意图;
图3为本发明实施例中时间卷积网络的模型示意图;
图4为本发明实施例中输入注意力模块的模型示意图;
图5为本发明实施例中输入时间注意力模块的模型示意图;
图6为本发明实施例中多步预测所采用的方法示意图。
具体实施方式
为了使本发明的技术方案及优点更加清楚明白,以下结合附图,进行对本发明的具体实施进行详细说明,但本发明的实施和保护不限于此。
实施例:
一种基于信号分解和混合模型的云服务器负载预测方法,如图1所示,包括以下步骤:
S1、从数据中心监控模块采集到云服务器节点各种资源类型的利用率时间序列数据,进行数据预处理,将处理后的数据按比例划分为训练集、验证集和测试集;
所述采集的资源利用率数据主要包括云服务器物理机节点的CPU使用率(也称为工作负载)、内存使用率、磁盘利用率和网络带宽利用率信息。
所述数据预处理方法为缺失值处理;对于缺失值连续数量少于4个的情况,使用前后两个时刻的数值进行插值替代,对于连续缺失值数量超过4个的情况,直接丢弃该段数据;
本实施例中,经过缺失值处理后的数据以8:1:1的比例划分训练集、验证集和测试集,根据模型训练的时间窗口和预测步长使用滑动窗口进一步划分为固定长度的训练样本。
S2、对训练集、验证集和测试集进行Savitzky-Golay滤波平滑降噪处理;
利用Savitzky-Golay滤波器对时序数据进行平滑降噪处理,对于长度为t的时间序列数据,采用以下方式进行表示:
X={x1,x2,...,xt},t∈N+
式中,X为云服务器某种资源的利用率数据,xt是t时刻的利用率数值。考虑其窗口长度为2m+1的子序列进行基于最小二乘法的多项式拟合:
Y={xr-m,...,xr,...,xr+m},r∈[m+1,t-m]
其中,窗口大小m决定了拟合多项式函数的数据点数量,p(q)为窗口中第q个位置的拟合值,M是多项式阶数,是可以调整的超参数,ε为拟合值与真实值之间的最小二乘残差值,通过最小化残差值ε可以得到最优的多项式系数ak,然后便可以使用拟合值作为平滑后的数据。
S3、采用经验小波变换将主机负载信号分解为一组的子序列,并对分解后的每段子序列分别进行归一化处理;
利用经验小波变换将主机负载信号分解为一组子序列的具体步骤为:
采用快速傅里叶变换将负载信号从时序变换到频域,定义信号的傅里叶频谱范围为ω∈[0,π],将傅里叶支撑ω在[0,π]上划分为N个连续分段,每段可表示为σn=[ωn-1,ωn],其中ωn-1和ωn分别表示每个分段的边界,并在每个频带边界定义了一个以ωn为中心,长度为2τn的过渡段,其中n=1,2,...,N,ω0=0,ωN=π,τn=γωn且满足:
在分割好的频带基础上,根据Littlewood-Paley和Meyer小波的思想来构造对应频带的滤波器,对于子频带Λn,定义其尺度函数φn(ω)和小波函数Ψn(ω)分别为:
其中,δ(x)是由Daubechies提出的一个满足要求的多项式:
δ(x)=x4(35-84x+70x2-20x3)
细节系数和近似系数/>分别由经验小波的小波函数和尺度函数与信号的内积构造:
其中,和/>分别为Ψn和Φ1的复共轭,f(ω)为信号的傅里叶变换,F-1为傅里叶逆变换,/>和/>分别为Ψn和Φ1的傅里叶变换;
根据在紧支撑框架的基础上构造出的经验小波函数和尺度函数,完成对信号的分解和重构。
如图2所示,基于经验小波变换对阿里巴巴集群数据集进行分解得到4条子序列IMF1~IMF4;其中一条数据表现出低频光滑的特点,反映负载变换的趋势特点,剩余高频子序列随零值上下波动,具有一定的周期特性,因此根据数据特点采用不同的模型对趋势分量和周期分量进行建模;且由于趋势项和周期项的数值范围不同,所以分别对每段子序列进行归一化处理:
所述数据归一化处理为使用Min-Max归一化函数,使处理后的多个时序指标数据的值分布在[0,1]中。
S4、构建结合了多尺度时间卷积网络和带有双阶段注意力机制的门控循环网络的混合深度学习负载预测模型;
所述混合深度学习负载预测模型主要包括多尺度时间卷积网络和带有双阶段注意力机制的门控循环神经网络两个部分,分别用于提取高频周期分量的季节特征以及低频趋势分量与其他外生时间序列之间长期依赖的关联特征。将两部分特征信息融合之后通过输出最终的预测结果,计算公式如下:
其中,hMSTCN和hDAGRU分别为多尺度时间卷积网络和带有双阶段注意力机制的门控循环网络所提取到的隐藏状态信息,Wo为输出层的权重值,bo为输出层的偏置值,皆为可训练参数。
多尺度时间卷积网络输入样本为T∈N+是CPU利用率时间序列信号经过经验小波分解得到的高频子序列,/>为t时刻的具有高频周期特征的部分真值。
用于提取高频周期负载分量特征些信息的时间卷积神经网络主要由堆叠时间卷积网络层所实现,其定义如下:
式中,F(i)为对输入序列X中第i个位置的元素的卷积结果,μ为卷积核,K为卷积核大小,D为空洞因子大小,当D=1时空洞卷积退化为常规卷积;x(i-Dj)控制着卷积运算的方向,即只对i时刻之前的数据进行卷积运算,维持了时间序列数据之间的因果关系。通过采用不同的大小空洞因子提取高频周期部分子序列不同周期尺度下的特征信息,同时,利用堆叠卷积网络的方式进一步提升感受野大小。
如图3所示,该示意图展现了一个底层空洞因子D=3的三层时间卷积网络的结构图,对底层时间序列数据进行等间距周期跨度的特征提取,并通过堆叠卷积层数实现层次化的特征提取,由局部周期信息扩展到全局周期信息。底层采用不同空洞因子提取不同周期跨度的信息,即为多尺度时间卷积网络MSTCN。
带有双阶段注意力机制的门控循环神经网络的输入样本为其中X1为CPU利用率时间序列信号经过经验小波分解得到的低频子序列,X2~XC是C-1条长度为T的时间序列,作为外生变量消息,包括内存利用率、网络利用率、磁盘利用率;
采用带有双阶段注意力机制的门控循环网络的对该输入信息进行计算,GRU循环单元在t时刻的具体更新过程如下:
zt=σ(Wz[ht-1,xt]+bz)
rt=σ(Wr[ht-1,xt]+br)
其中,zt、rt分别为GRU的更新门和重置门,为候选记忆单元,σ表示Sigmoid激活函数,tanh表示tanh激活函数,⊙表示Hadamard积;
如图4所示,为输入注意力模块的模型示意图,对于输出第o条时间序列数据 利用GRU编码器在t-1时刻生成的隐藏状态ht-1计算输入注意力分数:
其中Ve,We为神经网络的权重值,be为偏置值,都是可训练参数,通过Softmax函数计算得到注意力权重,然后自适应地提取外生变量中的相关时间序列信息:
如图5所示,为时间注意力模块的模型示意图,类似地,利用GRU解码器自适应地在所有时间步长选择相关的编码器隐藏状态进行注意力分数的计算:
其中,Vd、Wd为解码器神经网络的权重值,bd为偏置值,都是可训练参数,dt-1为解码器GRU单元在t-1时刻的隐状态向量,hg是编码器GRU单元在g时刻的隐状态向量,将两者连接后的向量作为注意力计算的输入,通过Softmax得到归一化的分数;
由于每个编码器隐藏状态hg都映射到输入的一个时间分量,注意机制将上下文向量conetxtt作为所有编码器隐藏状态{h1,h2,…,hT}的加权和:
最终,DA-GRU网络能够自适应地提取到每个时间步上的不同资源维度上的相关特征信息,在多时间序列之间建立完整地长期依赖关系,将该依赖信息作为负载趋势部分的重要识别特征,由线性输出层集成不同模块所提取的关键信息进行准确的负载预测。
S5、将所述训练集经过SG滤波算法和经验小波变换分解后的数据放入负载预测模型中进行训练,待损失函数值小于给定的阈值以后,结束训练,保存模型参数;
所述负载预测模型训练过程中,所述损失函数的具体表达式为:
其中,U为训练样本的数量,horizon为预测的步长,和分别代表第ρ个样本的预测值与真实值,λ为正则项系数,θ是模型的训练参数,包括每层神经网络的权重W和偏置值b;模型使用均方误差MSE作为训练过程中的损失函数,通过梯度下降的方法迭代优化神经网络的参数,每一轮迭代完成后使用验证集来检验模型的预测性能,保留误差最小的一组模型参数;当验证损失不再减少时,利用早停法来终止训练过程,以避免过拟合。
S6、将待预测样本输入到训练好的负载预测模型中,获得预测结果。
由于实际的资源管理往往需要未来一段时间的资源使用情况,用来保障调度方案的时效性,因此需要一种多步时间序列预测的方案来增加预测长度;图6是用于实现该要求所采用的Seq2Seq模型,该模型具有较好的性能表现,同时实现简单,更容易被现实场景所采用;以DA-RNN和MSTCN作为特征提取模块,将提取到的隐状态传输给预测模块,结合上一步的预测结果来更新隐状态并输出预测结果,通过这种迭代输出的方式来进行多步主机负载预测预测。
上述流程为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (10)
1.一种基于信号分解和混合模型的云服务器负载预测方法,其特征在于,包括以下步骤:
S1、从数据中心监控模块采集到云服务器节点各种类型资源的利用率时间序列数据,进行数据预处理,将处理后的数据按比例划分为训练集、验证集和测试集;
S2、对训练集、验证集和测试集进行Savitzky-Golay滤波平滑降噪处理;
S3、采用经验小波变换将主机负载信号分解为一组子序列,并对分解后的每段子序列分别进行归一化处理;
S4、构建结合了多尺度时间卷积网络和带有双阶段注意力机制的门控循环网络的混合深度学习负载预测模型;
S5、将训练集经过SG滤波算法和经验小波变换分解后的数据放入负载预测模型中进行训练,待损失函数值小于给定的阈值以后,结束训练,保存模型参数;
S6、将待预测样本输入到训练好的负载预测模型中,获得预测结果。
2.根据权利要求1所述的一种基于信号分解和混合模型的云服务器负载预测方法,其特征在于,步骤S1中,所采集到的各个资源类型的利用率时间序列数据主要包括云服务器物理机节点的CPU使用率、内存使用率、磁盘利用率和网络带宽利用率信息。
3.根据权利要2所述的一种基于信号分解和混合模型的云服务器负载预测方法,其特征在于,步骤S1中,数据的预处理为缺失值处理;对于缺失值连续数量少于4个的情况,使用前后两个时刻的数值进行插值替代,对于连续缺失值数量超过4个的情况,直接丢弃该段数据;
经过缺失值处理后的数据以设定的比例划分训练集、验证集和测试集,再使用滑动窗口进一步将训练集、验证集、测试集的数据划分为固定长度的训练样本。
4.根据权利要求1所述的一种基于信号分解和混合模型的云服务器负载预测方法,其特征在于,步骤S2中,利用Savitzky-Golay滤波器对训练集、验证集和测试集中的CPU利用率的时序数据进行平滑降噪处理,对于长度为t的时间序列数据,采用以下方式进行表示:
X={x1,x2,...,xt},t∈N+
其中,X为云服务器某种资源的利用率数据,xt是t时刻的利用率数值;考虑其窗口长度为2m+1的子序列进行基于最小二乘法的多项式拟合:
Y={xr-m,...,xr,...,xr+m},r∈[m+1,t-m]
其中,窗口大小m决定了拟合多项式函数的数据点数量,p(q)为窗口中第q个位置的拟合值,M是多项式阶数,是可以调整的超参数,ε为拟合值与真实值之间的最小二乘残差值,通过最小化残差值ε得到最优的多项式系数ak,然后使用拟合值作为平滑后的数据。
5.根据权利要求1所述的一种基于信号分解和混合模型的云服务器负载预测方法,其特征在于,步骤S3中,利用经验小波变换将主机负载信号分解为一组子序列的具体步骤为:
采用快速傅里叶变换将负载信号从时序变换到频域,定义信号的傅里叶频谱范围为ω∈[0,π],将傅里叶支撑ω在[0,π]上划分为N个连续分段,每段表示为Λn=[ωn-1,ωn],其中ωn-1和ωn分别表示每个分段的边界,并在每个频带边界定义了一个以ωn为中心,长度为2τn的过渡段,其中n=1,2,...,N,ω0=0,ωN=π,τn=γωn且满足:
在分割好的频带基础上,根据Littlewood-Paley和Meyer小波的思想来构造对应频带的滤波器,对于子频带Λn,定义其尺度函数φn(ω)和小波函数Ψn(ω)分别为:
其中,δ(x)是由Daubechies提出的一个满足要求的多项式:
δ(x)=x4(35-84x+70x2-20x3)
细节系数和近似系数/>分别由经验小波的小波函数和尺度函数与信号的内积构造:
其中,和/>分别为Ψn和Φ1的复共轭,f(ω)为信号的傅里叶变换,F-1为傅里叶逆变换,/>和/>分别为Ψn和Φ1的傅里叶变换;
根据在紧支撑框架的基础上构造出的经验小波函数和尺度函数,完成对信号的分解和重构。
6.根据权利要求1所述的一种基于信号分解和混合模型的云服务器负载预测方法,其特征在于,步骤S3中,所述数据归一化处理为使用Min-Max归一化函数,使处理后的多个时序指标数据的值分布在[0,1]中。
7.根据权利要求1所述的一种基于信号分解和混合模型的云服务器负载预测方法,其特征在于,步骤S4中,所述混合深度学习负载预测模型主要包括多尺度时间卷积网络和带有双阶段注意力机制的门控循环神经网络两个部分,分别用于提取高频周期分量的季节特征以及低频趋势分量与其他外生时间序列之间长期依赖的关联特征;将两部分特征信息融合之后通过输出最终的预测结果,计算公式如下:
其中,hMSTCN和hDAGRU分别为多尺度时间卷积网络和带有双阶段注意力机制的门控循环网络所提取到的隐藏状态信息,Wo为输出层的权重值,bo为输出层的偏置值,皆为可训练参数。
8.根据权利要求7所述的一种基于信号分解和混合模型的云服务器负载预测方法,其特征在于,多尺度时间卷积网络输入样本为是CPU利用率时间序列信号经过经验小波分解得到的高频子序列,/>为t时刻的具有高频周期特征的部分真值;
用于提取高频周期负载分量特征些信息的时间卷积神经网络主要由堆叠时间卷积网络层所实现,其定义如下:
其中,F(i)为对输入序列X中第i个位置的元素的卷积结果,h为卷积核,K为卷积核大小,D为空洞因子大小,当D=1时空洞卷积退化为常规卷积;x(i-Dj)控制着卷积运算的方向,即只对i时刻之前的数据进行卷积运算,维持了时间序列数据之间的因果关系。
9.根据权利要求7所述所述的一种基于信号分解和混合模型的云服务器负载预测方法,其特征在于,带有双阶段注意力机制的门控循环神经网络的输入样本为 其中X1为CPU利用率时间序列信号经过经验小波分解得到的低频子序列,X2~XC是C-1条长度为T的时间序列,作为外生变量消息,包括内存利用率、网络利用率、磁盘利用率;
采用带有双阶段注意力机制的门控循环网络的对该输入信息进行计算,GRU循环单元在t时刻的具体更新过程如下:
zt=σ(Wz[ht-1,xt]+bz)
rt=σ(Wr[ht-1,xt]+br)
其中,zt、rt分别为GRU的更新门和重置门,为候选记忆单元,σ表示Sigmoid激活函数,tanh表示tanh激活函数,⊙表示Hadamard积;
对于输出第o条时间序列数据利用GRU编码器在t-1时刻生成的隐藏状态ht-1计算输入注意力分数:
其中Ve、We为编码器神经网络的权重值,be为偏置值,都是可训练参数,通过Softmax函数计算得到注意力权重,然后自适应提取外生变量中的相关时间序列信息:
类似地,利用GRU解码器自适应地在所有时间步长选择相关的编码器隐藏状态计算注意力分数:
其中,Vd、Wd为解码器神经网络的权重值,bd为偏置值,都是可训练参数,dt-1为解码器GRU单元在t-1时刻的隐状态向量,hg是编码器GRU单元在g时刻的隐状态向量,将两者连接后的向量作为注意力计算的输入,通过Softmax得到归一化的分数;
由于每个编码器隐藏状态hg都映射到输入的一个时间分量,注意机制将上下文向量conetxtt作为所有编码器隐藏状态{h1,h2,…,hT}的加权和:
最终,DA-GRU网络能够自适应地提取到每个时间步上的不同资源维度上的相关特征信息,在多时间序列之间建立完整地长期依赖关系,将该依赖信息作为负载趋势部分的重要识别特征,由线性输出层集成不同模块所提取的关键信息进行准确的负载预测。
10.根据权利要求1所述所述的一种基于信号分解和混合模型的云服务器负载预测方法,其特征在于,步骤S5中,所述负载预测模型训练过程中,损失函数的具体表达式为:
其中,U为训练样本的数量,horizon为预测的步长,和/>分别代表第ρ个样本的预测值与真实值,λ为正则项系数,θ是模型的训练参数,包括每层神经网络的权重W和偏置值b;模型使用均方误差MSE作为训练过程中的损失函数,通过梯度下降的方法迭代优化神经网络的参数,每一轮迭代完成后使用验证集来检验模型的预测性能,保留误差最小的一组模型参数;当验证损失不再减少时,利用早停法来终止训练过程,以避免过拟合。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311187046.4A CN117389824A (zh) | 2023-09-14 | 2023-09-14 | 一种基于信号分解和混合模型的云服务器负载预测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311187046.4A CN117389824A (zh) | 2023-09-14 | 2023-09-14 | 一种基于信号分解和混合模型的云服务器负载预测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117389824A true CN117389824A (zh) | 2024-01-12 |
Family
ID=89462027
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311187046.4A Pending CN117389824A (zh) | 2023-09-14 | 2023-09-14 | 一种基于信号分解和混合模型的云服务器负载预测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117389824A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117634930A (zh) * | 2024-01-24 | 2024-03-01 | 南京信息工程大学 | 一种台风云图预测方法、系统及存储介质 |
CN117676149A (zh) * | 2024-02-02 | 2024-03-08 | 中国科学技术大学 | 一种基于频域分解的图像压缩方法 |
CN117768469A (zh) * | 2024-02-22 | 2024-03-26 | 广州宇中网络科技有限公司 | 一种基于大数据的云服务管理方法及系统 |
CN117937475A (zh) * | 2024-03-21 | 2024-04-26 | 合肥工业大学 | 基于多模态时序学习的负荷预测模型、方法和系统 |
CN117971511A (zh) * | 2024-04-02 | 2024-05-03 | 青岛欧亚丰科技发展有限公司 | 一种协作式可视化仿真平台 |
CN117969958A (zh) * | 2024-04-02 | 2024-05-03 | 杭州永德电气有限公司 | 一种电阻片配组产品检测方法及系统 |
-
2023
- 2023-09-14 CN CN202311187046.4A patent/CN117389824A/zh active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117634930A (zh) * | 2024-01-24 | 2024-03-01 | 南京信息工程大学 | 一种台风云图预测方法、系统及存储介质 |
CN117634930B (zh) * | 2024-01-24 | 2024-03-29 | 南京信息工程大学 | 一种台风云图预测方法、系统及存储介质 |
CN117676149A (zh) * | 2024-02-02 | 2024-03-08 | 中国科学技术大学 | 一种基于频域分解的图像压缩方法 |
CN117676149B (zh) * | 2024-02-02 | 2024-05-17 | 中国科学技术大学 | 一种基于频域分解的图像压缩方法 |
CN117768469A (zh) * | 2024-02-22 | 2024-03-26 | 广州宇中网络科技有限公司 | 一种基于大数据的云服务管理方法及系统 |
CN117768469B (zh) * | 2024-02-22 | 2024-06-07 | 广州宇中网络科技有限公司 | 一种基于大数据的云服务管理方法及系统 |
CN117937475A (zh) * | 2024-03-21 | 2024-04-26 | 合肥工业大学 | 基于多模态时序学习的负荷预测模型、方法和系统 |
CN117971511A (zh) * | 2024-04-02 | 2024-05-03 | 青岛欧亚丰科技发展有限公司 | 一种协作式可视化仿真平台 |
CN117969958A (zh) * | 2024-04-02 | 2024-05-03 | 杭州永德电气有限公司 | 一种电阻片配组产品检测方法及系统 |
CN117969958B (zh) * | 2024-04-02 | 2024-06-07 | 杭州永德电气有限公司 | 一种电阻片配组产品检测方法及系统 |
CN117971511B (zh) * | 2024-04-02 | 2024-07-12 | 青岛欧亚丰科技发展有限公司 | 一种协作式可视化仿真平台 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN117389824A (zh) | 一种基于信号分解和混合模型的云服务器负载预测方法 | |
Lei et al. | GCN-GAN: A non-linear temporal link prediction model for weighted dynamic networks | |
Abdelmoniem et al. | Refl: Resource-efficient federated learning | |
Reunanen et al. | Unsupervised online detection and prediction of outliers in streams of sensor data | |
Li et al. | A novel double incremental learning algorithm for time series prediction | |
US20200193075A1 (en) | System and method for constructing a mathematical model of a system in an artificial intelligence environment | |
Dogani et al. | Multivariate workload and resource prediction in cloud computing using CNN and GRU by attention mechanism | |
CN114066073A (zh) | 电网负荷预测方法 | |
Li et al. | Robust and flexible strategy for missing data imputation in intelligent transportation system | |
Yang et al. | An ensemble prediction system based on artificial neural networks and deep learning methods for deterministic and probabilistic carbon price forecasting | |
Qi et al. | An efficient GAN-based predictive framework for multivariate time series anomaly prediction in cloud data centers | |
Yu et al. | DWE-IL: a new incremental learning algorithm for non-stationary time series prediction via dynamically weighting ensemble learning | |
Wan et al. | Multi-task sequence learning for performance prediction and KPI mining in database management system | |
Feng et al. | Latent diffusion transformer for probabilistic time series forecasting | |
Liu et al. | Federated multi-task graph learning | |
Feng et al. | Spatiotemporal prediction based on feature classification for multivariate floating-point time series lossy compression | |
Zhou et al. | Online recommendation based on incremental-input self-organizing map | |
CN112463964B (zh) | 文本分类及模型训练方法、装置、设备及存储介质 | |
Aceituno et al. | Tailoring artificial neural networks for optimal learning | |
Daraghmeh et al. | A multilevel learning model for predicting CPU utilization in cloud data centers | |
Xiao et al. | Enhanced-xgb: An online service resource demand forecasting method for colocation data centers | |
He et al. | GraphGRU: A graph neural network model for resource prediction in microservice cluster | |
Ling | Score Prediction of Sports Events Based on Parallel Self‐Organizing Nonlinear Neural Network | |
Zhang et al. | Bayes‐Decisive Linear KNN with Adaptive Nearest Neighbors | |
Chen et al. | Automated Machine Learning |
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 |