CN111131424B - 一种基于emd和多变量lstm相结合的服务质量预测方法 - Google Patents

一种基于emd和多变量lstm相结合的服务质量预测方法 Download PDF

Info

Publication number
CN111131424B
CN111131424B CN201911308215.9A CN201911308215A CN111131424B CN 111131424 B CN111131424 B CN 111131424B CN 201911308215 A CN201911308215 A CN 201911308215A CN 111131424 B CN111131424 B CN 111131424B
Authority
CN
China
Prior art keywords
data
service quality
service
time
time sequence
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.)
Active
Application number
CN201911308215.9A
Other languages
English (en)
Other versions
CN111131424A (zh
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.)
Wuhan University WHU
Original Assignee
Wuhan University WHU
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 Wuhan University WHU filed Critical Wuhan University WHU
Priority to CN201911308215.9A priority Critical patent/CN111131424B/zh
Publication of CN111131424A publication Critical patent/CN111131424A/zh
Application granted granted Critical
Publication of CN111131424B publication Critical patent/CN111131424B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/215Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2474Sequence data queries, e.g. querying versioned data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/10Pre-processing; Data cleansing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements

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)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Medical Informatics (AREA)
  • Quality & Reliability (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Fuzzy Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于EMD和多变量LSTM相结合的服务质量预测方法,包括1:对Web服务历史调用记录进行数据清洗,检测数据集中Web服务质量的缺失值、异常值;2:使用一种基于数据的填补算法补全缺失值和异常值,构建完整有效的服务质量时间序列;3:对时间序列进行数据变换;4:利用EMD方法将服务质量时间序列分解为多个本征模函数和残波部分,然后构建多变量时间序列,建立一个多变量LSTM模型进行服务质量预测。本发明的有益效果是:1)能够根据Web服务的历史调用记录准确预测未知的服务质量,具有很好的实用性。2)通过预测可能存在的SLA违规行为,帮助用户选择既能提供最佳服务质量且具有更高概率满足SLA约束的服务。

Description

一种基于EMD和多变量LSTM相结合的服务质量预测方法
技术领域
本发明涉及服务计算技术领域,具体涉及一种基于EMD和多变量LSTM相结合的服务质量预测方法。
背景技术
Web服务是松散耦合的软件***,通过网络来支持互操作的机器进行交互,它为面向服务的体系结构(Service-OrientedArchitecture,SOA)提供了一个标准化的解决方案。Web服务的数量每年都在不断增长,而这其中有大量的服务提供相似的功能,比如,据ProgrammableWeb(http://www.programmableweb.com/,简称PWeb)统计,能够提供搜索服务的WebAPI截止2019年10月11日就多达3546个。面对这么多功能相同或相似的Web服务,我们需要根据其服务质量选择最合适的服务来更好的满足用户需求。
近年来,研究者提出了许多根据Web服务的历史调用记录来预测Web服务的未知QoS值的服务质量预测方法,主要有三种:基于相似性度量的方法、基于时间序列预测技术的方法和基于深度学习模型的方法。
本申请发明人在实施本发明的过程中,发现现有技术的方法,至少存在如下技术问题:
现有的QoS预测模型都有其不足之处,基于相似度的方法不能捕获QoS的时间动态,需要来自多个数据源(如用户)的QoS信息;基于时间序列预测技术的方法面对具有高波动性、时变特性的数据无法保证准确的预测。神经网络模型(ANN,MLP,RNN)具有处理非线性复杂关系的能力,但只能用于处理短期的数据依赖关系。不准确的预测可能会带来错误选择不合适的Web服务或做出不必要的管理决策等关键问题,进一步影响后续发展造成不必要的损失。
由此可知,现有技术中的方法存在预测结果不够准确的技术问题。
发明内容
有鉴于此,本发明提供了一种基于EMD和多变量LSTM相结合的服务质量预测方法,用以解决或者至少部分解决现有技术中的方法存在的预测结果不够准确的技术问题。
为了解决上述技术问题,本发明提供了一种基于EMD和多变量LSTM相结合的服务质量预测方法,包括:
步骤S1:对Web服务历史调用记录进行数据清洗,检测出异常值和缺失值;
步骤S2:采用预设基于数据的填补算法对检出的异常值和缺失值进行数据补全,构建完整有效的服务质量时间序列;
步骤S3:对完整有效的服务质量时间序列进行数据变换;
步骤S4:基于EMD方法对进行数据变换后的服务质量时间序列进行分解,获得多变量时间序列,根据多变量时间序列获得训练数据;
步骤S5:利用训练数据对预先构建的LSTM模型进行训练,获得训练好的多变量LSTM模型;
步骤S6:利用训练好的多变量LSTM模型对待预测的Web服务调用记录进行质量预测,根据质量预测结果,选择出目标Web服务。
在一种实施方式中,步骤S1具体包括:
步骤S1.1:对Web服务历史调用记录中服务异常进行识别,筛选出初步异常值并标识为缺失值;
步骤S1.2:使用箱线图检测出Web服务历史调用记录中的异常值,并将检测结果中大于或小于箱线图设定的上下界的观察值作为目标异常值并标识。
在一种实施方式中,步骤S2具体包括:
步骤S2.1:从进行数据清洗后的正常数据中提取出日期层次上的变化趋势以及在一天之内的变化趋势,其余为残差部分数据,进行数据清洗后服务质量数据中包括正常数据和异常数据;
步骤S2.2:从正常数据中选取不同时间粒度的基本时间特征以及服务质量数据的历史滞后值作为特征,残差部分数据作为标签,对Xgboost模型进行训练,利用训练好的Xgboost模型对异常值和缺失值的残差部分进行预测,得到残差预测值;
步骤S2.3:将提取出的正常数据的日期层次上的变化趋势、在一天之内的变化趋势和对异常数据的残差预测值相加,对异常值和缺失值进行填补,获得数据填补结果。
在一种实施方式中,步骤S3具体包括:
步骤S3.1:对完整有效的服务质量时间序列进行Box_Cox变换;
步骤S3.2:对进行Box_Cox变换后的服务质量时间序列进行对数变换。
在一种实施方式中,步骤S4具体包括:
步骤S4.1:利用EMD方法将频率不规则的服务质量时间序列分解为多个频率单一IMF分量和一个残余部分Res;
步骤S4.2:对分解后的数据进行尺度变换,将服务质量时间序列的所有分量的数值转换到LSTM模型的激活函数的范围之内;
步骤S4.3:根据进行尺度变换后的多变量时间序列,构建3D张量,3D张量的形式为(samples,timesteps,features),其中,samples表示来自域的独立观察结果,为数据行,timesteps表示当前值与前个时间步连续输入的数据有关联,为历史滞后值,features表示每个时间点上观察到的特征,为多个IMF分量和残余部分Res。
在一种实施方式中,步骤S4.1中采用EMD方法将时间序列分解为一组本征模函数和一个残余波形,结果如下式:
Figure BDA0002323751630000031
其中,X(t)表示原始时间序列,IMFn(t)表示第n个IMF分量,Res(t)表示残波部分。
在一种实施方式中,预先构建的LSTM模型包括两层长短时记忆网络和一个全连接层,步骤S5具体包括:
步骤S5.1:将多变量时间序列输入预先构建的LSTM模型,通过两层长短时记忆网络学习高级时序表征;
步骤S5.2:将输出序列的最后一步传递至全连接层,实现下一个时间步的预测,获得训练好的多变量LSTM模型。
在一种实施方式中,步骤S3.1中对时间序列进行Box_Cox变换,采用如下公式:
Figure BDA0002323751630000032
进行变换,其中,λ表示引入的参数,Y表示待变换的时间序列,Y(λ)表示变换后的结果。
在一种实施方式中,步骤S6中长短时记忆网络的计算过程为:
步骤S6.1:通过遗忘门选择从细胞状态中丢弃的信息,并确定将前一个长期记忆ct-1在多大程度上保存到ct中:
Figure BDA0002323751630000041
步骤S6.2:通过输入门确定被保存到长期记忆状态中的新信息:
Figure BDA0002323751630000042
步骤S6.3:根据确定被保存到长期记忆状态中的新信息,计算长期状态的候选值:
Figure BDA0002323751630000043
步骤S6.4:利用候选值来更新长期状态:
Figure BDA0002323751630000044
步骤S6.5:通过输出门确定当前LSTM的输出值:
Figure BDA0002323751630000045
其中,隐藏层状态ht的计算公式如下:
Figure BDA0002323751630000046
σ表示sigmoid函数,⊙表示按位乘操作,sigmoid函数和tanh函数的计算公式如下:
Figure BDA0002323751630000047
Figure BDA0002323751630000048
m表示LSTM接受的输入变量的维度,u表示LSTM拥有u个神经元,
Figure BDA0002323751630000049
Figure BDA00023237516300000410
Figure BDA00023237516300000411
分别表示在t时刻LSTM的遗忘门、输入门和控制门的状态,都为u维的向量,
Figure BDA00023237516300000412
Figure BDA00023237516300000413
分别表示LSTM在t时刻的输出和细胞状态,都为u维的向量,V为隐藏状态的权重矩阵,是一个u×u的矩阵,W为输入的权重矩阵,是一个u×m的矩阵,b为偏置项。
在一种实施方式中,在得到预测结果之后,所述方法还包括:判断预测结果是否满足服务水平协议SLA约束,若不满足则视为SLA违规,若满足,则不违规。
本申请实施例中的上述一个或多个技术方案,至少具有如下一种或多种技术效果:
本发明公开了一种基于EMD和多变量LSTM相结合的服务质量预测方法,首先对Web服务历史调用记录进行数据清洗,检测出异常值和缺失值;然后采用预设基于数据的填补算法对检出的异常值和缺失值进行数据补全,构建完整有效的服务质量时间序列;接着对完整有效的服务质量时间序列进行数据变换;然后基于EMD方法对进行数据变换后的服务质量时间序列进行分解,获得多变量时间序列,根据多变量时间序列获得训练数据;再利用训练数据对预先构建的LSTM模型进行训练,获得训练好的多变量LSTM模型;最后利用训练好的多变量LSTM模型对待预测的Web服务调用记录进行质量预测,根据质量预测结果,选择出目标Web服务。
通过本发明的方法,可以利用经验模态分解(EMD)方法将服务质量时间序列分解为多个IMF分量和残波部分,然后构建多变量时间序列,用于训练预设LSTM模型,从而得到一个训练好的多变量LSTM模型,进而进行服务质量预测,能够根据Web服务的历史调用记录准确预测未知的服务质量,提高了预测结果的准确性,基于预测结果可以选择出服务质量好的WEB服务,具有很好的实用性。
进一步地,通过预测可能存在的服务水平协议(SLA)违规行为,帮助用户选择既能提供最佳服务质量且具有更高概率满足SLA约束的服务。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明基于EMD和多变量LSTM相结合的服务质量预测方法的流程图;
图2是本发明基于EMD和多变量LSTM相结合的服务质量预测方法的总体框架示意图;
图3是本发明实施例中Web服务“QuoteOfTheDay”的响应时间箱线图;
图4是本发明实施例中对Web服务“Amazon”的响应时间数据提取Seasonal_Date_Trend的过程示意图,其中圆点表示原始数据分布,线条表示提取出来的QoS数据的大体趋势;
图5是本发明实施例中对Web服务“Amazon”的响应时间数据提取Daily_Hour_Trend的过程示意图,其中圆点表示提取Seasnoal_Date_Trend后的数据分布情况,曲线表示提取出来的QoS数据的一天之内的趋势;
图6是本发明实施例中应用一种基于数据的填补算法对Web服务“Amazon”的QoS数据进行缺失值和异常值填补的结果图,圆点表示算法填补的结果;
图7是本发明实施例中对Web服务“Amazon”的QoS数据进行EMD分解的结果图;
图8是本发明实施例中构建的多变量输入模式的示意图;
图9是本发明实施例中构建的多变量LSTM模型的结构图;
图10是图9中多变量LSTM神经元内部在t时刻的实际逻辑架构图;
图11是历史QoS数据与预测结果的关系示意图,
图12是本发明实施例中在Web服务“Amazon”的QoS数据上应用基于EMD和多变量LSTM的服务质量预测方法进行预测的结果图,星形线条是真实值,虚线是预测结果。
具体实施方式
本申请发明人通过大量的研究与实践发现:
服务质量(quality ofservice,QoS)描述Web服务的非功能特性,包括响应时间、吞吐量、服务价格等,它成为从提供相似功能的服务中挑选出最佳服务的决定性因素。一般来说,服务提供者会声明QoS数据并作为服务描述的一部分公开,从而可以由此获得一些静态QoS数据如服务价格等,或者通过服务调用者共享获得一些动态QoS数据如响应时间、吞吐量等。动态QoS数据在服务运行时具有与时间相关的特性,并非一个平稳的状态,因此,根据过去的观察值或服务调用者共享的QoS数据进行预测,从而满足Web服务推荐***和面向服务的体系结构中动态服务组合对QoS数据的需求,是服务计算领域需要解决的关键问题之一。
基于以上考虑,本发明提供了一种基于EMD和多变量LSTM相结合的服务质量预测方法,能够根据Web服务的历史调用记录准确预测未知的服务质量,为动态环境中Web服务推荐和选择提供依据,从而给用户推荐最优服务,具有很好的实用性。
为了解决上述技术问题,本发明的主要构思如下:
1:对Web服务历史调用记录进行数据清洗,检测数据集中Web服务质量的缺失值、异常值;2:使用一种基于数据的填补算法补全缺失值和异常值,构建完整有效的服务质量时间序列;3:对时间序列进行数据变换,使得变换后的数据更符合预测模型对数据分布的假设;4:利用经验模态分解(EMD)方法将服务质量时间序列分解为多个本征模函数和残波部分,然后构建多变量时间序列,建立一个多变量LSTM模型进行服务质量预测。
进一步地,本发明还提供了一种基于EMD和多变量LSTM相结合的服务水平协议(SLA)违规预测机制,通过基于EMD的多变量LSTM预测模型准确预测未来的QoS值,并预测可能的SLA违规行为,帮助用户选择既能提供最佳QoS且具有更高概率满足SLA约束的服务。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本实施例提供了一种基于EMD和多变量LSTM相结合的服务质量预测方法,请参见图1,该方法包括:
步骤S1:对Web服务历史调用记录进行数据清洗,检测出异常值和缺失值。
具体来说,Web服务历史调用记录即Web服务的历史数据,用来对服务质量进行预测。
步骤S2:采用预设基于数据的填补算法对检出的异常值和缺失值进行数据补全,构建完整有效的服务质量时间序列。
具体来说,通过步骤S1可以检测出数据汇总的异常值和缺失值,为了得到完整的服务质量数据,本步骤对其中的异常值和缺失值进行补全。
步骤S3:对完整有效的服务质量时间序列进行数据变换。
具体来说,数据变换的目的是使得变换后的数据更符合预测模型对数据分布的假设,可以采用现有的数据变换方法。
步骤S4:基于EMD方法对进行数据变换后的服务质量时间序列进行分解,获得多变量时间序列,根据多变量时间序列获得训练数据。
具体来说,EMD方法即经验模态分解(empirical mode decomposition,EMD)是一种新的处理非平稳信号的方法,该方法的实质是通过特征时间尺度来识别信号中所内含的所有振动模态(Intrinsic Oscillatory Mode)。在这一过程中,特征时间尺度及IMF的定义都具有一定的经验性和近似性。与其他信号处理方法相比,EMD方法是直观的、间接的、后验的、自适应的,其分解所用的特征时间尺度是源自于原始信号的。得到多变量时间序列后,对其进行尺度变换,使其符合LSTM模型的激活函数。
步骤S5:利用训练数据对预先构建的LSTM模型进行训练,获得训练好的多变量LSTM模型。
具体来说,在得到高质量的训练数据后,则可以利用训练数据对预先构建的LSTM模型进行训练。
步骤S6:利用训练好的多变量LSTM模型对待预测的Web服务调用记录进行质量预测,根据质量预测结果,选择出目标Web服务。
具体来说,该步骤是对训练好的多变量LSTM模型的具体应用,利用训练好的模型即可以进行服务质量的预测,最终根据预测结果选择出质量符合要求的目标Web服务。
在一种实施方式中,步骤S1具体包括:
步骤S1.1:对Web服务历史调用记录中服务异常进行识别,筛选出初步异常值并标识为缺失值;
步骤S1.2:使用箱线图检测出Web服务历史调用记录中的异常值,将检测结果中大于或小于箱线图设定的上下界的观察值作为目标异常值并标识。
具体来说,Web服务历史调用记录中可能存在服务异常的情况以及缺失部分时间段的数据,通过识别服务异常与否,从而筛选并标识出初步异常值和缺失值。
箱线图是一种用作显示一组数据分散情况资料的统计图,它对数据分布没有特殊要求,在S1.1的基础上,可以将大于或小于箱线图设定的上下界的观察值视为异常值并标识。
在具体的实施过程中,利用箱线图检测异常值,采用如下公式:
{outlier}={X>Q3+1.5Q}∪{X<Q1-1.5Q}
进行离群值筛选,其中Q1,Q3分别代表将所有数据按从小到大排列之后的第25%位数(下四分位),第75%位数(上四分位),Q是四分位数间距即Q3和Q1的距离。
在一种实施方式中,步骤S2具体包括:
步骤S2.1:从进行数据清洗后的正常数据中提取出日期层次上的变化趋势以及在一天之内的变化趋势,其余为残差部分数据,进行数据清洗后的服务质量数据包括正常数据和异常数据;
步骤S2.2:从正常数据中选取不同时间粒度的基本时间特征以及服务质量数据的历史滞后值作为特征,残差部分数据作为标签,对Xgboost模型进行训练,利用训练好的Xgboost模型对异常值和缺失值的残差部分进行预测,得到残差预测值;
步骤S2.3:将提取出的正常数据的日期层次上的变化趋势、在一天之内的变化趋势和对异常数据的残差预测值相加,对异常值和缺失值进行填补,获得数据填补结果。
具体来说,步骤S2.1中是根据正常数据的时间粒度在不同的层次上进行趋势描述。首先,从大的趋势上来看服务质量数据的季节性变化,根据数据的分布使用线性回归或曲线回归拟合数据,提取数据日期层次上的趋势,记为Seasonal_Date_Trend,然后,利用提取出Seasonal_Date_Trend后剩余部分Rest(Rest1=Originalt-Seasonal_Date_Trendt)来提取更细的趋势,同样地,可以使用线性回归或曲线回归拟合这部分趋势,提取出服务质量数据在一天之内的变化趋势,记为Daily_Hour_Trend,提取出Seasonal_Date_Trend、Daily_Hour_Trend后的剩余部分数据为:
Rest2=Originalt-Seasonal_Date_Trendt-Daily_Hour_Trendt
异常数据即异常值和缺失值。
由于通过趋势描述提取出Seasonal_Date_Trend和Daily_Hour_Trend后,剩余的残差部分基本在0附近波动,本实施方式使用Xgboost模型来训练这个残差,从正常数据中选取minute、hour、weekday、month等基本时间特征以及服务质量数据的历史滞后值step_1、step_2...step_n作为特征,正常数据的残差作为标签,训练Xgboost模型,然后利用训练好的模型来预测异常数据的残差,记为Residual_Prediction(类似地,从异常数据中提取出不同的基本时间特征以及历史滞后值输入训练好后的Xgboost模型,则可以得到异常数据的残差预测值);对异常数据(即每一个缺失值和异常值),将提取出的正常数据的趋势部分Seasonal_Date_Trend和Daily_Hour_Trend与对异常数据的残差预测值相加,得到填补结果。
在一种实施方式中,步骤S3具体包括:
步骤S3.1:对完整有效的服务质量时间序列进行Box_Cox变换;
步骤S3.2:对进行Box_Cox变换后的服务质量时间序列进行对数变换。
具体来说,对时间序列进行Box_Cox变换,可以一定程度上减小不可观测的误差和预测变量的相关性;进一步对时间序列进行对数变换,可以减小数据的振动幅度,使其线性规律更加明显。
在具体的实施过程中,对时间序列进行Box_Cox变换,采用如下公式:
Figure BDA0002323751630000101
数据变换形式,整个过程完全基于数据本身而无任何先验信息,对比其他变换方式更客观和精确。
在一种实施方式中,步骤S4具体包括:
步骤S4.1:利用EMD方法将频率不规则的服务质量时间序列分解为多个频率单一IMF分量和一个残余部分Res;
步骤S4.2:对分解后的数据进行尺度变换,将服务质量时间序列的所有分量的数值转换到LSTM模型的激活函数的范围之内;
步骤S4.3:根据进行尺度变换后的多变量时间序列,构建3D张量,3D张量的形式为(samples,timesteps,features),其中,samples表示来自域的独立观察结果,为数据行,timesteps表示当前值与前个时间步连续输入的数据有关联,为历史滞后值,features表示每个时间点上观察到的特征,为多个IMF分量和残余部分Res。
具体来说,IMF为本征模函数(Intrinsic Mode Function,简称IMF),Res为残余波形(Residual Waveform,简称Res)。用于分解服务质量时间序列的EMD方法如下:首先,确定原始时间序列X(t)的局部极值点;然后,通过三次样条插值连接极大值点构成上包络线,连接极小值点构成下包络线,并求取上下包络线的平均值m(t);接着,从X(t)中减去m(t),得到候选IMF;紧接着,判断停机准则之一是否满足:(1)X(t)是否为零,(2)h(t)是否满足IMF的两个约束条件(第一,在整个时间范围内,局部极值点和过零点的数目之差不超过1,第二,在任意时刻,平均包络线必须为零),(3)已达到最大迭代次数,(1)~(3)任意一项满足则满足,否则,若不满足,以h(t)为初始信号(代替X(t)),重复上述步骤(即确定原始时间序列X(t)的局部极值点、通过三次样条插值连接极大值点构成上包络线,连接极小值点构成下包络线,并求取上下包络线的平均值m(t);从X(t)中减去m(t),得到候选IMF;判断停机准则之一是否满足的步骤),若满足则确定h(t)为新的IMF,并从X(t)中减去h(t)得到剩余信号r(t),使用r(t)作为新的初始信号(代替X(t)),如果r(t)极值点大于2,重复上述步骤(与前文相同),否则,以r(t)作为残余波形完成分解。
步骤S4.2中激活函数的范围即[-1,1]之间,步骤4.3是将EMD方法提取出来的多个IMF和Res为多变量时间序列,并进一步转化为监督学习问题。
在具体的实施过程中,考虑到LSTM模型的敏感性,对数据进行尺度变换,利用下式将输入控制在[-1,1]范围内:
Figure BDA0002323751630000111
经过变换,数据处于LSTM模型的激活函数的范围之内。
其中,x'为尺度变换后的数据,x为待处理数据,xmin和xmax分别为待处理数据的最小值和最大值。
在一种实施方式中,步骤S4.1中采用EMD方法将时间序列分解为一组本征模函数和一个残余波形,结果如下式:
Figure BDA0002323751630000112
其中,X(t)表示原始时间序列,IMFn(t)表示第n个IMF分量,Res(t)表示残波部分。
在一种实施方式中,预先构建的LSTM模型包括两层长短时记忆网络和一个全连接层,步骤S5具体包括:
步骤S5.1:将多变量时间序列输入预先构建的LSTM模型,通过两层长短时记忆网络学习高级时序表征;
步骤S5.2:将输出序列的最后一步传递至全连接层,实现下一个时间步的预测,获得训练好的多变量LSTM模型。
在一种实施方式中,步骤S6中长短时记忆网络的计算过程为:
步骤S6.1:通过遗忘门选择从细胞状态中丢弃的信息,并确定将前一个长期记忆ct-1在多大程度上保存到ct中:
Figure BDA0002323751630000121
步骤S6.2:通过输入门确定被保存到长期记忆状态中的新信息:
Figure BDA0002323751630000122
步骤S6.3:根据确定被保存到长期记忆状态中的新信息,计算长期状态的候选值:
Figure BDA0002323751630000123
步骤S6.4:利用候选值来更新长期状态:
Figure BDA0002323751630000124
步骤S6.5:通过输出门确定当前LSTM的输出值:
Figure BDA0002323751630000125
其中,隐藏层状态ht的计算公式如下:
Figure BDA0002323751630000126
σ表示sigmoid函数,⊙表示按位乘操作,sigmoid函数和tanh函数的计算公式如下:
Figure BDA0002323751630000127
Figure BDA0002323751630000128
m表示LSTM接受的输入变量的维度,u表示LSTM拥有u个神经元,
Figure BDA0002323751630000129
Figure BDA00023237516300001210
Figure BDA00023237516300001211
分别表示在t时刻LSTM的遗忘门、输入门和控制门的状态,都为u维的向量,
Figure BDA00023237516300001212
Figure BDA00023237516300001213
分别表示LSTM在t时刻的输出和细胞状态,都为u维的向量,V为隐藏状态的权重矩阵,是一个u×u的矩阵,W为输入的权重矩阵,是一个u×m的矩阵,b为偏置项。
在一种实施方式中,在得到预测结果之后,所述方法还包括:判断预测结果是否满足服务水平协议SLA约束,若不满足则视为SLA违规,若满足,则不违规。
下面是应用本发明的方法进行服务质量预测的具体实施例,以Bice Cavallo在实证研究中收集的十个实际Web服务的QoS数据集进行基于EMD和多变量LSTM相结合的服务质量预测为实施例,并结合附图,详细描述本发明的实施过程,其中,图2是本发明基于EMD和多变量LSTM相结合的服务质量预测方法的总体框架示意图。
十个实际Web服务的QoS数据集来源于Bice Cavallo的实证研究,在长达4个月的时间里每隔一个小时调用10个实际服务,然后记录1)调用服务时间,2)SOAP输出消息,3)观察到的响应时间,4)吞吐量,即SOAP消息的大小除以响应时间,5)请求的服务是否异常。
首先,执行步骤S101(对应前文的步骤S1),从数据源中读取原始QoS数据,根据请求的服务是否异常判断当前时间点的QoS数据是否缺失,完成缺失值的检测并标记。
然后,利用箱线图检测QoS数据中的异常值,识别并标记大于或小于箱线图设定的上下界的离群值。图3展示了使用箱线图检测服务“QuoteOfTheDay”的响应时间的异常值的过程,图中存在着很多刺眼的离群点,意味着原始数据中存在着特别大的异常值。
然后,执行步骤S102(对应前文的步骤S2),应用一种基于数据的填补算法补全缺失值和异常值,构建完整有效的服务质量时间序列;
首先,根据数据的时间粒度在不同层次上进行趋势描述,分为两步:第一步,从日期层次上提取QoS数据的季节性变化,在时间维度上将数据上卷到日期层次,然后根据数据的分布使用线性回归拟合数据,提取数据在日期层次上的大体趋势,记为Seasonal_Date_Trend,图4展示了对Web服务“Amazon”的QoS数据提取季节性变化趋势的过程,其原点表示真实数据的分布,线条是通过线性回归拟合得到的趋势;第二步,利用剩余的残差提取更细的趋势,使用曲线回归来拟合这部分趋势,提取出QoS数据在一天之内的变化趋势,记为Daily_Hour_Trend,图5展示了对Web服务“Amazon”的QoS数据提取Daily_Hour_Trend的过程,其中圆点表示每小时平均值,曲线是通过曲线回归拟合得到的趋势。
然后,使用Xgboost模型训练QoS数据通过趋势描述提取出Seasonal_Date_Trend和Daily_Hour_Trend后的残差部分,这部分残差基本在0附近波动,选取hour、weekday、date、month四个基本时间特征和12个历史滞后值step_1、step_2...step_12作为特征训练Xgboost模型,然后利用训练好的模型预测异常数据的残差部分。
最后,将Xgboost模型预测的结果与提取出来的趋势部分相加得到缺失值和异常值的填补结果。图6展示了在Web服务“Amazon”的QoS数据上应用一种基于数据的填补算法补全缺失值和异常值的结果,圆点表示算法的填补结果,线条表示原始数据,算法的结果较为符合原始时间序列的波动特性。
接着,执行步骤103(对应前文的步骤S3),对Web服务的服务质量时间序列进行数据变换,使得变换后的数据更符合模型对数据分布的假设。首先,对QoS数据进行Box_Cox变换,在一定程度上减小不可观测的误差和预测变量的相关性,然后,对QoS数据进行对数变换,使序列平稳,
最后,执行步骤S104(对应前文的步骤S4~S6)利用EMD方法将QoS时间序列分解为多个本征模函数和一个残余波形,然后,构建多变量时间序列,训练一个多变量LSTM进行服务质量预测;
首先,对原始QoS时间序列应用EMD方法,将其分解成多个IMF和一个残波,图7展示了对Web服务“Amazon”的QoS数据进行EMD分解后的结果。
然后,考虑到LSTM模型的敏感性,对输入的数据进行尺度变换,将所有分量的数值变换到[-1,1]之间。
接着,使用EMD提取出来的多个IMF和Res构建多变量时间序列,并转化为监督问题,构建形如(samples,timesteps,features)的3D张量,samples是样本数目,timesteps表示向后看多少个数据学习数据分布规律,选取12个历史滞后值,features是每个时间点观察到的特征,就是多个IMF分量和Res部分。图8展示了多变量输入模式的示意图。
最后,构建多变量LSTM模型以解决多变量时间序列预测问题,模型接受EMD分解得到的IMFs和Res组成的混合序列作为多变量输入,输出下一个时间步的QoS预测值。图9展示了多变量LSTM模型的结构图,模型堆叠了两层LSTM以学习高级时序表征,第一层LSTM返回全部输出序列h1,h2,h3…ht,第二层只返回输出序列的最后一步ht,舍弃时序维度将输入序列转化为单一向量并传给只有一个神经元且带有线性激活函数的全连接层来实现下一个时间步的预测。图10展示了t时刻多变量LSTM神经元内部的实际逻辑架构。
图11是历史QoS数据与预测结果的关系示意图,首先,使用历史QoS时间序列x1,x2,x3…xt的EMD分解结果构成多变量序列,然后,通过多变量LSTM模型预测出下一个时间步yt+1。图12是对Web服务“Amazon”的QoS数据进行基于EMD和多变量LSTM相结合的服务质量预测的结果图,星形线条是真实值,虚线部分是预测结果,模型能够较为准确的预测服务质量。表1是对十个实际Web服务的QoS数据进行基于EMD和多变量LSTM相结合的服务质量预测的结果统计。在完成对未知服务质量的预测后,进一步预测可能出现的SLA违规行为,表2是在十个实际Web服务的QoS数据集上进行基于EMD的多变量LSTM服务质量SLA违规行为预测的结果,表中记录了对每个服务,基于EMD的多变量LSTM预测模型正确预测SLA违规的百分比,并统计了平均性能。
表1十个实际Web服务的QoS数据集上的预测结果统计
Figure BDA0002323751630000151
表2十个实际Web服务的QoS数据集上的SLA违规预测结果统计
Figure BDA0002323751630000152
Figure BDA0002323751630000161
本发明中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。

Claims (4)

1.一种基于EMD和多变量LSTM相结合的服务质量预测方法,其特征在于,包括:
步骤S1:对Web服务历史调用记录进行数据清洗,检测出异常值和缺失值;
步骤S2:采用预设基于数据的填补算法对检出的异常值和缺失值进行数据补全,构建完整有效的服务质量时间序列;
步骤S3:对完整有效的服务质量时间序列进行数据变换;
步骤S4:基于EMD方法对进行数据变换后的服务质量时间序列进行分解,获得多变量时间序列,根据多变量时间序列获得训练数据;
步骤S5:利用训练数据对预先构建的LSTM模型进行训练,获得训练好的多变量LSTM模型;
步骤S6:利用训练好的多变量LSTM模型对待预测的Web服务调用记录进行质量预测,根据质量预测结果,选择出目标Web服务;
其中,步骤S1具体包括:
步骤S1.1:对Web服务历史调用记录中服务异常进行识别,筛选出初步异常值并标识为缺失值;
步骤S1.2:使用箱线图检测出Web服务历史调用记录中的异常值,将检验结果中大于或小于箱线图设定的上下界的观察值作为目标异常值并标识;
步骤S2具体包括:
步骤S2.1:从进行数据清洗后的正常数据中提取出日期层次上的变化趋势以及在一天之内的变化趋势,其余为残差部分数据,进行数据清洗后服务质量数据包括正常数据和异常数据;
步骤S2.2:从正常数据中选取不同时间粒度的基本时间特征以及服务质量数据的历史滞后值作为特征,残差部分数据作为标签,对Xgboost模型进行训练,利用训练好的Xgboost模型对异常值和缺失值的残差部分进行预测,得到残差预测值;
步骤S2.3:将提取出的正常数据的日期层次上的变化趋势、在一天之内的变化趋势和对异常数据的残差预测值相加,对异常值和缺失值进行填补,获得数据填补结果;
步骤S3具体包括:
步骤S3.1:对完整有效的服务质量时间序列进行Box_Cox变换;
步骤S3.2:对进行Box_Cox变换后的服务质量时间序列进行对数变换;
步骤S4具体包括:
步骤S4.1:利用EMD方法将频率不规则的服务质量时间序列分解为多个频率单一IMF分量和一个残余部分Res;
步骤S4.2:对分解后的数据进行尺度变换,将服务质量时间序列的所有分量的数值转换到多变量LSTM模型的激活函数的范围之内;
步骤S4.3:根据进行尺度变换后的多变量时间序列,构建3D张量,3D张量的形式为(samples,timesteps,features),其中,samples表示来自域的独立观察结果,为数据行,timesteps表示当前值与前个时间步连续输入的数据有关联,为历史滞后值,features表示每个时间点上观察到的特征,为多个IMF分量和残余部分Res;
预先构建的LSTM模型包括两层长短时记忆网络和一个全连接层,步骤S5具体包括:
步骤S5.1:将多变量时间序列输入预先构建的LSTM模型,通过两层长短时记忆网络学习高级时序表征;
步骤S5.2:将输出序列的最后一步传递至全连接层,实现下一个时间步的预测,获得训练好的多变量LSTM模型;
步骤S3.1中对时间序列进行Box_Cox变换,采用如下公式:
Figure FDA0002735975380000021
进行变换,其中,λ表示引入的参数,Y表示待变换的时间序列,Y(λ)表示变换后的结果。
2.如权利要求1所述的方法,其特征在于,步骤S4.1中采用EMD方法将时间序列分解为一组本征模函数和一个残余波形,结果如下式:
Figure FDA0002735975380000022
其中,X(t)表示原始时间序列,IMFn(t)表示第n个IMF分量,Res(t)表示残波部分。
3.如权利要求1所述的方法,其特征在于,步骤S6中长短时记忆网络的计算过程为:
步骤S6.1:通过遗忘门选择从细胞状态中丢弃的信息,并确定将前一个长期记忆ct-1在多大程度上保存到ct中:
Figure FDA0002735975380000031
步骤S6.2:通过输入门确定被保存到长期记忆状态中的新信息:
Figure FDA0002735975380000032
步骤S6.3:根据确定被保存到长期记忆状态中的新信息,计算长期状态的候选值:
Figure FDA0002735975380000033
步骤S6.4:利用候选值来更新长期状态:
Figure FDA0002735975380000034
步骤S6.5:通过输出门确定当前LSTM的输出值:
Figure FDA0002735975380000035
其中,隐藏层状态ht的计算公式如下:
Figure FDA0002735975380000036
σ表示sigmoid函数,⊙表示按位乘操作,sigmoid函数和tanh函数的计算公式如下:
Figure FDA0002735975380000037
Figure FDA0002735975380000038
m表示LSTM接受的输入变量的维度,u表示LSTM拥有u个神经元,
Figure FDA0002735975380000039
Figure FDA00027359753800000310
Figure FDA00027359753800000311
分别表示在t时刻LSTM的遗忘门、输入门和控制门的状态,都为u维的向量,
Figure FDA00027359753800000312
Figure FDA00027359753800000313
分别表示LSTM在t时刻的输出和细胞状态,都为u维的向量,V为隐藏状态的权重矩阵,是一个u×u的矩阵,W为输入的权重矩阵,是一个u×m的矩阵,b为偏置项。
4.如权利要求1所述的方法,其特征在于,在得到预测结果之后,所述方法还包括:判断预测结果是否满足服务水平协议SLA约束,若不满足则视为SLA违规,若满足,则不违规。
CN201911308215.9A 2019-12-18 2019-12-18 一种基于emd和多变量lstm相结合的服务质量预测方法 Active CN111131424B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911308215.9A CN111131424B (zh) 2019-12-18 2019-12-18 一种基于emd和多变量lstm相结合的服务质量预测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911308215.9A CN111131424B (zh) 2019-12-18 2019-12-18 一种基于emd和多变量lstm相结合的服务质量预测方法

Publications (2)

Publication Number Publication Date
CN111131424A CN111131424A (zh) 2020-05-08
CN111131424B true CN111131424B (zh) 2020-12-18

Family

ID=70499604

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911308215.9A Active CN111131424B (zh) 2019-12-18 2019-12-18 一种基于emd和多变量lstm相结合的服务质量预测方法

Country Status (1)

Country Link
CN (1) CN111131424B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111914873B (zh) * 2020-06-05 2024-07-19 华南理工大学 一种两阶段云服务器无监督异常预测方法
CN112231307A (zh) * 2020-09-18 2021-01-15 苏州冷王网络科技有限公司 一种基于lstm的冷链监测温湿度数据拟合方法
CN112162860A (zh) * 2020-09-25 2021-01-01 中国民航大学 基于if-emd-lstm的cpu负载趋势预测方法
CN112532429B (zh) * 2020-11-11 2023-01-31 北京工业大学 一种基于位置信息的多变量QoS预测方法
CN114826988A (zh) * 2021-01-29 2022-07-29 中国电信股份有限公司 时序数据的异常检测和参数填补的方法及装置
CN113177672B (zh) * 2021-05-28 2023-12-15 阜新博远科技有限公司 基于长短时记忆网络的pm2.5预测方法
CN113688771B (zh) * 2021-09-02 2024-04-05 重庆大学 Lng储罐加速度响应数据补全方法及装置
CN114037551A (zh) * 2021-11-15 2022-02-11 中国水产科学研究院渔业机械仪器研究所 池塘养殖pH值缺失数据插补方法
CN117807380A (zh) * 2024-01-02 2024-04-02 中国科学院西北生态环境资源研究院 一种时间序列数据补全方法、装置、存储介质及电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109131452A (zh) * 2018-08-14 2019-01-04 西安理工大学 一种基于长短时记忆网络的列车状态在线预测方法
CN109919082A (zh) * 2019-03-05 2019-06-21 东南大学 基于lstm与emd的模态识别方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3908627B2 (ja) * 2002-08-21 2007-04-25 日本電信電話株式会社 Webページ転送時間推定装置、Webページ転送時間推定プログラム及びWebページ転送時間推定プログラムを記録したコンピュータ読み取り可能な記録媒体
KR102157668B1 (ko) * 2014-04-03 2020-09-22 에스케이하이닉스 주식회사 호스트와 통신하는 메모리 컨트롤러, 그것의 동작 방법 및 그것을 포함하는 컴퓨팅 시스템
CN109257217B (zh) * 2018-09-19 2021-08-10 河海大学 移动边缘环境下基于隐私保护的Web服务QoS预测方法
CN110362772B (zh) * 2019-06-11 2022-04-01 北京邮电大学 基于深度神经网络的实时网页质量评估方法及***

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109131452A (zh) * 2018-08-14 2019-01-04 西安理工大学 一种基于长短时记忆网络的列车状态在线预测方法
CN109919082A (zh) * 2019-03-05 2019-06-21 东南大学 基于lstm与emd的模态识别方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Mechanical State Prediction Based on LSTM Neural Network;Zaifa Chen,et.al;《IEEE》;20170728;第3876~3881页 *

Also Published As

Publication number Publication date
CN111131424A (zh) 2020-05-08

Similar Documents

Publication Publication Date Title
CN111131424B (zh) 一种基于emd和多变量lstm相结合的服务质量预测方法
Kumar et al. A big data driven framework for demand-driven forecasting with effects of marketing-mix variables
US11551156B2 (en) Systems and methods for forecast alerts with programmable human-machine hybrid ensemble learning
Krishna et al. Sales-forecasting of retail stores using machine learning techniques
Yerpude et al. Impact of internet of things (IoT) data on demand forecasting
US8543445B2 (en) System and method for direct mailing insurance solicitations utilizing hierarchical bayesian inference for prospect selection
US11501107B2 (en) Key-value memory network for predicting time-series metrics of target entities
US10558987B2 (en) System identification framework
CN114971748B (zh) 预测数据生成、模型训练方法、计算机设备以及存储介质
WO2020004049A1 (ja) 情報処理装置、情報処理方法、およびプログラム
CN115965463A (zh) 模型训练方法、装置、计算机设备及存储介质
Mansouri et al. The moderating role of master production scheduling method on throughput in job shop systems
CN113469482A (zh) 用于数据分析的方法、设备以及计算机可读存储介质
Lepenioti et al. Human-augmented prescriptive analytics with interactive multi-objective reinforcement learning
CN117853158A (zh) 基于动态量本利分析的企业运营数据预测方法及装置
Borysenko et al. Intelligent forecasting in multi-criteria decision-making.
Sarhani et al. Forecasting demand with support vector regression technique incorporating feature selection in the presence of calendar effect
Hoffmann et al. Forecasting irregular demand using single hidden layer neural networks
Zhang et al. A combinational QoS-prediction approach based on RBF neural network
Vaitkus et al. Electrical spare parts demand forecasting
Qureshi et al. A comparative analysis of traditional SARIMA and machine learning models for CPI data modelling in Pakistan
Lee et al. Design and development of inventory knowledge discovery system
Chen et al. A fuzzy polynomial fitting and mathematical programming approach for enhancing the accuracy and precision of productivity forecasting
Wan et al. Forecasting E-commerce Key Performance Indicators
Krishna et al. Identifying demand forecasting using machine learning for business intelligence

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
GR01 Patent grant
GR01 Patent grant