基于LSTM-ACO模型预测云服务器资源性能的方法技术

技术编号:28034617 阅读:30 留言:0更新日期:2021-04-09 23:16
本发明专利技术公开基于LSTM‑ACO模型预测云服务器资源性能的方法,首先将时间序列数据进行预处理,将原始序列数据映射到[0,1]区间。然后确定LSTM模型,对于现有的数据进行训练并预测,并利用蚁群算法优化LSTM模型。最后将LSTM模型对于时刻t数据的预测结果和时刻t‑1,t‑2,…,t‑n的数据,输入给LSTM‑ACO模型,并对时刻t的数据进行预测。本发明专利技术基于LSTM‑ACO模型预测云服务器资源性能的方法,克服了传统的预测方法预测过程中精度不高的问题,且利用ACO对LSTM参数进行优化,避免模型陷入局部最优解的问题,提高了预测收敛速度。最终实现了对云服务器资源和性能预测,更精确地预测软件老化现象。

【技术实现步骤摘要】
基于LSTM-ACO模型预测云服务器资源性能的方法
本专利技术属于时间序列预测
,具体涉及一种基于长短期记忆(LongShort-TermMemory,LSTM)循环神经网络与蚁群算法(AntColonyOptimization,ACO)的模型预测云服务器资源性能的方法。
技术介绍
随着现代计算机技术和云计算的发展,云服务器使用越来越普遍。云服务器具有长期运行、高复杂性和资源交换频繁的特点,这增加了资源耗尽和软件系统出现异常和故障的风险。随着故障和资源消耗的累积,云服务器系统会出现缓慢的性能下降,故障率增加甚至崩溃。这种现象称为“软件老化”。软件老化的主要原因包括操作系统资源的消耗、数据的破坏以及误差的积累。这些现象都是随时间的推移逐渐积累,会使软件的性能恶化并可能导致软件系统的突然崩溃或停机。在重要的系统,如军事国防、电信系统、金融系统、证券系统、商业系统等应用中,随着系统复杂性的提高,系统错误因素越来越集中在软件系统中,而其中越来越值得关注的问题就是软件老化。一旦系统的软件发生故障,就会影响整个业务系统的正常运行,给企业事业单位带来无可估量的经济损失。常用的应对软件老化的方法是“软件再生”技术。该技术通过清理故障,在全局故障或部分故障发生之前主动恢复系统。软件再生技术很大程度上取决于软件再生的时间。停机时间或者由此类操作引起的开销是不可忽略的,频繁的软件再生可能会对系统可用性造成负面影响。而理想的软件再生策略是在系统接近故障前进行恢复。因此对软件老化趋势的准确预测,计算老化阈值,可以为云系统在线预维护提供理论依据。现有的对于云服务器系统软件老化趋势的预测方法,大多数为时间序列分析或智能算法。时间序列分析法采用循环神经网络、粒子滤波等模型进行趋势预测,模型简单,但所需数据量大且对于波动较大的数据预测精度较低。智能算法包括神经网络、支持向量机等,该类算法在预测时间序列数据时,预测精度亦不高。云服务器资源和性能数据具有非线性、随机性和突发性的特点,因此上述现有的预测方法云服务器资源和性能数据的预测精度不高,尤其是数据变化较为剧烈的区间内,预测精度更低。
技术实现思路
本专利技术的目的是提供一种使用LSTM-ACO模型的云服务器资源性能预测方法。解决了传统的预测方法对波动较大的云服务器资源性能数据,预测精度不高的问题。并且提出了利用蚁群算法来优化参数的时间序列数据计算方法,克服了模型预测过程中易陷入局部最优解、收敛速度慢且不稳定的问题。LSTM-ACO预测方法能够提取云服务器系统的特征变化,最终实现了对云服务器系统性能参数的高准确率预测并分析,更精确地预测软件老化现象。本专利技术所采用的技术方案是,一种使用LSTM-ACO模型的云服务器资源性能预测方法,包括以下步骤:步骤1,收集云服务器系统的资源和性能数据;步骤2,获取云服务器系统资源和性能序列数据,所述资源和性能序列数据包括:CPU空闲率、可用内存、平均负载和响应时间;步骤3,对步骤2获取的序列数据进行预处理操作;步骤4,使用步骤3得到的数据构建LSTM模型,并获得LSTM模型对步骤3所得数据的预测值;步骤5,利用蚁群算法对步骤4得到的LSTM模型进行参数优化得到LSTM-ACO模型;步骤6,使用步骤5得到的LSTM-ACO模型预测步骤3得到的数据并于步骤4得到的数据对比;步骤7,利用LSTM-ACO模型的预测值和现有的序列数据对未来数据进行预测。步骤3中,对序列数据采用归一化处理方法进行预处理,将原始序列数据映射到[0,1]区间,具体方法是:先计算得序列数据的最大值和最小值,分别记为Xmax和Xmin;然后使用序列数据中的每个数据减去Xmin,再除以Xmax-Xmin。步骤4中,构建LSTM模型具体方法包括输入层、隐藏层、输出层、网络训练以及网络预测5个功能模块。输入层负责对原始响应时间序列进行初步处理以满足网络输入要求,隐藏层搭建单层循环神经网络,输出层提供预测结果网络,网络预测模块采用迭代的方法逐点预测。首先在输入层中,定义已经归一化后的原始响应时间序列为Fo={f1,f2,…,fn},则划分的训练集和测试集可以表示为Ftr={f1,f2,…,fm}和Fte={fm+1,fm+2,…,fn},满足约束条件m<n和m,n∈N。为了适应隐藏层输入的特点,应用数据分割的方法对Ftr进行处理,设分割长度取值为L,则分割后的模型为X={X1,X2,…,XL},Xp={fp,fp+1,…,fm-L+p-1},并有1≤p≤L;p,L∈N。对应的理论输出为Y={Y1,Y2,…,YL},YP={fp+1,fp+2,…,fm-L+p}。接下来,将X输入隐藏层,隐藏层包含L个按前后时刻连接的同构LSTM细胞,X经过隐藏层后的输出可以表示为P={P1,P2,…,PL},Pp=LSTMforward(Xp,Cp-1,Hp-1),式中Cp-1和Hp-1分别为前一个LSTM细胞的状态和输出;LSTMforward表示LSTM向前细胞计算方法。设定细胞状态向量大小为Sstate,则Cp-1和Hp-1两个向量的大小均为Sstate。可以看出隐藏层输出P、模型输入X和理论输出Y都是维度为(m-L,L)的二维数组。选用均方误差作为误差计算公式,训练过程的损失函数可以定义为:设定损失函数最小为优化目标,不断更新网络权重,进而得到最终的隐藏层网络。步骤5中,用蚁群算法对步骤4得到的LSTM模型进行参数优化的具体方法是:1)随机产生一个有多个个体的蚂蚁种群。2)初始化参数:蚂蚁规模(蚂蚁数量)M、最大迭代次数Nmax、初次迭代次数N=1、信息素重要程度因子α、启发函数重要程度因子β、信息素挥发因子ρ、信息素挥发总量Q、信息素量τij(t)=C。3)待优化的参数总数设置为m,将其组成一个集合Pi(1≤i≤m),每个参数随机获取一个非零值,组成另一个集合SPi。4)m只蚂蚁随机放在r个顶点上,启动全部蚂蚁,蚂蚁k(k=1,2,…,M)随机的从SPi中获取一组参数值,按照公式(1)(蚁群路径选择概率公式),选择集合中的下一组参数值,直到每一只蚂蚁完全获取一组参数值。概率公式如下公式(1):其中τj(SPi)为集合SPi中某j组权阈值组合的信息素浓度。5)将k(k=1,2,…,M)只蚂蚁获取的值作为LSTM参数,对样本进行训练,得出实际输出与期望输出的误差值σ,其中σ=|Outputa-Outpute|,Outputa为实际输出,Outpute为期望输出。设置期望误差ξ,找出不大于期望误差的输出误差集合σi(1≤i≤M),并找到最小误差,其对应的蚂蚁获取的权值阈值即是最优或者较优解。6)当迭代次数或者输出误差不满足时,在完成一次循环后需要更新信息素,公式如下:其中表示次循环中第k只蚂蚁在集合SPi中,第j个元素在路径上释放的信息素浓度;表示所有蚂蚁在集合SPi中第j个元素在路径上释放的信息素浓度。7)当迭代次数或本文档来自技高网
...

【技术保护点】
1.基于LSTM-ACO模型预测云服务器资源性能的方法,其特征在于,包括以下步骤:/n步骤1,收集云服务器的资源和性能数据;/n步骤2,获取云服务器资源和性能序列数据,所述资源和性能序列数据包括:CPU空闲率、可用内存、平均负载和响应时间;/n步骤3,对步骤2获取得的序列数据进行预处理操作;/n步骤4,使用步骤3得到的数据构建LSTM模型,并利用该模型获得LSTM模型对步骤3所得数据的预测值;/n步骤5,利用蚁群算法对步骤4得到的LSTM模型来进行参数优化,构建LSTM-ACO模型;/n步骤6,使用步骤5得到的LSTM-ACO模型预测步骤3得到的数据并与步骤4得到的数据对比;/n步骤7,利用LSTM-ACO模型的预测值和现有的序列数据对未来数据进行预测。/n

【技术特征摘要】
1.基于LSTM-ACO模型预测云服务器资源性能的方法,其特征在于,包括以下步骤:
步骤1,收集云服务器的资源和性能数据;
步骤2,获取云服务器资源和性能序列数据,所述资源和性能序列数据包括:CPU空闲率、可用内存、平均负载和响应时间;
步骤3,对步骤2获取得的序列数据进行预处理操作;
步骤4,使用步骤3得到的数据构建LSTM模型,并利用该模型获得LSTM模型对步骤3所得数据的预测值;
步骤5,利用蚁群算法对步骤4得到的LSTM模型来进行参数优化,构建LSTM-ACO模型;
步骤6,使用步骤5得到的LSTM-ACO模型预测步骤3得到的数据并与步骤4得到的数据对比;
步骤7,利用LSTM-ACO模型的预测值和现有的序列数据对未来数据进行预测。


2.根据权利要求1所述的基于LSTM-ACO模型预测云服务器资源性能的方法,其特征在于,所述步骤3中,对序列数据采用归一化处理方法进行预处理,将原始序列数据映射到[0,1],具体方法是:
计算得序列数据的最大值和最小值,分别记为Xmax和Xmin;
使用序列数据中的每个数据减去Xmin再除以Xmin-Xmin。


3.根据权利要求1所述的基于LSTM-ACO模型预测云服务器资源性能的方法,其特征在于,所述步骤4中,构建LSTM模型的方法是:
构建模型包括输入层、隐藏层、输出层、网络训练以及网络预测5个功能模块;输入层负责对原始响应时间序列进行初步处理以满足网络输入要求,隐藏层采用LSTM细胞搭建单层循环神经网络,输出层提供预测结果网络,网络预测采用迭代的方法逐点预测。


4.根据权利要求3所述的基于LSTM-ACO模型预测云服务器资源性能的方法,其特征在于,所述构建LSTM模型的具体步骤为:
首先在输入层中,定义已经归一化后的原始响应时间序列为Fo={f1,f2,…,fn},则划分的训练集和测试集可以表示为Ftr={f1,f2,…,fm}和Fte={fm+1,fm+2,…,fn},满足约束条件m<n和m,n∈N;为了适应隐藏层输入的特点,应用数据分割的方法对Ftr进行处理,设分割长度取值为L,则分割后的模型为X={X1,X2,…,XL},Xp={fp,fp+1,…,fm-L+p-1},并有1≤p≤L;p,L∈N。对应的理论输出为Y={Y1,Y2,…,YL},YP={fp+1,fp+2,…,fm-L+p};
接下来,将X输入隐藏层,隐藏层包含L个按前后时刻连接的同构LSTM细胞,X经过隐藏层后的输出可以表示为P={P1,P2,…,PL},Pp=LSTMforw...

【专利技术属性】
技术研发人员:孟海宁李维石月开童新宇冯锴朱磊黑新宏
申请(专利权)人:西安理工大学
类型:发明
国别省市:陕西;61

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

1