一种基于长短期记忆网络的云数据中心负载预测方法技术

技术编号:18237580 阅读:124 留言:0更新日期:2018-06-17 00:43
本发明专利技术公开一种基于长短期记忆网络(LSTM)的云数据中心负载预测方法,旨在解决云数据中心有限的计算资源无法得到最优利用的问题。该方法以云数据中心的海量历史记录为基础制作训练样本和测试样本,另构建一由LSTM单元连接而成的神经网络,不断地成批输入训练样本,得到输出值;所述神经网络优化算法采用较新的适应性矩估计法,通过迭代训练不断更新各单元中的参数,使得全局达到最优;训练完毕后,只需将测试样本输入网络就能得到该样本序列的下一个预测值;如果用预测值不断更新输入序列,还能够获取未来一段时间的预测值序列。 1

A load forecasting method for cloud data center based on long term and short term memory network

The invention discloses a cloud data center load prediction method based on the long and short memory network (LSTM), which aims to solve the problem that the limited computing resources of the cloud data center can not be optimized. This method makes training samples and test samples based on the mass historical records of the cloud data center, and constructs a neural network connected by the LSTM unit, and constantly inputs the training samples in batch and gets the output value. The neural network optimization algorithm uses a new adaptive moment estimation method and is continuously trained through iterative training. The parameters in the new units make the global optimal. After the training, the next prediction value of the sample sequence can be obtained by entering the test sample into the network. If the input sequence is constantly updated with the predicted value, the prediction value sequence of the future time can be obtained. One

【技术实现步骤摘要】
一种基于长短期记忆网络的云数据中心负载预测方法
本专利技术云计算
,尤其涉及一种基于长短期记忆网络的云数据中心负载预测方法。
技术介绍
云计算是基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源,可以通过网络向海量的,不同优先等级的用户提供按需的计算资源和计算结果。云数据中心中的资源通常采用一种按需付费使用的模式动态地向用户提供服务。按照美国国家标准技术研究院(NationalInstituteofStandardsandTechnology,NIST)的定义,这种模式提供可用的、便捷的、按需的网络访问,进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用软件,服务),并且这些资源能够被快速提供。但这些资源往往再多也是不够的,因为信息社会对大规模数据计算的需求巨大,且仍有不断增长之势,经常会出现大规模任务请求“蜂拥而至”的情形。在这种情形下,云数据中心往往因未能将计算资源做最优分配导致计算速度减慢,工作效率低下,大批请求长期处于等待状态,能源空耗等异常情况。这不仅会导致计算服务盈利减少,投入产出比下降,还会损坏信誉和口碑。为保证云数据中心始终正常工作,高效且保质保量地全部计算任务,任务调度必不可少。有效调度的前提是能够提前估计出未来一段时间内各优先级的任务负载和单位任务平均资源申请量,对这两项指标的准确预测是正确调配计算资源,从而达到全局优化的有力保障。长短期记忆型网络(LongShort-TermMemory,LSTM),是时间递归神经网络(RNN)的一种特殊形式。不同于前馈网络,它不断将自身的输出作为输入,随着递归次数的增加,网络在第t-1个时间步的判断会影响第t个时间步的判断,这种反馈循环与现实生活中“由已知推可知,再推未知”的推导行为在本质上是一致的,该方法是有记忆的。针对传统RNN存在的“远程学习能力差”(由于存在梯度消失,当学习信息和预测位的间隔拉大,RNN推断能力下降明显)问题,LSTM对每个神经单元进行了改进,设计了细胞状态C和增加,去除信息到细胞状态能力的“门”结构,其内部结构如图2所示。一个门结构由一个sigmoid层h和一个pointwise乘法操作组成,其目的是用sigmod层产生的权重筛选信息,控制数据流动,决定信息是否通过。一个LSTM单元内拥有三个门:分别是“忘记门”(决定丢弃C中的哪些信息),“输入门”(决定往C中填入什么信息),和“输出门”(确定输出什么值)。由图2可明显看出:在t时刻,LSTM单元有样本Xt,上一单元输出ht-1,上一单元的细胞状态Ct-1三个输入,这些输入经过门结构的处理形成新的细胞状态Ct和新的单元输出ht并流向下一单元,若干这样的单元首尾相连就形成了长短期记忆网络。随着训练样本不断输入,网络不断学习,提取其规律和特征,所有门结构的权重也会通过优化方法不断调整,最终达到全局最优,实现准确预测。随着人工智能的不断发展和火热,越来越多的开发框架问世,为学习者和开发者提供了便利Tensorflow是谷歌公司推出的用于数字计算的开源软件库,它将用户设计的算法用一幅数据流图描述。多维数据作为“tensor”(张量)是流动且可以动态调整的,尤其适合神经网络的构建,训练和分类,推理等应用。Tensorflow提供了丰富的调用方法,可自动求微分和导数,使用户不必编写复杂的计算细节就可构建计算模型;当程序开始执行,Tensorflow可将模型中的节点自动分配到CPU,GPU等设备上,实现过程优化,最大限度发挥设备的计算潜能;它还具备可移植性,不用修改代码就可将训练好的模型移到手机,服务器或者其它集群中运行,用户群庞大等特点,是目前最流行的人工智能开发平台之一。综合以上几段对相关技术的介绍和分析,云数据中心的负载预测问题本质上是对时间序列(任务请求量序列和单位请求资源申请量序列)的预测。鉴于云数据中心目前存在的资源无法最优分配问题,需要提出一种以LSTM神经网络为模型,依靠由大量历史数据组成的各优先等级任务请求量序列和单位请求资源申请量序列训练好并完成优化的,准确预测未来一段时间内这两项指标的方法。
技术实现思路
本专利技术的目的在于提供一种运行在云数据中心的,基于长短期记忆网络的预测算法,为计算资源的调度提供充足而准确的信息支撑,使调度模块能够提前分析趋势并计划好将要采取的调度方法,及早做好准备,保障云数据中心平稳高效运行。待预测指标可分为两类:任务请求总量,单位是个;单位请求资源申请量,无单位。由于每类又可分为三种,分别对应任务请求的三种优先等级:低级、中级和高级,所以一共有2*3=6种指标。根据本专利技术的一个方面,提供了数据集制作方法和一种LSTM神经网络模型的构建方法,包括从文件中读取数据;处理这些数据,将它们“变形”成符合Tensorflow标准的数据模型,制作由时间序列组成的数据集;初始化LSTM模型输入层和输出层的权重矩阵,偏置矩阵;根据样本批次数量,网络层数,学习率,时间步长等设定好的超参数和权重,偏置矩阵构建LSTM模型,定义模型对数据样本的获取,处理,输出方式。根据本专利技术的另一方面,提供了一种把数据样本输入LSTM网络模型,让其学习序列规律,调整各个门结构权重以优化全局的训练方法和迭代式的滚动预测方法,包括用输入的训练样本(在Tensorflow框架里称作“tensor”,此表述下文将经常用到)计算损失函数;以损失函数作自变量用适应性矩估计(Adaptivemomentestimation,Adam)算法进行全局优化;迭代训练,重复以上两步并定时保存调整好的模型,以及进而以测试样本为输入,用“最终版”网络模型迭代输出未来n个时间段某指标的预测值。综上所述,一种基于长短期记忆网络的云数据中心负载预测方法,包括如下步骤:S1、用存储在文件中的数据制作历史时间序列和数据集;S2、构建长短期神经网络模型;S3、训练LSTM网络:迭代地向长短期神经网络模型中导入训练样本,计算损失函数,并以此为基础进行全局优化,不断提取训练样本的特征以及数值与时序的关系,直至迭代结束;S4、训练阶段结束后,向长短期神经网络模型;中导入测试样本,迭代输出未来数个时间步待预测指标的数值,形成预测值时间序列。作为优选,步骤1中将数据集分为两部分:第一部分为“tensor子集”,以“X子集”代替:所述tensor为一时间序列,是训练或测试时输入LSTM网络的最小单元,长度均为num_step,构建方法是迭代地从矩阵中取出连续数据,转化成列表并填入:第二部分为“标签子集”,以“Y子集”代替,由每个tensor对应的标签构成,Y子集每个位置上的序列值是X子集对应位置序列值的后继值:作为优选,步骤2具体为:步骤2.1、每一批样本输入LSTM网络,网络中每个单元在筛选和处理样本后都会产生两个数值并传入下一个单元:一个称作“细胞状态”,简称C,另一个是“单元输出”,简称h;LSTM网络有num_unit个单元,每批样本中有batch_size个样本序列,故一批样本会先后产生num_unit*batch_size个C值和h值,即:步骤2.2、去掉所有c值序列,保留所有h值序列,产生一个新矩阵;步骤2.3、将这个新矩阵和输出层权重矩阵本文档来自技高网
...
一种基于长短期记忆网络的云数据中心负载预测方法

【技术保护点】
1.一种基于长短期记忆网络的云数据中心负载预测方法,其特征在于,该方法包括如

【技术特征摘要】
1.一种基于长短期记忆网络的云数据中心负载预测方法,其特征在于,该方法包括如下步骤:S1、用存储在文件中的数据制作历史时间序列和数据集;S2、构建长短期神经网络模型;S3、训练LSTM网络:迭代地向长短期神经网络模型中导入训练样本,计算损失函数,并以此为基础进行全局优化,不断提取训练样本的特征以及数值与时序的关系,直至迭代结束;S4、训练阶段结束后,向长短期神经网络模型;中导入测试样本,迭代输出未来数个时间步待预测指标的数值,形成预测值时间序列。2.如权利要求1所述的基于长短期记忆网络的云数据中心负载预测方法,其特征在于,步骤1中将数据集分为两部分:第一部分为“tensor子集”,以“X子集”代替:所述tensor为一时间序列,是训练或测试时输入LSTM网络的最小单元,长度均为num_step,构建方法是迭代地从矩阵中取出连续数据,转化成列表并填入:第二部分为“标签子集”,以“Y子集”代替,由每个tensor对应的标签构成,Y子集每个位置上的序列值是X子集对应位置序列值的后继值:3.如权利要求2所述的基于长短期记忆网络的云数据中心负载预测方法,其特征在于,步骤2具体为:步骤2.1、每一批样本输入LSTM网络,网络中每个单元在筛选和处理样本后都会产生两个数值并传入下一个单元:一个称作“细胞状态”,简称C,另一个是“单元输出”,简称h;LSTM网络有num_...

【专利技术属性】
技术研发人员:毕敬许伯睿乔俊飞
申请(专利权)人:北京工业大学
类型:发明
国别省市:北京,11

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

1