CN101639793A - 一种基于支持向量回归机的网格负载预测方法 - Google Patents

一种基于支持向量回归机的网格负载预测方法 Download PDF

Info

Publication number
CN101639793A
CN101639793A CN200910184148A CN200910184148A CN101639793A CN 101639793 A CN101639793 A CN 101639793A CN 200910184148 A CN200910184148 A CN 200910184148A CN 200910184148 A CN200910184148 A CN 200910184148A CN 101639793 A CN101639793 A CN 101639793A
Authority
CN
China
Prior art keywords
training
time
load
sigma
parameter
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
Application number
CN200910184148A
Other languages
English (en)
Inventor
王汝传
解永娟
付雄
任勋益
邓松
易侃
季一木
杨明慧
邓勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Post and Telecommunication University
Nanjing University of Posts and Telecommunications
Original Assignee
Nanjing Post and Telecommunication University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing Post and Telecommunication University filed Critical Nanjing Post and Telecommunication University
Priority to CN200910184148A priority Critical patent/CN101639793A/zh
Publication of CN101639793A publication Critical patent/CN101639793A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种基于支持向量回归机的网格负载预测方法,首先对节点的历史性能数据,采用时间序列法进行自回归(AR)建模,根据AR模型的阶数估计出SVR中的输入向量的维数,然后对历史数据进行SVR学习,构造出SVR的回归函数,以后根据此回归函数以及测得历史性能数据预测下一时刻节点的性能,并且根据预测结果误差对SVR回归函数进行在线调节。采用本方法,能够为网格资源调度及性能优化等提供数据依据,避免被动盲目的任务调度,提高整个网格环境的效率。

Description

一种基于支持向量回归机的网格负载预测方法
技术领域
本发明是一种网格负载预测方法。本方法首先对节点的历史性能数据采用时间序列法进行自回归(AR)建模,根据AR模型的阶数估计出SVR中的输入向量的维数,然后对历史数据进行SVR学习,构造出SVR的回归函数,以后根据此回归函数以及测得历史性能数据预测下一时刻节点的性能,并且根据预测结果误差对SVR回归函数进行在线调节。采用本方法,能够为网格资源调度及性能优化等提供数据依据,避免被动盲目的任务调度,提高整个网格环境的效率,属于网格计算技术领域。
背景技术
网格计算作为一个重要的新领域,已经获得了全球范围的广泛关注。将网格中众多的跨越不同自治域,在地理上分布的异构的计算机和资源组织起来,是国内外研究的重点。利用网格,人们可以像用电一样,接通开关,就可以方便地使用资源。
网格是一个广域范围内的无缝集成和协同计算环境,各类资源在网格中被整合应用。网格环境下,网格资源、网格***软件和网格用户行为都具有高度、频繁的动态变化的特性,资源所有者可以进行加入、撤出和改变其参数等操作。因此,需要对节点的负载进行有效的预测,选择当前负载最低的一个节点进行任务调度。计算网格体系结构中,对有效资源性能的准确预测是实施高效的调度工作、提高***的执行性能的保证。
在传统的网格环境中,在调度器分派任务之前,一般会根据资源状态信息来确定运行该任务合适的机器。网格的基础设施平台比如Globus,提供了资源目录,该目录记录了资源的静态信息。因此,选择最好机器的最简单的方法就是去查询所有有效机器的资源目录,从中选择当前负载最低的一个。但是,由于网格节点的自主性,其资源并不受网格的支配,这给网格任务调度及性能优化造成了困难。一个典型的情况是,当用户提交了一批任务时,调度程序找到当前最空闲的网格节点,并将这批任务分配给它,但是在它们还没有被网格节点完全接受之前,节点在调度程序没有预料的情况下运行了某个日常程序从而造成CPU繁忙,此时这批任务会加重该节点的负担,而且将无法预知它们能够在什么时候完成。如果经常在网格节点可预期地运行用户某个日常程序的情况下,而仍旧为它分配计算任务,这是不合理的。
因此,对网格节点的负载预测进行研究具有重要的意义。必须要主动学习网格节点的运行特征,并对观测数据不断分析,得到其变化规律和模式特征。只有掌握了网格节点的行为特征,才能为网格调度及性能优化等提供数据依据。
发明内容
技术问题:本发明的目的是提供一种基于支持向量回归机的网格负载预测方法,本方法引入了基于SVR的机器学习方法,根据对历史负载的训练分析,得到回归函数,对下一时刻的性能进行预测。使用本发明提出的方法可以达到高效的资源调度,提高网格***的性能。
技术方案:本发明是一种网格节点的负载预测方法,通过引入AR和SVR思想而提出的,其原理是:首先采用时间序列法对历史负载进行自回归(AR)建模,根据AR模型的阶数p估计出SVR中的输入向量的维数,然后对历史负载进行SVR学习,构造出SVR回归函数,以后根据此回归函数以及测前p个时刻的负载数据预测下一时刻节点的负载,并且根据预测结果误差对SVR回归函数进行在线调节。解决了被动盲目的任务调度问题,为网格资源调度及性能优化等提供数据依据,提高整个网格环境的效率。
一、体系结构
图1给出了一个运用这种方法的节点负载预测***的体系结构,它的功能部件主要包括性能信息提供器(Performance Information Provider),适配器(Adapter),负载预测器,索引服务器。
下面我们给出几个具体部分的说明:
性能信息提供器:在网格节点上运行的性能信息收集源,收集节点的性能状态信息。包括Globus发行的GRAM和可以与MDS集成的外部信息提供者如Ganglia、Hawkeye或者其它收集性能信息的小程序。
适配器:不同的信息采集器之间存在着差异。适配器的作用就是消除这些差异,从不同类型的信息采集器中获取数据,然后交给负载预测器部件处理。适配器使得在选择性能信息提供者时有很好的灵活性。
负载预测器:将适配器传来信息首先进行AR建模得到模型阶次p,然后进行SVR数据标准化处理,通过经SVR学习得出回归函数,将此函数用于下一时刻的负载预测。根据预测误差,采用一种增量调节的方法在线调节回归函数。
索引服务器:主要是用于存放所预测的性能信息,并提供查询接口,以供客户端和调度器请求使用。
二、负载预测器的方法流程
1、AR的基本思想
自回归模型(简称AR模型)是一种常用的时间序列模型。对于一种实际的问题,如果它所表现的随机过程或时序的观测值{Yt,t=0,1,...}与其自身的前一个或者前几个时刻的观测值Yt-1,Yt-2有关或者有依赖性,就可以使用AR模型进行建模。AR模型的线性方程为:
Yt=φ1Yt-12Yt-2+...+φpYt-pt                (1)
等式(1)称为p阶自回归模型,记做AR(p)。其中实数φi(1≤i≤p)称为自回归参数,εt表示残差,εt是均值为零,方差为σ2的白噪声序列。
基于AR模型的数据建模一般过程包括:获取和数据校验、模型结构初选、模型参数的求解、模型适用性校验。
主机负载随时间变化有很强的关联特性,因而负载的变化可以看作一种时间序列过程。
2、SVR的基本思想
支持向量机是根据统计学习理论提出的一种新的机器学习方法,在解决小样本、非线性及高维模式识别问题中表现出许多特有的优势。
支持向量机从本质上讲是一种前向神经网络,根据结构风险最小化准则,在使训练样本分类误差极小化的前提下,尽量提高分类器的泛化推广能力。从实施的角度,训练支持向量机的核心思想等价于求解一个线性约束的二次规划问题,从而构造一个超平面作为决策平面,使得特征空间中两类模式之间的距离最大,而且它能保证得到的解为全局最优解,并巧妙地利用原空间的核函数取代高维特征空间中的点积运算。
将支持向量机用于解决回归问题即支持向量回归(Support Vector Regression,SVR)。
3、负载预测器介绍
基于AR模型的预测方法和基于SVR的回归预测方法各有优缺点。前者给出了一种确定的模型结构,并且提供了确定模型阶次和进行参数估计的方法,缺点是在实时***中模型辨识、检验和调整工作非常复杂。后者不需要繁琐的统计过程,而是直接从观测数据出发训练回归函数,自主学习时间序列的变化规律,但缺点是输入向量的个数以及核函数的参数选择比较繁琐。但是如果将两者结合起来,则可以得到比较简单准确的模型估计与预测方法。即通过前者,进行短时建模,可以基本确定大概需要掌握多少历史观测值,才能得到一个较为准确的预测值,从而就估计出了SVR中的输入向量的维数。
所以,该负载预测器主要分为三大部分:AR模型的确定阶段,SVR训练阶段,预测阶段。
为了准确地预测主机负载,首先需要选择合适的负载指标衡量主机负载。这里把***资源的利用率作为评价负载的参数具有较强的通用性。主要包括:(1)CPU,CPU利用率。(2)I/O,I/O利用率。(3)bandwidth,带宽利用率。(4)内存中的cache,也就是内存利用率。在评价***的性能时候,把各个资源给定一个权值,这个权值根据***所运行的任务来确定。
L=α×LC+β×LI+γ×LB+μ×LM                (2)
上述公式(2)表示,α,β,γ,μ分别为CPU利用率、I/O利用率、带宽利用率、内存利用率的权值,由此,得出一个网格节点的综合负载L。
关于α,β,γ,μ的取值比较难以确定,可以测量不同时刻的n组LC、LI、LB、LM,再用下式求得各个参数的权值:
W i = L i Σ i = 1 n L i - - - ( 3 )
(其中,Wi是第i个参数的权值。Li是第i个参数的利用率。)
也就是说将测验得到的n组LC、LI、LB、LM分别求出平均值,如果测验数据足够多,LC、LI、LB、LM就代表了通常情况下的CPU利用率、I/O利用率、带宽利用率、内存利用率平均值,然后将4个平均值求和,取每个平均值与和的比值作为预测中性能评价的权值。这样可以考虑到一般情况下***利用率高的部分占有较高的权,有利于体现***的利用率,在一般情况下,都会有比较稳定的结果。
首先,设置采样周期为T,即每隔时间T取一次负载性能数据观测值。设置观测时间Ttrain=N*T,即选取N条负载观测记录作为AR模型的确定阶段和SVR训练阶段的样本,得到N个向量x[i]={x1i,x2i,x3i,x4i},i=1...N,其中x1i,x2i,x3i,x4i分别代表第i次观测时主机节点的CPU利用率、I/O利用率、带宽利用率、内存利用率。按照式(3)求出Wi即各个参数的权值,从而求出综合负载Li,i=1...N。
在AR模型的确定阶段,采用搜索法确定AR模型的阶与参数。设定最高阶数为20,从低到高进行搜索,并按照最小二乘估计法进行各阶的参数估计,最后采用AIC准则(Average Information Criteria)判断,取C(p)值最小的阶次n作为模型的最佳阶次。AIC准则的计算公式定义为:
C ( p ) = N · 1 n σ α 2 + 2 p - - - ( 4 )
其中, σ α 2 = S N - p , 这里C为AIC(p)准则,p为模型阶次,N为数据个数,σα 2为残差方差,S为残差平方和。
在SVR训练阶段,首先对N个向量x[i]={Li-1,Li-2,...,Li-k},y[i]=Li,i=k+1...N,进行归一化处理,得到N-k-1个样本,然后训练支持向量回归机。
在线性回归的情况下,对于训练样本集{(x1,y1),...(xn,yn)},xi∈Rn,yi∈R,要在线性函数集{f(x)|f(x)=w*x+b}中寻找满足约束的参数w和b。考虑到在实际应用中存在一定的拟合误差,此处引入松弛因子ξi和ξi *,即求约束条件下的式(5)。
Min 1 2 | | w | | 2 + C Σ i = 1 i ( ξ i + ξ i * )
Subject to [(w·xi)+b]-yi≤ε+ξi;i=1,2,...,l
yi-[(w·xi)+b]≤ε+ξi;i=1,2,...,l
ξi (*);i=1,2,...,l                (5)
引入Lagrange对偶原理,求解式(5)。其对偶问题如下:
max W ( a , a * ) = - 1 2 Σ i , j = 1 i ( a i - a i * ) ( a j - a j * ) × ( x i · x j ) - Σ i = 1 i ( a i + a i * ) ϵ - Σ i = 1 i ( a i - a i * ) y i - - - ( 6 ) Subjectto Σ i = 1 m ( α i - a i * ) = 0 ; 0 ≤ a i , a i * ≤ C , i=1,2,...,l
求解式(6)得到支持向量和相应的参数ai,ai *,b,从而获得最佳拟合函数
f ( x ) = Σ i = 1 m ( α i - a i * ) ( x · x i ) + b - - - ( 7 )
实际中非线性情况大量存在,内积回旋的方法很好地解决了这个问题,通过选择的非线性映射,将输入向量x映射到高维特征空间中,在高维空间构建最优线性拟合函数,从而达到在原空间中的非线性函数拟合的效果。具体形式为:
f ( x ) = Σ i = 1 m ( α i - a i * ) Φ ( x ) · Φ ( x i ) + b - - - ( 8 )
利用核函数来代替内积Ф(x)·Ф(xi),可得非线性回归函数
f ( x ) = Σ i = 1 m ( α i - a i * ) K ( x i , x ) + b - - - ( 9 )
核函数K(xi,x)一般取RBF核函数。K(x,xi)=exp{-|x-xi|22}。
将遗传算法应用于SVR参数的优化。给出最佳的核参数ε、C以及σ参数,并用其训练数据集以获得最佳回归模型。
在检测阶段,求出当前时刻节点的综合负载值L后,将得到的输入向量进行归一化处理,根据回归函数式(9)得到下一时刻的综合负载值。并将预测结果与真实值进行比较,如果在规定时间内错误数高于规定值,就需要重新进行SVR的训练。
3、基于SVR的网格负载预测流程:
该方法所包含的步骤为:
步骤1)性能信息采集者采集性能数据,包括每台主机节点的CPU利用率、I/O利用率、带宽利用率、内存利用率信息;
用步骤2)将从不同类型的数据采集者收集到的数据交给适配器模块处理,将不同格式的数据做标准转化;
用步骤3)将采集到的性能数据定时汇总到目录服务中供用户和其它应用程序使用;
用步骤4)设置采样周期为T,即每隔时间T取一次负载性能数据观测值,设置观测时间Ttrain=N*T,N为采样次数,为了保证准确性,可以设的稍微大些;
用步骤5)在预测器中定义数组x[4][N],用来存储从当前时间到Ttrain时间内观测到的性能数据变化量,其中,x[1][j]表示第j次观测到的主机节点的CPU利用率,x[2][j]表示第j次观测到的I/O利用率,x[3][j]表示第j次观测到的带宽利用率,x[4][j]表示第j次观测到的内存利用率;
步骤6)把***资源的利用率作为评价负载的参数,这些参数包括:CPU利用率、I/O利用率、带宽利用率、内存利用率;在评价***性能时,把各个资源给定一个权值,求出每次观测的综合负载 L j = Σ i = 1 4 W i · x [ i ] [ j ] , j=1,…,N,并将Lj存于数组x[j]中,j=1,2,…N;
其中, W i = l ‾ i Σ i = 1 4 l ‾ i , i = 1,2,3,4 是第i个参数的权值,而
l ‾ i = Σ j = 1 N x [ i ] [ j ] N , i=1,2,3,4是第i个参数的平均利用率;
步骤7)对于数组x[j],j=1, 2,…N,采用搜索法确定AR模型的阶与参数;设定最高阶数为20,从低到高分别取阶数p=1,2,...,20,并按照最小二乘估计法进行各阶的参数估计,得到20个模型;
步骤8)采用AIC准则进行判断:AIC准则的计算公式定义为:
C ( p ) = N · 1 n σ α 2 + 2 p
其中, σ α 2 = S N - p , 这里C为AIC(p)准则,p为模型阶次,N为数据个数,σα 2为残差方差,S为残差平方和。取C(p)值最小的阶次n作为模型的最佳阶次,确定AR模型,从而,也确定了SVR输入向量的维数n;
步骤9)对向量{xi,yi},其中xi={x[i-1],x[i-2],...,x[i-k]},yi=x[i],i=k+1...N,进行归一化处理,得到N-k-1个样本;归一化公式为:
X[i-k]=(x[i-k]-xmin)/(xmax-xmin),其中X[i-k]为x[i-k]归一化后的值,x[i]为第i次测得的综合负载值,xmax为x[i-k]中最大的,xmin为x[i-k]中最小的;
步骤10)对训练样本进行SVR训练,通过选取不同的训练参数C,σ,ε,配合样本训练数据进行SVR训练,从而得到若干组与不同训练参数一一对应的训练结果,求解后得到回归函数如下:
f ( x ) = Σ i = 1 m ( α i - a i * ) K ( x i , x ) + b
K(x,xi)为核函数,K(x,xi)=exp{-|x-xi|22}
再把得到的不同训练结果分别用测试数据进行测试,记录下检验效果,以效果最好的一组结果对应的训练参数C,σ,ε为选取的参数;
步骤11)得到回归函数 f ( x ) = &Sigma; i = 1 m ( &alpha; i * - a i ) K < x , x i > + b ; xi为第i个训练样本的输入,xi={X[i-1],X[i-2],...,X[i-k]}即第i-1,i-2,...,i-k次观测得到的综合负载归一化后的值,yi为第i个训练样本的输出,即第i次观测得到的综合负载值;
步骤12)设回归函数支持向量的个数为svn,定义集合Asv用来存储集合x[N]对应的支持向量;
步骤13)按照回归函数f(x)对负载进行预测;输入向量为x={X[N],X[N-1],...,X[N-k+1]},X[N]...X[N-k+1]分别为归一化后的第N,N-1,...,N-k+1次观测得到的综合负载值。输出结果为,预测的下一个时刻的综合负载值x′[1];
步骤14)将预测的结果x′[1]跟实际测得的综合负载值相比较,将预测结果划归入测试错误集Berr和测试正确集Bok;
步骤15)如果在规定时间T0内,Berr低于规定值N0,则继续使用该回归函数进行负载的预测;如果Berr超过N0,则将集合Asv和Berr的并集作为新的训练集,并重复步骤9)-步骤12)的工作,重新训练得到一个新的回归函数f(x)和支持向量集Asv;
步骤16)将Bok存入“增量样本集”B,清空Berr和Bok,重复步骤14)-15)的工作,得到新的测试错误集Berr和测试正确集Bok,如果Berr低于规定值N0,则使用该回归函数进行下一时刻负载的预测,否则重新训练;
步骤17)训练成功后,转步骤13),重新进行下一轮的预测。
有益效果:本发明是一种网格负载预测方法,主要用于解决选择合适的节点进行网格任务调度的问题,通过使用本发明提出的方法可以有效地预测网格节点的负载,避免选择不合适的节点进行被动盲目的任务调度问题,能够为网格资源调度及性能优化等提供数据依据,从而提高整个网格环境的效率。下面给出具体的说明。
在传统的网格环境中,在调度器分派任务之前,一般会去查询所有有效机器的资源目录,从中选择当前负载最低的一个,确定运行该任务合适的机器。但是,由于网格节点的自主性,其资源并不受网格的支配,这给网格任务调度及性能优化造成了困难。基于SVR的网格负载预测,使用AR模型的简单性、短时性的优点,通过构造AR模型确定其阶数,得到SVR的输入向量的个数,并使用在线调整的方法调整SVR回归函数,做到了节点负载的有效预测,能够更加有效的利用资源,提高网格的效率。这种算法增加了负载预测的自适应性和准确性。
附图说明
图1是该***体系结构图。图中包括:性能信息提供者,适配器,负载预测器,索引服务器。
图2是基于SVR的网格负载预测的流程图。
具体实施方式
步骤1:设置采样周期为T,即每隔时间T取一次负载性能数据观测值。设置观测时间Ttrain=N*T。
步骤2:在预测器中定义数组x[4][N],用来存储从当前时间到Ttrain时间内观测到的性能数据变化量。其中,x[1][j]表示第j次观测到的主机节点的CPU利用率,x[2][j]表示第j次观测到的I/O利用率,x[3][j]表示第j次观测到的带宽利用率,x[4][j]表示第j次观测到的内存利用率。
步骤3:按照公式(3)求出性能评价的权值。其中 L i = &Sigma; j = 1 N x [ i ] [ j ] N , i=1,2,3,4, W i = L i &Sigma; i = 1 4 L i , 求出每次观测的综合负载 L j = &Sigma; i = 1 4 W i &CenterDot; x [ i ] [ j ] , j=1,…,N,并将Lj存于数组x[j],j=1,2,...N中。
步骤4:对于数组x[j],j=1,2,...N,采用搜索法确定AR模型的阶与参数。设定最高阶数为20,从低到高分别取阶数p=1,2,...,20,并按照最小二乘估计法进行各阶的参数估计,得到20个形如Yt=φ1Yt-12Yt-2+...+φpYt-p的模型。
步骤5:采用如公式(4)的AIC准则进行判断,取C(p)值最小的阶次n作为模型的最佳阶次,确定了AR模型。从而,也确定了SVR输入向量的维数n。
步骤6:对向量{xi,Yi},其中xi={x[i-1],x[i-2],...,x[i-k]},yi=x[i],i=k+1...N,进行归一化处理,得到N-k-1个样本。归一化公式为:X[i-k]=(x[i-k]-xmin)/(xmax-xmin),其中X[i-k]为x[i-k]归一化后的值,x[i]为第i次测得的综合负载值,xmax为x[i-k]中最大的,xmin为x[i-k]中最小的。
步骤7:对训练样本进行SVR训练。通过选取不同的训练参数C,σ,ε,配合样本训练数据进行SVR训练,从而得到若干组与不同训练参数一一对应的训练结果。即求解式(6)
max W ( a , a * ) = - 1 2 &Sigma; i , j = 1 i ( a i - a i * ) ( a j - a j * ) &times; ( x i &CenterDot; x j ) - &Sigma; i = 1 i ( a i + a i * ) &epsiv; - &Sigma; i = 1 i ( a i - a i * ) y i
Subjectto &Sigma; i = 1 m ( &alpha; i - a i * ) = 0 ; 0≤ai a i * &le; C , i=1,2,...,l
得到支持向量和相应的参数ai,ai *,b。得到回归函数如下:
f ( x ) = &Sigma; i = 1 m ( &alpha; i - a i * ) K ( x i , x ) + b
K(x,xi)为核函数,K(x,xi)=exp{-|x-xi|22}。
再把得到的不同训练结果分别用测试数据进行测试,记录下检验效果,以效果最好的一组结果对应的训练参数C,σ,ε为选取的参数。
步骤8:得到回归函数 f ( x ) = &Sigma; i = 1 m ( &alpha; i * - a i ) K < x , x i > + b . xi为第i个训练样本的输入,xi={X[i-1],X[i-2],...,X[i-k]}即第i-1,i-2,...,i-k次观测得到的综合负载归一化后的值,yi为第i个训练样本的输出,即第i次观测得到的综合负载值。
步骤9:设回归函数支持向量的个数为svn,定义集合Asv用来存储集合x[N]对应的支持向量。
步骤10:按照回归函数f(x)对负载进行预测。输入向量为x={X[N],X[N-1],...,X[N-k+1]},X[N]...X[N-k+1]分别为归一化后的第N,N-1,...,N-k+1次观测得到的综合负载值。输出结果为,预测的下一个时刻的综合负载值x′[1]。
步骤11:将预测的结果x′[1]跟实际测得的综合负载值相比较,将预测结果划归入测试错误集Berr和测试正确集Bok;
步骤12:如果在规定时间T0内,Berr低于规定值N0,则继续使用该回归函数进行负载的预测;如果Berr超过N0,则将集合Asv和Berr的并集作为新的训练集,并重复步骤6-步骤9的工作,重新训练得到一个新的回归函数f(x)和支持向量集Asv。
步骤13:将Bok存入“增量样本集”B,清空Berr和Bok,重复步骤11-12的工作,得到新的测试错误集Berr和测试正确集Bok,如果Berr低于规定值N0,则使用该回归函数进行下一时刻负载的预测,否则重新训练。
步骤14:训练成功后,转步骤10,重新进行下一轮的预测。
具体实例为:
(1)性能信息采集者采集性能数据,包括每台主机节点的CPU利用率、I/O利用率、带宽利用率、内存利用率信息;
(2)将从不同类型的数据采集者收集到的数据交给适配器模块处理,将不同格式的数据做标准转化;
(3)将采集到的性能数据定时汇总到目录服务中,供用户和其它应用程序使用。
(4)设置采样周期为T,即每隔时间T取一次负载性能数据观测值。设置观测时间Ttrain=N*T。
(5)在预测器中定义数组x[4][N],用来存储从当前时间到Ttrain时间内观测到的性能数据变化量。其中,x[1][j]表示第j次观测到的主机节点的CPU利用率,x[2][j]表示第j次观测到的I/O利用率,x[3][j]表示第j次观测到的带宽利用率,x[4][j]表示第j次观测到的内存利用率。
(6)按照公式(3)求出性能评价的权值。其中 L i = &Sigma; j = 1 N x [ i ] [ j ] N , i=1,2,3,4, W i = L i &Sigma; i = 1 4 L i , 求出每次观测的综合负载 L j = &Sigma; i = 1 4 W i &CenterDot; x [ i ] [ j ] , j=1,…,N,并将Lj存于数组x[j],j=1,2,...N中。
(7)对于数组x[j],j=1,2,...N,采用搜索法确定AR模型的阶与参数。设定最高阶数为20,从低到高分别取阶数p=1,2,...,20,并按照最小二乘估计法进行各阶的参数估计,得到20个形如Yt=φ1Yt-12Yt-2+...+φpYt-p的模型。
(8)采用如公式(4)的AIC准则进行判断,取C(p)值最小的阶次n作为模型的最佳阶次,确定了AR模型。从而,也确定了SVR输入向量的维数n。
(9)对向量{xi,yi},其中xi={x[i-1],x[i-2],...,x[i-k]},yi=x[i],i=k+1...N,进行归一化处理,得到N-k-1个样本。归一化公式为:X[i-k]=(x[i-k]-xmin)/(xmax-xmin),其中X[i-k]为x[i-k]归一化后的值,x[i]为第i次测得的综合负载值,xmax为x[i-k]中最大的,xmin为x[i-k]中最小的。
(10)对训练样本进行SVR训练。通过选取不同的训练参数C,σ,ε,配合样本训练数据进行SVR训练,从而得到若干组与不同训练参数一一对应的训练结果。即求解式(6)
max W ( a , a * ) = - 1 2 &Sigma; i , j = 1 i ( a i - a i * ) ( a j - a j * ) &times; ( x i &CenterDot; x j ) - &Sigma; i = 1 i ( a i + a i * ) &epsiv; - &Sigma; i = 1 i ( a i - a i * ) y i
Subjectto &Sigma; i = 1 m ( &alpha; i - a i * ) = 0 ; 0≤ai a i * &le; C , i=1,2,...,l
得到支持向量和相应的参数ai,ai *,b。得到回归函数如下:
f ( x ) = &Sigma; i = 1 m ( &alpha; i - a i * ) K ( x i , x ) + b
K(x,xi)为核函数,K(x,xi)=exp{-|x-xi|22}。
再把得到的不同训练结果分别用测试数据进行测试,记录下检验效果,以效果最好的一组结果对应的训练参数C,σ,ε为选取的参数。
(11)得到回归函数 f ( x ) = &Sigma; i = 1 m ( &alpha; i * - a i ) K < x , x i > + b . xi为第i个训练样本的输入,xi={X[i-1],X[i-2],...,X[i-k]}即第i-1,i-2,...,i-k次观测得到的综合负载归一化后的值,yi为第i个训练样本的输出,即第i次观测得到的综合负载值。
(12)设回归函数支持向量的个数为svn,定义集合Asv用来存储集合x[N]对应的支持向量。
(13)按照回归函数f(x)对负载进行预测。输入向量为x={X[N],X[N-1],...,X[N-k+1]},X[N]...X[N-k+1]分别为归一化后的第N,N-1,...,N-k+1次观测得到的综合负载值。输出结果为,预测的下一个时刻的综合负载值x′[1]。
(14)将预测的结果x′[1]跟实际测得的综合负载值相比较,将预测结果划归入测试错误集Berr和测试正确集Bok;
(15)如果在规定时间T0内,Berr低于规定值N0,则继续使用该回归函数进行负载的预测;如果Berr超过N0,则将集合Asv和Berr的并集作为新的训练集,并重复步骤9-步骤12的工作,重新训练得到一个新的回归函数f(x)和支持向量集Asv。
(16)将Bok存入“增量样本集”B,清空Berr和Bok,重复步骤14-15的工作,得到新的测试错误集Berr和测试正确集Bok,如果Berr低于规定值N0,则使用该回归函数进行下一时刻负载的预测,否则重新训练。
(17)训练成功后,转步骤13,重新进行下一轮的预测。

Claims (1)

1.一种基于支持向量回归机的网格负载预测方法,其特征在于该方法所包含的步骤为:
步骤1)性能信息采集者采集性能数据,包括每台主机节点的CPU利用率、I/O利用率、带宽利用率、内存利用率信息;
步骤2)将从不同类型的数据采集者收集到的数据交给适配器模块处理,将不同格式的数据做标准转化;
步骤3)将采集到的性能数据定时汇总到目录服务中供用户和其它应用程序使用;
步骤4)设置采样周期为T,即每隔时间T取一次负载性能数据观测值,设置观测时间Ttrain=N*T,N为采样次数,
步骤5)在预测器中定义数组x[4][N],用来存储从当前时间到Ttrain时间内观测到的性能数据变化量,其中,x[1][j]表示第j次观测到的主机节点的CPU利用率,x[2][j]表示第j次观测到的I/O利用率,x[3][j]表示第j次观测到的带宽利用率,x[4][j]表示第j次观测到的内存利用率;
步骤6)把***资源的利用率作为评价负载的参数,这些参数包括:CPU利用率、I/O利用率、带宽利用率、内存利用率;在评价***性能时,把各个资源给定一个权值,求出每次观测的综合负载 L j = &Sigma; i = 1 4 W i &CenterDot; x [ i ] [ j ] , j = 1 , &CenterDot; &CenterDot; &CenterDot; , N , 并将Lj存于数组x[j]中,j=1,2,…N;
其中, W i = l &OverBar; i &Sigma; i = 1 4 l &OverBar; i , i = 1,2,3,4 是第i个参数的权值,而
l &OverBar; i = &Sigma; j = 1 N x [ i ] [ j ] N , i = 1,2,3,4 是第i个参数的平均利用率;
步骤7)对于数组x[j],j=1,2,...N,采用搜索法确定AR模型的阶与参数;设定最高阶数为20,从低到高分别取阶数p=1,2,...,20,并按照最小二乘估计法进行各阶的参数估计,得到20个模型;
步骤8)采用AIC准则进行判断:AIC准则的计算公式定义为:
C ( p ) = N &CenterDot; ln &sigma; &alpha; 2 + 2 p
其中, &sigma; &alpha; 2 = S N - p , 这里C为AIC(p)准则,p为模型阶次,N为数据个数,
σα 2为残差方差,S为残差平方和。取C(p)值最小的阶次n作为模型的最佳阶次,确定AR模型,从而,也确定了SVR输入向量的维数n;
步骤9)对向量{xi,yi},其中xi={x[i-1],x[i-2],...,x[i-k]},yi=x[i],i=k+1...N,进行归一化处理,得到N-k-1个样本;归一化公式为:
X[i-k]=(x[i-k]-xmin)/(xmax-xmin),其中X[i-k]为x[i-k]归一化后的值,x[i]为第i次测得的综合负载值,xmax为x[i-k]中最大的,xmin为x[i-k]中最小的;
步骤10)对训练样本进行SVR训练,通过选取不同的训练参数C,σ,ε,配合样本训练数据进行SVR训练,从而得到若干组与不同训练参数一一对应的训练结果,求解后得到回归函数如下:
f ( x ) = &Sigma; i = 1 m ( &alpha; i - &alpha; i * ) K ( x i , x ) + b
K(x,xi)为核函数, K ( x , x i ) = exp { - | x - x i | 2 / &sigma; 2 }
再把得到的不同训练结果分别用测试数据进行测试,记录下检验效果,以效果最好的一组结果对应的训练参数C,σ,ε为选取的参数;
步骤11)得到回归函数 f ( x ) = &Sigma; i = 1 m ( &alpha; i * - a i ) K &lang; x , x i &rang; + b ; xi为第i个训练样本的输入,
xi={X[i-1],X[i-2],...,X[i-k]}即第i-1,i-2,...,i-k次观测得到的综合负载归一化后的值,yi为第i个训练样本的输出,即第i次观测得到的综合负载值;
步骤12)设回归函数支持向量的个数为svn,定义集合Asv用来存储集合x[N]对应的支持向量;
步骤13)按照回归函数f(x)对负载进行预测;输入向量为
x={X[N],X[N-1],...,X[N-k+1]},X[N]...X[N-k+1]分别为归一化后的第N,N-1,...,N-k+1次观测得到的综合负载值。输出结果为,预测的下一个时刻的综合负载值x′[1];
步骤14)将预测的结果x′[1]跟实际测得的综合负载值相比较,将预测结果划归入测试错误集Berr和测试正确集Bok;
步骤15)如果在规定时间T0内,Berr低于规定值N0,则继续使用该回归函数进行负载的预测;如果Berr超过N0,则将集合Asv和Berr的并集作为新的训练集,并重复步骤9)-步骤12)的工作,重新训练得到一个新的回归函数f(x)和支持向量集Asv;
步骤16)将Bok存入“增量样本集”B,清空Berr和Bok,重复步骤14)-15)的工作,得到新的测试错误集Berr和测试正确集Bok,如果Berr低于规定值N0,则使用该回归函数进行下一时刻负载的预测,否则重新训练;
步骤17)训练成功后,转步骤13),重新进行下一轮的预测。
CN200910184148A 2009-08-19 2009-08-19 一种基于支持向量回归机的网格负载预测方法 Pending CN101639793A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200910184148A CN101639793A (zh) 2009-08-19 2009-08-19 一种基于支持向量回归机的网格负载预测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200910184148A CN101639793A (zh) 2009-08-19 2009-08-19 一种基于支持向量回归机的网格负载预测方法

Publications (1)

Publication Number Publication Date
CN101639793A true CN101639793A (zh) 2010-02-03

Family

ID=41614784

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910184148A Pending CN101639793A (zh) 2009-08-19 2009-08-19 一种基于支持向量回归机的网格负载预测方法

Country Status (1)

Country Link
CN (1) CN101639793A (zh)

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102104509A (zh) * 2011-02-17 2011-06-22 浪潮(北京)电子信息产业有限公司 云操作***中服务器负载预测的方法及装置
CN102185779A (zh) * 2011-05-11 2011-09-14 田文洪 与综合配置能力成比例的数据中心资源负载均衡的方法及装置
CN102185759A (zh) * 2011-04-12 2011-09-14 田文洪 一种满足需求特性的多物理服务器负载均衡的方法及装置
WO2011110026A1 (zh) * 2010-10-29 2011-09-15 华为技术有限公司 一种实现数据中心资源负载均衡的方法及装置
CN102223395A (zh) * 2011-05-11 2011-10-19 田文洪 一种无线射频识别网络中间件动态负载均衡的方法及装置
CN102508693A (zh) * 2011-09-29 2012-06-20 华中科技大学 基于虚拟机的Web服务器扩容***
CN103399799A (zh) * 2013-07-30 2013-11-20 浪潮(北京)电子信息产业有限公司 云操作***中计算物理资源节点负载评价的方法及装置
CN103514055A (zh) * 2013-10-09 2014-01-15 浪潮(北京)电子信息产业有限公司 一种面向过程的高性能计算应用性能的测评方法及***
CN103955266A (zh) * 2014-05-22 2014-07-30 东北林业大学 基于Android移动Sink负载预测的低功耗设计方法
CN104717439A (zh) * 2014-01-02 2015-06-17 杭州海康威视***技术有限公司 视频存储***中数据流量控制方法及其装置
CN105318905A (zh) * 2014-12-30 2016-02-10 国家电网公司 一种火电厂热力***传感器故障诊断方法
CN106790706A (zh) * 2017-02-27 2017-05-31 深圳先进技术研究院 一种数据资源优化的方法、平台及***
CN107133446A (zh) * 2017-03-24 2017-09-05 广东工业大学 一种预测超早强混凝土抗压强度的方法
CN107210852A (zh) * 2015-01-28 2017-09-26 阿尔卡特朗讯 通过预测平滑的传输块大小来控制应用的操作的***和方法
CN107239477A (zh) * 2016-07-27 2017-10-10 中国石油大学(华东) 一种融合空间相关性的地理数据支持向量回归方法
CN107517166A (zh) * 2016-06-16 2017-12-26 中兴通讯股份有限公司 流量控制方法、装置及接入设备
CN108446200A (zh) * 2018-02-07 2018-08-24 福建星瑞格软件有限公司 基于大数据机器学习的服务器智能运维方法及计算机设备
CN109032914A (zh) * 2018-09-06 2018-12-18 掌阅科技股份有限公司 资源占用数据预测方法、电子设备、存储介质
CN109460301A (zh) * 2018-09-07 2019-03-12 中南大学 一种流数据负载的弹性资源配置方法及***
CN109842563A (zh) * 2017-11-24 2019-06-04 中国电信股份有限公司 内容分发网络流量调度方法、装置和计算机可读存储介质
CN110022378A (zh) * 2019-04-22 2019-07-16 苏州排忧网络技术有限责任公司 基于状态的vpn服务器智能分配方法
CN110210227A (zh) * 2019-06-11 2019-09-06 百度在线网络技术(北京)有限公司 风险检测方法、装置、设备和存储介质
CN110322569A (zh) * 2019-07-03 2019-10-11 百度在线网络技术(北京)有限公司 多模态ar处理方法、装置、设备和可读存储介质
CN110688207A (zh) * 2019-09-05 2020-01-14 烽火通信科技股份有限公司 一种嵌入式任务调度方法及***
CN111143050A (zh) * 2018-11-02 2020-05-12 中移(杭州)信息技术有限公司 一种容器集群调度的方法和设备

Cited By (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102232282B (zh) * 2010-10-29 2014-03-26 华为技术有限公司 一种实现数据中心资源负载均衡的方法及装置
WO2011110026A1 (zh) * 2010-10-29 2011-09-15 华为技术有限公司 一种实现数据中心资源负载均衡的方法及装置
CN102232282A (zh) * 2010-10-29 2011-11-02 华为技术有限公司 一种实现数据中心资源负载均衡的方法及装置
US8510747B2 (en) 2010-10-29 2013-08-13 Huawei Technologies Co., Ltd. Method and device for implementing load balance of data center resources
CN102104509A (zh) * 2011-02-17 2011-06-22 浪潮(北京)电子信息产业有限公司 云操作***中服务器负载预测的方法及装置
CN102104509B (zh) * 2011-02-17 2013-06-19 浪潮(北京)电子信息产业有限公司 云操作***中服务器负载预测的方法及装置
CN102185759A (zh) * 2011-04-12 2011-09-14 田文洪 一种满足需求特性的多物理服务器负载均衡的方法及装置
CN102185779A (zh) * 2011-05-11 2011-09-14 田文洪 与综合配置能力成比例的数据中心资源负载均衡的方法及装置
CN102223395A (zh) * 2011-05-11 2011-10-19 田文洪 一种无线射频识别网络中间件动态负载均衡的方法及装置
CN102185779B (zh) * 2011-05-11 2015-02-25 田文洪 与综合配置能力成比例的数据中心资源负载均衡的方法及装置
CN102223395B (zh) * 2011-05-11 2014-05-07 田文洪 一种无线射频识别网络中间件动态负载均衡的方法及装置
CN102508693A (zh) * 2011-09-29 2012-06-20 华中科技大学 基于虚拟机的Web服务器扩容***
CN103399799B (zh) * 2013-07-30 2017-02-22 浪潮(北京)电子信息产业有限公司 云操作***中计算物理资源节点负载评价的方法及装置
CN103399799A (zh) * 2013-07-30 2013-11-20 浪潮(北京)电子信息产业有限公司 云操作***中计算物理资源节点负载评价的方法及装置
CN103514055A (zh) * 2013-10-09 2014-01-15 浪潮(北京)电子信息产业有限公司 一种面向过程的高性能计算应用性能的测评方法及***
CN104717439A (zh) * 2014-01-02 2015-06-17 杭州海康威视***技术有限公司 视频存储***中数据流量控制方法及其装置
CN104717439B (zh) * 2014-01-02 2017-12-01 杭州海康威视***技术有限公司 视频存储***中数据流量控制方法及其装置
CN103955266B (zh) * 2014-05-22 2016-09-14 东北林业大学 基于Android移动Sink负载预测的低功耗设计方法
CN103955266A (zh) * 2014-05-22 2014-07-30 东北林业大学 基于Android移动Sink负载预测的低功耗设计方法
CN105318905A (zh) * 2014-12-30 2016-02-10 国家电网公司 一种火电厂热力***传感器故障诊断方法
CN107210852A (zh) * 2015-01-28 2017-09-26 阿尔卡特朗讯 通过预测平滑的传输块大小来控制应用的操作的***和方法
CN107210852B (zh) * 2015-01-28 2020-04-07 阿尔卡特朗讯 通过预测平滑的传输块大小来控制应用的操作的***和方法
CN107517166A (zh) * 2016-06-16 2017-12-26 中兴通讯股份有限公司 流量控制方法、装置及接入设备
CN107239477A (zh) * 2016-07-27 2017-10-10 中国石油大学(华东) 一种融合空间相关性的地理数据支持向量回归方法
CN106790706A (zh) * 2017-02-27 2017-05-31 深圳先进技术研究院 一种数据资源优化的方法、平台及***
CN106790706B (zh) * 2017-02-27 2019-11-19 深圳先进技术研究院 一种数据资源优化的方法、平台及***
CN107133446A (zh) * 2017-03-24 2017-09-05 广东工业大学 一种预测超早强混凝土抗压强度的方法
CN109842563A (zh) * 2017-11-24 2019-06-04 中国电信股份有限公司 内容分发网络流量调度方法、装置和计算机可读存储介质
CN108446200B (zh) * 2018-02-07 2021-10-29 福建星瑞格软件有限公司 基于大数据机器学习的服务器智能运维方法及计算机设备
CN108446200A (zh) * 2018-02-07 2018-08-24 福建星瑞格软件有限公司 基于大数据机器学习的服务器智能运维方法及计算机设备
CN109032914A (zh) * 2018-09-06 2018-12-18 掌阅科技股份有限公司 资源占用数据预测方法、电子设备、存储介质
CN109460301A (zh) * 2018-09-07 2019-03-12 中南大学 一种流数据负载的弹性资源配置方法及***
CN109460301B (zh) * 2018-09-07 2022-06-24 中南大学 一种流数据负载的弹性资源配置方法及***
CN111143050B (zh) * 2018-11-02 2023-09-19 中移(杭州)信息技术有限公司 一种容器集群调度的方法和设备
CN111143050A (zh) * 2018-11-02 2020-05-12 中移(杭州)信息技术有限公司 一种容器集群调度的方法和设备
CN110022378A (zh) * 2019-04-22 2019-07-16 苏州排忧网络技术有限责任公司 基于状态的vpn服务器智能分配方法
CN110022378B (zh) * 2019-04-22 2021-09-10 苏州排忧网络技术有限责任公司 基于状态的vpn服务器智能分配方法
CN110210227A (zh) * 2019-06-11 2019-09-06 百度在线网络技术(北京)有限公司 风险检测方法、装置、设备和存储介质
CN110322569A (zh) * 2019-07-03 2019-10-11 百度在线网络技术(北京)有限公司 多模态ar处理方法、装置、设备和可读存储介质
CN110688207B (zh) * 2019-09-05 2022-03-11 烽火通信科技股份有限公司 一种嵌入式任务调度方法及***
CN110688207A (zh) * 2019-09-05 2020-01-14 烽火通信科技股份有限公司 一种嵌入式任务调度方法及***

Similar Documents

Publication Publication Date Title
CN101639793A (zh) 一种基于支持向量回归机的网格负载预测方法
CN105391083B (zh) 基于变分模态分解和相关向量机的风功率区间短期预测方法
US20170372229A1 (en) Method and apparatus for managing machine learning process
CN105023066B (zh) 一种基于季节调整的业扩报装分析预测***及方法
CN109409628A (zh) 基于计量大数据聚类模型的采集终端生产厂商评价方法
CN110334875A (zh) 计及评估指标冲突的风电功率组合概率预测方法
Nichiforov et al. Deep learning techniques for load forecasting in large commercial buildings
CN103257921A (zh) 一种基于改进随机森林算法的软件故障预测***及其方法
CN110930198A (zh) 基于随机森林的电能替代潜力预测方法、***、存储介质及计算机设备
CN110389820A (zh) 一种基于v-TGRU模型进行资源预测的私有云任务调度方法
CN102025531A (zh) 一种性能数据的填补方法及其装置
CN108416466A (zh) 复杂特性影响的电力负荷预测方法、计算机信息处理***
WO2021243568A1 (en) Multi-objective distributional reinforcement learning for large-scale order dispatching
CN115545333A (zh) 一种多负荷日类型配电网负荷曲线预测方法
CN111080041A (zh) 一种配电网互动性综合评价方法及***
CN114139940A (zh) 一种基于组合赋权-云模型的广义需求侧资源网荷互动水平评估方法
Yan et al. Short-term load forecasting of smart grid based on load spatial-temporal distribution
CN104199870A (zh) 基于混沌搜索的ls-svm预测模型的建立方法
CN108959791A (zh) 一种相控阵雷达资源调度效能层级递阶评估方法
CN114997488A (zh) 一种综合能源***负荷预测方法及装置
Somu et al. Evaluation of building energy demand forecast models using multi-attribute decision making approach
Song et al. Spark-based cloud data analytics using multi-objective optimization
CN104217296A (zh) 一种上市公司绩效综合评价方法
Yang et al. A learning-to-rank algorithm for constructing defect prediction models
CN117764631A (zh) 基于源端静态数据建模的数据治理优化方法及***

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20100203