信任感知的Web服务质量预测系统及方法

文档序号:10660662
信任感知的Web服务质量预测系统及方法
【专利摘要】本发明所设计的信任感知的Web服务质量预测系统,它的输入数据处理模块的输出端连接QoS数据库,QoS数据库的第一数据输出端连接可信邻居挖掘模块,QoS数据库的第二数据输出端连接用户信誉度计算模块,QoS数据库的第三数据输出端连接相似服务挖掘模块,用户信誉度计算模块的第一数据输出端连接可信邻居挖掘模块,用户信誉度计算模块的第二数据输出端连接相似服务挖掘模块,可信邻居挖掘模块的数据输出端连接QoS预测模块,相似服务挖掘模块的数据输出端连接QoS预测模块。本发明有效地保证了Web服务QoS预测过程中采用的QoS数据的可信性。
【专利说明】
信任感知的We b服务质量预测系统及方法
技术领域
[0001] 本发明涉及面向服务计算和云计算技术领域,具体地指一种信任感知的Web服务 质量预测系统及方法。 技术背景
[0002] Web服务是由通用资源标识符(URI)标记的一种软件系统,其公共接口和绑定方法 由可扩展标记语言(XML,Extensible Markup Language)进行定义和描述,并且其它软件系 统可根据Web服务的描述对其进行发现以及通过Internet协议与其交换基于XML的消息。简 言之,Web服务是一种自描述、自包含、平台独立和松散耦合的分布式应用,由于建立一系列 基于XML的开放标准和协议基础上,使得Web服务可在网络中被描述、发布、发现、绑定和调 用等。Web服务技术作为一种新型的分布式计算模型,近年来被广泛用于跨地区、跨组织和 跨系统的异构信息系统综合集成,以及基于互联网的面向服务应用系统的构建。
[0003] 随着面向服务计算技术、云计算和大数据等技术的发展,网络中出现大量功能相 似的Web服务,服务质量(QoS,Quality of Service)成为用户在消费Web服务时应考虑的重 要因素,也是服务供应商用于推销其Web服务的主要卖点。QoS是一组用于描述Web服务非功 能性特征的属性,包括响应时间、吞吐量、可靠性和可用性等。在实际应用中,由于受不同用 户的网络状况、地理位置等客观因素影响,部分依赖于用户的QoS属性(如响应时间、吞吐量 等)会表现出较强的用户差异性,因此为了辅助用户选取性能优异的Web服务来构建高质量 应用,个性化的Web服务QoS预测显得尤为重要。近年来,由于协同过滤技术在亚马逊、 YouTube和Netfix等商业推荐系统取得了较大成功,许多学者提出将协同过滤技术应用于 Web服务的QoS个性化预测。协同过滤技术采用相似用户或相似服务的历史QoS数据来为当 前用户预测目标服务的未知QoS。虽然目前许多基于协同过滤的QoS预测方法一定程度上提 升了预测准确度,但普遍忽略了 QoS数据的可信性问题。现有方法通常假设系统中的用户都 是可信的,并且会提交可靠的QoS反馈数据。然而不可信用户在大多数推荐系统中普遍存 在,这些用户可能会为了谋取不法利益而故意抬高合作方的服务或故意贬低竞争方的服 务,因此历史QoS数据中混杂了这些不可信用户提交的虚假数据。在不可信数据条件下,现 有的QoS预测方法普遍表现出QoS预测准确度较低的问题,无法为用户提供高质量的Web月艮 务推荐。

【发明内容】

[0004] 本发明的目的就是要提供一种信任感知的Web服务质量预测系统及方法,该系统 和方法能有效提升在不可信QoS数据条件下QoS预测的准确度以及实现高质量的Web服务推 荐。
[0005] 为实现此目的,本发明所设计的信任感知的Web服务质量预测系统,其特征在于: 它包括输入数据处理模块、QoS数据库、可信邻居挖掘模块、用户信誉度计算模块、相似服务 挖掘模块和QoS预测模块,其中,所述输入数据处理模块的数据输入端用于接收用户反馈的 QoS信息,输入数据处理模块的数据输出端连接QoS数据库的数据输入端,QoS数据库的第一 数据输出端连接可信邻居挖掘模块的数据输入端,QoS数据库的第二数据输出端连接用户 信誉度计算模块的输入端,QoS数据库的第三数据输出端连接相似服务挖掘模块的输入端, 用户信誉度计算模块的第一数据输出端连接可信邻居挖掘模块的数据输入端,用户信誉度 计算模块的第二数据输出端连接相似服务挖掘模块的数据输入端,可信邻居挖掘模块的数 据输出端连接QoS预测模块的数据输入端,相似服务挖掘模块的数据输出端连接QoS预测模 块的数据输入端,QoS预测模块的数据输出端用于向用户推荐Web服务。
[0006] 一种利用上述系统进行信任感知的Web服务质量预测的方法,其特征在于它包括 如下步骤:
[0007] 步骤1:各个用户将QoS反馈数据传输给数据处理模块,数据处理模块对QoS反馈数 据进行规范化处理得到统一格式的QoS数据,并将统一格式的QoS数据传输给QoS数据库, QoS数据库将统一格式的QoS数据传输给用户信誉度计算模块,用户信誉度计算模块采用K-means聚类算法对不同用户提交的QoS反馈数据进行聚类,并识别出每个Web服务上的可信 用户簇;进而,根据用户在每个Web服务上的QoS反馈与该服务上的可信用户簇的偏离程度, 对用户的QoS反馈数据进行分类;最后,根据用户的反馈分类信息,采用Beta概率密度函数 动态评估用户的信誉度;
[0008] 步骤2: QoS数据库将统一格式的QoS数据传输给可信邻居挖掘模块,用户信誉度计 算模块将计算的用户信誉度传输给可信邻居挖掘模块,可信邻居挖掘模块采用皮尔森相关 系数计算用户间的相似度,并结合在步骤1中得到的用户信誉度,识别出当前用户的一组可 信邻居;然后利用可信邻居的QoS数据为当前用户预测目标服务的未知QoS数据;
[0009] 步骤3: QoS数据库将统一格式的QoS数据传输给相似服务挖掘模块,用户信誉度计 算模块将计算的用户信誉度数据传输给相似服务挖掘模块,相似服务挖掘模块将计算的用 户信誉度数据与预设的用户信誉度阈值进行比较,对信誉度高于预设的用户信誉度阈值的 用户所提交的不同Web服务QoS数据,采用K-means聚类算法进行聚类,然后根据不同Web月艮 务被聚类为同一簇的频度,计算Web服务间的相似度,最后识别出目标服务的一组相似服 务,并利用相似服务的QoS数据预测该目标服务的QoS数据;
[0010]步骤4:可信邻居挖掘模块将为当前用户预测目标服务的QoS数据传输给QoS预测 模块,相似服务挖掘模块将预测目标服务的QoS数据传输给QoS预测模块,QoS预测模块利用 加权法对步骤2的目标服务的QoS预测值和步骤3的目标服务的QoS预测值进行综合,为当前 用户预测目标服务未知QoS的最终值,并将QoS预测值最优的单个服务或一组Web服务推荐 给当前用户。
[0011 ]本发明采用无监督K-means聚类算法和Beta概率分布来动态计算反馈用户的信誉 度,有效地保证了 Web服务QoS预测过程中采用的QoS数据的可信性,该方法可有效提升QoS 预测方法的鲁棒性。本发明充分利用了可信邻居和相似服务的QoS数据,保证了 QoS预测方 法的准确度和可靠性,将大大提升不可信数据条件下的Web服务推荐的质量。
【附图说明】
[0012] 图1为本发明工作时的系统框架结构示意图。
[0013] 图中,1-输入数据处理模块、2-QoS数据库、3-可信邻居挖掘模块、4-用户信誉 度计算模块、5-相似服务挖掘模块、6-QOS预测模块。
【具体实施方式】
[0014]以下结合附图和具体实施例对本发明作进一步的详细说明:
[0015] -种信任感知的Web服务质量预测系统,如图1所示,它包括输入数据处理模块1、 QoS数据库2、可信邻居挖掘模块3、用户信誉度计算模块4、相似服务挖掘模块5和QoS预测模 块6,其中,所述输入数据处理模块1的数据输入端用于接收用户反馈的QoS信息,输入数据 处理模块1的数据输出端连接QoS数据库2的数据输入端,QoS数据库2的第一数据输出端连 接可信邻居挖掘模块3的数据输入端,QoS数据库2的第二数据输出端连接用户信誉度计算 模块4的输入端,QoS数据库2的第三数据输出端连接相似服务挖掘模块5的输入端,用户信 誉度计算模块4的第一数据输出端连接可信邻居挖掘模块3的数据输入端,用户信誉度计算 模块4的第二数据输出端连接相似服务挖掘模块5的数据输入端,可信邻居挖掘模块3的数 据输出端连接QoS预测模块6的数据输入端,相似服务挖掘模块5的数据输出端连接QoS预测 模块6的数据输入端,QoS预测模块6的数据输出端用于向用户推荐Web服务。
[0016] 本系统在工作时,如图1所示,用户通过网络调用远程服务器上的Web服务,并将观 测到的QoS数据反馈给信任感知的Web服务质量预测系统,输入数据处理模块1对收集到的 用户反馈数据进行处理,然后提交给QoS数据库2进行存储,用户信誉度计算模块4根据收集 到的用户反馈数据计算用户的信誉度;可信邻居挖掘模块3和相似服务挖掘模块5根据收集 到的用户反馈数据和计算得到的用户信誉度,识别出一组可信邻居和相似服务;QoS预测模 块6为当前用户预测目标服务的未知QoS,并将QoS最优的一个或一组Web服务推荐给当前用 户。
[0017] 一种利用上述系统进行信任感知的Web服务质量预测的方法,它通过挖掘一组可 信邻居和相似服务来为当前用户预测目标Web服务的未知服务质量,以实现高质量的Web月艮 务推荐,首先通过对反馈用户聚类以识别出每个服务上的可信用户簇,然后对用户提交的 反馈数据进行分类,其次根据用户反馈分类信息,采用Beta概率密度函数动态计算用户的 信誉度,进而结合用户信誉度和用户间的皮尔森相似度来挖掘出当前用户的一组可信邻 居,同时通过对服务的聚类挖掘出目标服务的一组相似服务,最后利用可信邻居和相似服 务的QoS数据实现高质量的QoS预测,该方法效率高、预测精度高、鲁棒性强,可实现在不可 信QoS数据条件下的高质量服务推荐;该方法的具体步骤为:
[0018] 步骤1:各个用户将QoS反馈数据传输给数据处理模块1,数据处理模块1对QoS反馈 数据进行规范化处理得到统一格式的QoS数据,并将统一格式的QoS数据传输给QoS数据库 2,Q 〇S数据库2将统一格式的QoS数据传输给用户信誉度计算模块4,用户信誉度计算模块4 采用K-means聚类算法对不同用户提交的QoS反馈数据进行聚类,并识别出每个Web服务上 的可信用户簇;进而,根据用户在每个Web服务上的QoS反馈与该服务上的可信用户簇的偏 离程度,对用户的QoS反馈数据进行分类;最后,根据用户的反馈分类信息,采用Beta概率密 度函数动态评估用户的信誉度;
[0019] 步骤2:Q〇S数据库2将统一格式的QoS数据传输给可信邻居挖掘模块3,用户信誉度 计算模块4将计算的用户信誉度传输给可信邻居挖掘模块3,可信邻居挖掘模块3采用皮尔 森相关系数(PCC,Pearson Correlation Coefficient)计算用户间的相似度,并结合在步 骤1中得到的用户信誉度,识别出当前用户的一组可信邻居;然后利用可信邻居的QoS数据 为当前用户预测目标服务的未知QoS数据;
[0020] 步骤3: QoS数据库2将统一格式的QoS数据传输给相似服务挖掘模块5,用户信誉度 计算模块4将计算的用户信誉度数据传输给相似服务挖掘模块5,相似服务挖掘模块5将计 算的用户信誉度数据与预设的用户信誉度阈值进行比较,对信誉度高于预设的用户信誉度 阈值的用户所提交的不同Web服务QoS数据,采用K-means聚类算法进行聚类,然后根据不同 Web服务被聚类为同一簇的频度,计算Web服务间的相似度,最后识别出目标服务的一组相 似服务,并利用相似服务的QoS数据预测该目标服务的QoS数据;
[0021] 步骤4:可信邻居挖掘模块3将为当前用户预测目标服务的QoS数据传输给QoS预测 模块6,相似服务挖掘模块5将预测目标服务的QoS数据传输给QoS预测模块6,QoS预测模块6 利用加权法对步骤2的目标服务的QoS预测值和步骤3的目标服务的QoS预测值进行综合,为 当前用户预测目标服务未知QoS的最终值,并将QoS预测值最优的单个服务或一组Web服务 推荐给当前用户。
[0022] 上述技术方案的步骤1中,WSDream是一组公开的Web服务QoS数据集,其记录了现 实中339个不同用户对5825个Web服务的QoS调用数据,通过对WSDream中QoS数据的统计,约 有91 %的Web服务响应时间分布在[0,2]的范围内,因此认为虽然不同用户体验到的服务 QoS各不相同,但大多数服务的QoS普遍分布在某个规范的区域内,换言之,偏离服务的规范 QoS值的异常观测样本出现的概率很低,因此可以认为,假如某个用户经常提交与其他用户 偏离程度较大的QoS反馈,则该用户很大概率上为不可信用户,基于上述观点,下面介绍通 过基于用户的聚类来评估用户的信誉度;
[0023] 用户信誉度计算模块4采用K-means聚类算法对不同用户提交的QoS反馈数据进行 聚类,并识别出每个Web服务上的可信用户簇的具体方法为:
[0024] QoS预测系统中包含m个用户和η个服务,用户对服务的QoS历史调用信息可以表示 为一个mXn矩阵R,其中任意项Ru表示用户m调用服务后观测到的QoS值,如果用户m之前 未调用过服务则R^=null,Q 〇S预测系统的目标就是通过矩阵中已有的数据项来预测这 些缺失的数据项,为了评估用户的可信性,首先采用K-means聚类算法对不同用户提交的 QoS反馈数据进行聚类,对于服务通过最小化式1来对调用过该服务的所有用户进行聚 类。
[0026] 其中,J为对用户进行聚类的目标函数,Ku表示用户被聚类后的簇数量,0表示服 务sj上的第k个簇,;^是第k个簇的中心,k(l彡k彡K u)是簇的编号;
[0027] 完成以上聚类过程后,用户将被聚类为若干个簇,处于同一簇中的用户具有更高 的相似性;
[0028] 由于一般系统中的大多数用户为可信的,因此将包含最多元素的用户簇定义为可 信用户簇,可信用户簇可由式(2)表示:
[0030] 其中|ct|表示服务&上的第k个簇的用户数量,i表示包含最多元素的用户簇的编 号,u表示用户簇中的用户,由于可信用户簇^ω'反映了大多数用户的观测值,因此可信用 户簇中的QoS数据为最接近服务~的规范QoS值。如前所述,一个偏离服务的规范QoS值的异 常观测样本一般很少出现,因此采用可信用户簇将用户的反馈数据分为两类:积极反馈和 消极反馈,积极反馈表示用户反馈的数据与大多数用户相似,消极反馈表示用户反馈的数 据与大多数用户都不一致。
[0031] 上述技术方案的步骤1中,根据用户在每个Web服务上的QoS反馈与该服务上的可 信用户簇的偏离程度,对用户的QoS反馈数据进行分类的具体方法为:如前所述,一个偏离 服务的规范QoS值的异常观测样本一般很少出现,因此采用可信用户簇将用户的反馈数据 分为积极反馈和消极反馈,积极反馈表示用户反馈的数据与50 %以上用户相似,消极反馈 表示用户反馈的数据与50%以上的用户都不一致;
[0032]由于不同用户观测到的Web服务的QoS值服从高斯分布Ν(μ,σ2),其中μ和σ分别是 QoS数据的均值和标准差,由高斯分布的3-σ准则可知,某个QoS观测样本落入(μ_3σ,μ+3σ) 区域的概率为99.7%,因此用户m观测到的服务的QoS值的概率Ρ满足式(3),上述概率ρ是 为了反映出现异常值的概率很低,假如出现了可以认为是消极反馈,即为式(4)的分类提供 依据:
fYlQX ??ΙΟ,Χ
[0034] 其中表示服务以上的可信用户簇的簇中心,表示服务以上的可信用 户簇巧^的标准差,在式(3)中,采用可信用户簇的数据而不是系统中整个用户的数据来评 估,是因为系统中包含的不可信用户会导致评估出现偏差;
[0035] 在式(3)基础上,采用式(4)将用户反馈分类为积极反馈或消极反馈,
[0037]当所有的用户反馈数据都被分类后,每个用户的QoS反馈信息可以表示为一个反 馈向量:
[0039] 在上式中Fi表示用户m的反馈向量,pi表示m提交的积极反馈的数量,m表示m提 交的消极反馈的数量。
[0040] 上述技术方案的步骤1中,根据用户的反馈分类信息,采用Beta概率密度函数动态 评估用户的信誉度的具体方法为:
[0041 ] 如下式(6)为Beta概率分布的表达式:
[0043] 其中Pi表示用户未来会提交积极反馈的概率,α和β为Beta分布的两个参数,它们 满足〇彡Pi彡1,α,β>0,假如a < 1,则随机变量P1辛〇,当β< 1时,贝IJ随机变量P1辛1,Γ为伽马 函数,Be ta分布的期望值可由式(7)表示:
[0044] Ε(ρ)=α/(α+β) (7)
[0045] 当户m的反馈向量Fi包含pi个积极反馈和m个消极反馈时,用户m未来会提供积极 反馈的概率密度函数可表示为其过去所提供的反馈数据的函数,即通过更新参数α和β得到 新的Beta分布:
[0046] a = pi+10 = ni+l,其中pi,m^0 (8)
[0047] 当获取了用户m的反馈向量Fdt,用户m的后验信誉值可通过结合其先验信誉值 和新观测到的反馈数据而计算得到:
[0049] 其中Rep(m)为用户m的信誉值,取值范围为[0,1]。
[0050] 上述技术方案的步骤2中可信邻居挖掘模块3采用皮尔森相关系数计算用户间的 相似度,并结合在步骤1中得到的用户信誉度,识别出当前用户的一组可信邻居的具体方法 为:
[0051] 用户间的信任值表示一个用户多大程度上可以信任另一个用户的QoS反馈数据。 用户对一个实体的信任可以源于用户对该实体的直接经验也可以源于该实体的信誉度,根 据用户对共同调用的Web服务上的QoS反馈数据的皮尔森相似性来评估用户的直接经验,然 后结合用户信誉度来评估用户间的信任值,用户间的PCC相似度可由式(10)计算得到:
[0053] 其中Sim(Ui,ua)是用户Ui和ua间的相似度,取值范围为[-1,1],值越大表示越相 似,R aj为用户~调用服务Sj时体验到的QoS服务,j为QoS服务的编号,Sia = SiHSa是用户m和 ua共同调用过的Web服务的集合,Ru是用户m调用服务~时体验到的QoS,瓦和瓦分别表示 用户udPu a观测到的不同服务的平均QoS值;
[0054] 用户udPua间的信任值可通过结合它们的相似度和ua的信誉度计算得到:
[0056] 其中T(Ul,Ua)是用户山和~间的信任值,表示m多大程度上信任~的反馈数据;Rep (u a)是用户ua的信誉度,Sim(Ui,ua)是用户ujPua间的相似度,从上式可知信任值T(Ui,u a)取 值范围为[0,1],值越大表示用户m越信任用户uJ^QoS反馈数据;
[0057] 当所有用户间的信任值都被评估后,可通过式(12)为用户m识别出一组可信邻居 S(ui):
[0058] S(m) = {ua|uaeU,T(Ui,ua)^:0.5,ua^Ui} (12)
[0059] 其中U为QoS预测系统中的用户集,由上式可知信任值彡0.5的用户被认为是可信 邻居。
[0060] 上述技术方案的步骤2中,利用可信邻居的QoS数据为当前用户预测目标服务的未 知QoS数据的具体方法为:根据式(13)使用可信邻居的QoS数据为当前用户的未知QoS数据 进行预测:
[0062] 其中表示用户出调用服务sj^QoS预测值,瓦是出观测到的不同服务的QoS平均 值,瓦是可信邻居~观测到的不同服务的QoS平均值,心为用户ua调用服务以时体验到的 QoS服务。
[0063] 上述技术方案的步骤3中,采用K-means聚类算法进行聚类的具体方法为:对于用 户m,通过最小化式(14)来对它调用过的Web服务进行聚类。
[0065]其中为服务聚类的目标函数,Cf表示用户m上的第k个服务簇是用户m上的 第k个服务簇的中心,k(l<k<Ks)是簇的编号;完成以上聚类过程后,服务将被聚类为若干 个簇,处于同一个簇内的服务具有更高的相似性;
[0066]步骤3中,根据不同Web服务被聚类为同一簇的频度,计算Web服务间的相似度的具 体方法为:
[0067]为了评估服务间的相似度,对每个高信誉用户在不同服务上的QoS反馈数据进行 聚类,然后根据不同服务被聚类为同一簇的频度计算服务间的相似度,为了评估服务间的 相似度,我们对每个高信誉用户在不同服务上的QoS反馈数据进行聚类,然后根据不同服务 被聚类为同一簇的频度计算服务间的相似度,服务~和&被聚类为同一簇的次数可表示为:
[0069] 其中f(Sj,Sr)是服务SjPSr在高信誉用户上被聚类为同一簇的次数,其中信誉度 彡0.5的用户被为高信誉用户,i是用户的编号,M&sr)是一个指示函数,当服务sjPSr在 用户m上被聚类为同一簇时iKshSr)取值为1,否则取值为0;仏是高信誉用户集,由式(16) 定义:
[0070] Uw= {ui |uieU,Rep(ui)^0.5} (16)
[0071] 其中U是QoS预测系统中的用户集,Rep(Ul)是用户m的信誉度,从上式可知信誉度 多0.5的用户被视为高信誉用户;
[0072]当所有服务的QoS数据都被聚类后,服务间的相似度可由式(17)计算得到:
[0074] 其*f_(Sj)表示服务~与其它服务被聚类为同一簇的最少次数,fmax(Sj)表示服 务~与其它服务被聚类为同一簇的最多次数,Sim( Sj,sr)表示服务sjPsr间的相似度,其取 值范围为[0,1 ],值越高表示越相似,完成所有服务间的相似度计算后,选取Top-k个最相似 的服务集S(Sj)作为服务 Sj的邻居集,其中,Top-k表示最相似的K个;
[0075] 上述技术方案的步骤3中,识别出目标服务的一组相似服务,利用相似服务的QoS 数据预测该目标服务的QoS数据的具体方法为:利用目标服务的邻居集S(~)的QoS数据来 为~未知的QoS数据进行预测:
[0077] 其中,&表示用户m调用服务&的(^预测值,sr是服务&的邻居,S(Sj)是服务巧的 邻居集,R ir是用户m观测到的服务sr的QoS值。
[0078] 上述技术方案中,步骤1和步骤2介绍的基于用户的聚类方法可以为当前用户识别 出一组可信邻居并利用他们的QoS数据进行预测,但是基于用户的聚类方法忽略了相似服 务的信息。在步骤3中,采用基于服务的聚类方法来挖掘出目标服务的一组相似服务,用于 提升QoS预测的准确度。
[0079] 上述技术方案的步骤4中,Q0S预测模块(6)利用加权法对步骤2的当前用户预测目 标服务的未知QoS数据和步骤3的预测目标服务的QoS数据进行综合的具体方法为:通过调 节参数λ来结合以上基于用户的聚类方法和基于服务的聚类方法的QoS预测结果,从而为当 前用户准确地预测目标服务的未知Q〇S,最终的QoS预测值可由式(19)表示:
[0081] 其中参数λ(〇<λ<1)为调节参数,λ决定了最终的Q〇S预测值多大程度上依赖基于 用户的聚类方法或基于服务的聚类方法,在上式中表示基于用户的聚类方法得到的QoS 1} 预测结果,表示基于服务的聚类方法得到的QoS预测结果,表示为当前活动用户预测 的最终QoS值,最后,系统根据预测得到的所有候选Web服务的QoS值,来将QoS最优的一个或 若干个Web服务推荐给当前活动用户。
[0082] 本说明书未作详细描述的内容属于本领域专业技术人员公知的现有技术。
【主权项】
1. 一种信任感知的Web服务质量预测系统,其特征在于:它包括输入数据处理模块(I)、 QoS数据库(2)、可信邻居挖掘模块(3)、用户信誉度计算模块(4)、相似服务挖掘模块(5)和 QoS预测模块(6),其中,所述输入数据处理模块(1)的数据输入端用于接收用户反馈的QoS 信息,输入数据处理模块(1)的数据输出端连接QoS数据库(2)的数据输入端,QoS数据库(2) 的第一数据输出端连接可信邻居挖掘模块(3)的数据输入端,QoS数据库(2)的第二数据输 出端连接用户信誉度计算模块(4)的输入端,QoS数据库(2)的第三数据输出端连接相似服 务挖掘模块(5)的输入端,用户信誉度计算模块(4)的第一数据输出端连接可信邻居挖掘模 块(3)的数据输入端,用户信誉度计算模块(4)的第二数据输出端连接相似服务挖掘模块 (5) 的数据输入端,可信邻居挖掘模块(3)的数据输出端连接QoS预测模块(6)的数据输入 端,相似服务挖掘模块(5)的数据输出端连接QoS预测模块(6)的数据输入端,QoS预测模块 (6) 的数据输出端用于向用户推荐Web服务。2. -种利用权利要求1所述系统进行信任感知的Web服务质量预测的方法,其特征在于 它包括如下步骤: 步骤1:各个用户将QoS反馈数据传输给数据处理模块(1),数据处理模块(1)对QoS反馈 数据进行规范化处理得到统一格式的QoS数据,并将统一格式的QoS数据传输给QOS数据库 (2),Q〇S数据库(2)将统一格式的QoS数据传输给用户信誉度计算模块(4),用户信誉度计算 模块(4)采用K-means聚类算法对不同用户提交的QoS反馈数据进行聚类,并识别出每个Web 服务上的可信用户簇;进而,根据用户在每个Web服务上的QoS反馈与该服务上的可信用户 簇的偏离程度,对用户的QoS反馈数据进行分类;最后,根据用户的反馈分类信息,采用Beta 概率密度函数动态评估用户的信誉度; 步骤2:Q0S数据库(2)将统一格式的QoS数据传输给可信邻居挖掘模块(3),用户信誉度 计算模块(4)将计算的用户信誉度传输给可信邻居挖掘模块(3),可信邻居挖掘模块(3)采 用皮尔森相关系数计算用户间的相似度,并结合在步骤1中得到的用户信誉度,识别出当前 用户的一组可信邻居;然后利用可信邻居的QoS数据为当前用户预测目标服务的未知QoS数 据; 步骤3:Q〇S数据库(2)将统一格式的QoS数据传输给相似服务挖掘模块(5),用户信誉度 计算模块(4)将计算的用户信誉度数据传输给相似服务挖掘模块(5),相似服务挖掘模块 (5)将计算的用户信誉度数据与预设的用户信誉度阈值进行比较,对信誉度高于预设的用 户信誉度阈值的用户所提交的不同Web服务QoS数据,采用K-means聚类算法进行聚类,然后 根据不同Web服务被聚类为同一簇的频度,计算Web服务间的相似度,最后识别出目标服务 的一组相似服务,并利用相似服务的QoS数据预测该目标服务的QoS数据; 步骤4:可信邻居挖掘模块(3)将为当前用户预测目标服务的QoS数据传输给QOS预测模 块(6),相似服务挖掘模块(5)将预测目标服务的QoS数据传输给QOS预测模块(6),Q〇S预测 模块(6)利用加权法对步骤2的目标服务的QoS预测值和步骤3的目标服务的QoS预测值进行 综合,为当前用户预测目标服务未知QoS的最终值,并将QoS预测值最优的单个服务或一组 Web服务推荐给当前用户。3. 根据权利要求2所述的信任感知的Web服务质量预测方法,其特征在于:所述步骤1 中,用户信誉度计算模块(4)采用K-means聚类算法对不同用户提交的QoS反馈数据进行聚 类,并识别出每个Web服务上的可信用户簇的具体方法为: QoS预测系统中包含m个用户和η个服务,用户对服务的QoS历史调用信息可以表示为一 个mXn矩阵R,其中任意项Rlj表示用户m调用服务^后观测到的QoS值,如果用户m之前未调 用过服务&则R lj=IUill,QoS预测系统的目标就是通过矩阵中已有的数据项来预测这些缺 失的数据项,为了评估用户的可信性,首先采用K-means聚类算法对不同用户提交的QoS反 馈数据讲行聚类,对于服各S 1,通过最小化式(1)来对调用过该服务的所有用户进行聚类;(!) 其中,J为对用户进行聚类的目标函数,Ku表示用户被聚类后的簇数量,Cf表示服务^上 的第k个簇,4是第k个簇的中心,k( 1彡k彡Ku)是簇的编号; 完成以上聚类过程后,用户将被聚类为若干个簇,处于同一簇中的用户具有更高的相 似性; 将包含最多元素的用户簇定义为可信用户簇,可信用户簇可由式(2)表示:(2) 其中Kl表示服务Sj上的第k个簇的用户数量,i表示包含最多元素的用户簇的编号,u表 示用户簇中的用户,由于可信用户簇反映了大多数用户的观测值,因此可信用户簇中 的QoS数据为最接近服务^的规范QoS值。4.根据权利要求3所述的信任感知的Web服务质量预测方法,其特征在于:所述步骤1 中,根据用户在每个Web服务上的QoS反馈与该服务上的可信用户簇的偏离程度,对用户的 QoS反馈数据进行分类的具体方法为:采用可信用户簇将用户的反馈数据分为积极反馈和 消极反馈,积极反馈表示用户反馈的数据与超过50%以上的用户相似,消极反馈表示用户 反馈的数据与超过50%以上的用户都不一致; 由于不同用户观测到的Web服务的QoS值服从高斯分布Ν(μ,〇2),其中以和〇分别是QoS数 据的均值和标准差,由高斯分布的3-σ准则可知,某个QoS观测样本落入(μ-3σ,μ+3σ)区域的 概率为99.7%,因此用户m观测到的服务^的QoS值的概率P满足式(3):(3) YYiQY tytax 其中表示服务Sj上的可信用户簇Ur的簇中心,表示服务以上的可信用户簇 的标准差; 在式(3)基础上,采用式(4)将用户反馈分类为积极反馈或消极反馈,(4) 当所有的用户反馈数据都被分类后,每个用户的QoS反馈信息可以表示为一个反馈向 量: (5) 在上式中Fi表示用户m的反馈向量,pi表示m提交的积极反馈的数量,m表示m提交的 消极反馈的数量。5. 根据权利要求4所述的信任感知的Web服务质量预测方法,其特征在于:所述步骤1 中,根据用户的反馈分类信息,采用Beta概率密度函数动态评估用户的信誉度的具体方法 为: 如下式(6)为Beta概率分布的表达式:(6) 其中P1表示用户未来会提交积极反馈的概率,α和β为Beta分布的两个参数,它们满足O 彡Ρ?$1,α,β>0,假如α<1,则随机变量Pl#0,当β<1时,贝IJ随机变量 Ρ1#1,Γ为伽马函数, Beta分布的期望值可由式(7)表示: Ε(ρ)=α/(α+β) (7) 当户m的反馈向量Fi包含pi个积极反馈和m个消极反馈时,用户Ui未来会提供积极反馈 的概率密度函数可表示为其过去所提供的反馈数据的函数,即通过更新参数α和β得到新的 Beta分布:(8) 当获取了用户m的反馈向量Fdt,用户U1的后验信誉值可通过结合其先验信誉值和新 观测到的反馈数据而计算得到:(9) 其中Rep(U1)为用户m的信誉值,取值范围为[0,1]。6. 根据权利要求5所述的信任感知的Web服务质量预测方法,其特征在于:所述步骤2中 可信邻居挖掘模块(3)采用皮尔森相关系数计算用户间的相似度,并结合在步骤1中得到的 用户信誉度,识别出当前用户的一组可信邻居的具体方法为: 根据用户对共同调用的Web服务上的QoS反馈数据的皮尔森相似性来评估用户的直接 经验,然后结合用户信誉度来评估用户间的信任值,用户间的PCC相似度可由式(10)计算得 到:其中Sim(ui,ua)是用户udPua间的相似度,取值范围为[-1,1],值越大表示越相似,R aj 为用户心调用服务Sj时体验到的QoS服务,j为QoS服务的编号,Sia = Si n Sa是用户UjPua共同 调用过的Web服务的集合,Rlj是用户U1调用服务以时体验到的QoS,瓦和I分别表示用户U 1 和^观测到的不同服务的平均QoS值; 用户UjPua间的信任值可通过结合它们的相似度和ua的信誉度计算得到:(H) 其中T(Ul,Ua)是用户UdPua间的信任值,表示m多大程度上信任1^的反馈数据;Rep(I la) 是用户Ua的信誉度,Sim(Ui, Ua)是用户Ui和Ua间的相似度,从上式可知信任值T(Ui, Ua)取值 范围为[〇,1],值越大表示用户m越信任用户Ud^QoS反馈数据; 当所有用户间的信任值都被评估后,可通过式(12)为用户U1K别出一组可信邻居S (Ui): S(Ui) = {ua|uaeU,T(Ui,Ua)X).5,Ua#Ui} (12) 其中U为QoS预测系统中的用户集,由上式可知信任值》0.5的用户被认为是可信邻居。7. 根据权利要求6所述的信任感知的Web服务质量预测方法,其特征在于:所述步骤2 中,利用可信邻居的QoS数据为当前用户预测目标服务的未知QoS数据的具体方法为:根据 式(13)使用可信邻居的QoS数据为当前用户的未知QoS数据进行预测:(13) 其中%表示用户U1调用服务以的QoS预测值,是m观测到的不同服务的QoS平均值, 瓦是可信邻居ua观测到的不同服务的QoS平均值,Raj为用户ua调用服务巧时体验到的QoS月艮 务。8. 根据权利要求7所述的信任感知的Web服务质量预测方法,其特征在于: 所述步骤3中,采用K-means聚类算法进行聚类的具体方法为:对于用户m,通过最小化 式(14)来对它调用过的Web服务进行聚类;(14) 其中J1为服务聚类的目标函数,?"表示用户m上的第k个服务簇,< 是用户m上的第k个 服务簇的中心,k(l彡k彡Ks)是簇的编号; 步骤3中,根据不同Web服务被聚类为同一簇的频度,计算Web服务间的相似度的具体方 法为: 服务SjPsr被聚类为同一簇的次数可表示为:(15) 其中f (ShSr)是服务SjPsr在高信誉用户上被聚类为同一簇的次数,其中信誉度彡0.5 的用户被为高信誉用户,i是用户的编号,Msj,Sr)是一个指示函数,当服务sdPSr在用户m 上被聚类为同一簇时I1(ShSr)取值为1,否则取值为0仏是高信誉用户集,由式(16)定义: U w= {Ui I UieU,Rep(ui) . 5} (16) 其中U是QoS预测系统中的用户集,Rep(U1)是用户m的信誉度; 当所有服务的QoS数据都被聚类后,服务间的相似度可由式(17)计算得到:(17) 其中fmin(Sj)表示服务Sj与其它服务被聚类为同一簇的最少次数,f max(Sj)表示服务Sj与 其它服务被聚类为同一簇的最多次数,Sim(ShSr)表示服务SjPsr间的相似度,其取值范围 为[〇,1 ],值越高表示越相似,完成所有服务间的相似度计算后,选取Top-k个最相似的服务 集S(Sj)作为服务S j的邻居集,其中,Top-k表示最相似的K个。9. 根据权利要求8所述的信任感知的Web服务质量预测方法,其特征在于:步骤3中,识 别出目标服务的一组相似服务,利用相似服务的QoS数据预测该目标服务的QoS数据的具体 方法为:利用目标服务^的邻居集S(S j)的QoS数据来为Sj未知的QoS数据进行预测:(18) 其中,€表示用户U1调用服务以的QoS预测值,Sr是服务巧的邻居,S(以)是服务Sj的邻居 集,Rlr是用户U1观测到的服务Sr的QoS值。10. 根据权利要求8所述的信任感知的Web服务质量预测方法,其特征在于:所述步骤4 中,QoS预测模块(6)利用加权法对步骤2的当前用户预测目标服务的未知QoS数据和步骤3 的预测目标服务的QoS数据进行综合的具体方法为:最终的QoS预测值可由式(19)表示:(19) 其中参数λ(0<λ<1)为调节参数,λ决定了最终的Q0S预测值多大程度上依赖基于用户 的聚类方法或基于服务的聚类方法,在上式中#Μ表示基于用户的聚类方法得到的QoS预测 W 结果,$表示基于服务的聚类方法得到的QoS预测结果,表示为当前活动用户预测的最 终QoS值,最后,系统根据预测得到的所有候选Web服务的QoS值,来将QoS最优的一个或若干 个Web服务推荐给当前活动用户。
【文档编号】H04L12/24GK106027317SQ201610577946
【公开日】2016年10月12日
【申请日】2016年7月21日
【发明人】苏凯, 肖斌, 张怀强, 刘宝平, 林名驰, 苏晓光, 吴琴, 刘少华
【申请人】中国人民解放军海军工程大学
再多了解一些
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1