基于学习的受约束服务聚合排名预测方法及装置与流程

文档序号:11134133阅读:311来源:国知局
基于学习的受约束服务聚合排名预测方法及装置与制造工艺

本发明涉及服务计算技术领域,具体而言,涉及一种基于学习的受约束服务聚合排名预测方法及装置。



背景技术:

网络上存在大量具有相同功能属性和不同QoS(Quality of Service,服务质量)的候选服务,Web服务选择需要从候选服务集合中选择一个具体的服务,使得选中的服务在满足用户对于服务约束的前提下整体性能最好。

为了从候选服务集合中获取服务选择,需要依据Web服务的QoS向量进行聚合排名预测。目前在聚合排名预测方面的研究包括:Liu等人提出了贪婪法;北邮王尚广等人针对用户偏好的模糊性提出一个综合考虑主客观权重的方法;中山大学郑子彬等人提出一个个性化Web服务QoS排名预测框架CloudRank;由于CloudRank是个NP完全问题(Non-deterministic Polynomial,多项式复杂程度的非确定性问题),江西财经大学毛澄映等人将传统的粒子群优化(PSO)算法引入其中;景德镇陶瓷学院李玲等人为解决Condorcet现象,引入模糊一致性阵。此外,Hofreiter等人提出一个基于Condorcet指标的聚合排名预测。但这些方法实现聚合排名的预测都有其局限性。



技术实现要素:

有鉴于此,本发明提供了一种基于学习的受约束服务聚合排名预测方法,能够更好的实现聚合排名的预测。

一方面本发明提供了一种基于学习的受约束服务聚合排名预测方法,包括:

运用协同过滤算法填充用户-服务间QoS矩阵;

从多个排名集合中抽取具有单峰偏好特征的个体排名集合;

将所述个体排名集合作为约束加到一个类SVM的基于学习的聚合排名预测方法中,得到受约束服务聚合排名预测结果。

另一方面,提供了一种基于学习的受约束服务聚合排名预测装置,包括:矩阵填充模块,用于运用协同过滤算法填充用户-服务间QoS矩阵;集合抽取模块,用于从多个排名集合中抽取具有单峰偏好特征的个体排名集合;排名预测模块,用于将所述个体排名集合作为约束加到一个类SVM的基于学习的聚合排名预测方法中,得到受约束服务聚合排名预测结果。

与现有技术相比,上述方法从聚合排名的合理性出发,探究聚合排名中Condorcet悖论现象产生的机理,运用表决论的思想并结合学习模型对QoS向量进行聚合排名,根据表决论利用中位项定理抽取完备且传递的群体偏好关系子集来约束该优化问题,提高了算法的合理性,可最大程度减少Condorcet悖论现象。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图:

图1为本发明较佳实施例提供的基于学习的受约束服务聚合排名预测方法的流程示意图。

图2为本发明较佳实施例提供的基于学习的受约束服务聚合排名预测方法中矩阵密度对预测精度的影响示意图。

图3为本发明较佳实施例提供的基于学习的受约束服务聚合排名预测方法中步骤S104中混合参数λ对预测精度的影响的影响示意图。

图4为本发明较佳实施例提供的基于学习的受约束服务聚合排名预测方法中TOP-K参数对预测精度的影响示意图。

图5为本发明较佳实施例提供的基于学习的受约束服务聚合排名预测装置的功能模块示意图。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

以不同的QoS作指标为候选服务排名会产生不同的结果,那么应如何从多方的冲突排名中产生一个单一的聚合排名,从而指导用户做选择?某种方式的少数服从多数是有效方式吗?会产生进一步的问题如孔多塞(Condorcet)悖论现象吗?这些问题是研究基于QoS的服务选择不可回避的重要问题。

从传递性个人偏好得出非传递性群体偏好的可能性称为Condorcet悖论现象,其对应一种简单的情形:一群人当通过少数服从多数的规则表达他们的群体偏好时,可以在每个人都有完全合理的偏好的情况下,整体表现的相互矛盾。诺贝尔经济学奖获得者阿罗(Arrow),在《社会选择与个人价值》中提出的阿罗不可能定理(Arrow's Impossibility Theorem),运用数学工具严格地证明了Condorcet悖论。多方冲突排名产生单一聚合排名在本质上与作为集体决策的表决一致,因此本项目拟将聚合排名问题映射到表决系统的群体偏好上进行研究,基于群体偏好并融合情境的Web服务选择方法研究具有重要的现实需求。

本申请实施例提供了一种基于学习的受约束服务聚合排名预测方法,如图1所示,包括:

步骤S101,运用协同过滤算法填充用户-服务间QoS矩阵。

具体的,用户-服务间QoS矩阵中的元素表示被用户观察到的服务的QoS属性。利用皮尔逊相关系数分别计算用户间的相似度与服务间的相似度,具体公式为:

其中,Sim(u,v)为用户间的相似度,u,v为用户代号,Sim(i,j)为服务间的相似度;

获取用户u的相似邻居及服务i的相似邻居,具体公式为:

S(u)={v|v∈T(u),sim(u,v)>0,u≠v};

S(i)={j|j∈T(i),sim(i,j)>0,i≠j};

根据用户的相似邻居获取用户间相似度预测,具体公式为:

其中,其中,与分别地代表用户u与v观察到的服务的QoS的均值;

根据服务的相似邻居获取服务间相似度预测,具体公式为:

其中,与分别地代表服务i和j的不同用户观察到的服务的QoS的均值。如图2所示,不同的矩阵密度对预测结果也会有不同的影响。

步骤S102,从多个排名集合中抽取具有单峰偏好特征的个体排名集合。

具体的,具有单峰偏好特征的个体排名集合是指在所述个体排名集合中,某个个体的排名高于该个体的左右邻居的排名。检验当前集合是否具有单峰偏好特征,若具有则将所述当前集合作为所述个体排名集合;

若所述当前集合不具有单峰偏好特征,从所述当前集合中任意删除一个元素,并判断删除一个元素后的集合是否具有单峰偏好特征,如果删除一个元素后的集合具有单峰偏好特征,将删除一个元素后的集合作为所述个体排名集合;

如果删除一个元素后的集合不具有所述当前集合具有单峰偏好特征,继续删除一个元素,直至删除n个元素后的集合具有单峰偏好特征,将删除n个元素后的集合作为所述个体排名集合,其中,n为大于等于2的整数。

步骤S103,将所述个体排名集合作为约束加到一个类SVM(Support Vector Machine支持向量机)的基于学习的聚合排名预测方法中,得到受约束服务聚合排名预测结果。

具体的,通过优化目标函数来聚合排名预测,所述目标函数为:

其中,

ω表示需要学习的聚合排名参数,C表示权衡训练误差大小的参数,ξi,j,k表示松弛变量,δ表示所有目标排名中最接近的两个预测间的距离,rp表示抽取的具有单峰偏好特征的个体排名,是rp的反序,ru1表示用户u1观察到的排名。

利用随机梯度下降法通过求参数的偏导获取最速下降方向,迭代优化以获取聚合排名函数的权重参数。

综上所述,上述方法从聚合排名的合理性出发,探究聚合排名中Condorcet悖论现象产生的机理,运用表决论的思想并结合学习模型对QoS向量进行聚合排名,根据表决论利用中位项定理抽取完备且传递的群体偏好关系子集来约束该优化问题,提高了算法的合理性,可最大程度减少Condorcet悖论现象。

该方法还包括:

步骤S104,将所述用户间相似度预测和服务间相似度预测混合,具体公式为:

其中,参数λ表明用户相似度预测和服务间相似度预测两种方法混合的程度。如图3所示,不同的参数λ对预测结果具有不同的影响。

此外,本申请实施例还提供了一种基于学习的受约束服务聚合排名预测装置,包括:

矩阵填充模块,用于运用协同过滤算法填充用户-服务间QoS矩阵。

集合抽取模块,用于从多个排名集合中抽取具有单峰偏好特征的个体排名集合。

排名预测模块,用于将所述个体排名集合作为约束加到一个类SVM的基于学习的聚合排名预测方法中,得到受约束服务聚合排名预测结果。

其中,所述矩阵填充模块运用协同过滤算法填充用户-服务间QoS矩阵的方法参见步骤S101的描述。所述集合抽取模块抽取具有单峰偏好特征的个体排名集合的方法参见步骤S102的描述。所述排名预测模块将所述个体排名集合作为约束加到一个类SVM的基于学习的聚合排名预测方法中,得到受约束服务聚合排名预测结果的方法参见步骤S103的描述。

该装置还可以包括:预测混合模块,用于将所述用户间相似度预测和服务间相似度预测混合,具体计算公式为:

其中,参数λ表明用户相似度预测和服务间相似度预测两种方法混合的程度。

具体的,本申请实施例基于公共数据集WSDream dataset 5,该集合包含有102个用户调用3568个的Web服务的QoS记录,提供了如下具体实施方式。实验中性能的度量指标采用NDCG(Normal ized discounted cumulative gain,归一化折损累积增)。

本发明所提供的基于学习的受约束服务聚合排名预测方法,其前提是预先填充用户-服务间QoS矩阵。填充用户-服务间QoS矩阵主要包括用户间与服务间相似度,选择相似邻居,对矩阵中缺失值进行预测,下面进行详细描述。

为填充用户-服务间QoS矩阵,需要分别计算行向量(服务)与列向量(用户)间相似度,具体计算见公式(1)与(2),比如在数据集WSDream dataset 5上计算,得到与用户0相似的前十个用户以及相似度分别为:(18,0.373),(99,0.361),(23,0.361),(34,0.359),(57,0.354),(87,0.351),(43,0.340),(46,0.340),(64,0.315),(19,0.312)。

在获得所有行向量(服务)与列向量(用户)间相似度后,依据公式(3)与(4)选择相似邻居。比如与用户0相似的前十个用户关注的服务有交集的数量分别为:(18,4),(99,3),(23,3),(34,3),(57,3),(87,3),(43,4),(46,4),(64,8),(19,3)。

最后依据公式(5),(6),(7)对矩阵中缺失值进行预测,比如给出用户0中被填充的25个服务的QoS值:(234,0.373),(100,0.340),(1224,0.342),(2311,0.343),(45,0.340),(2870,0.315),(732,0.344),(67,0.375),(1167,0.333),(879,0.411),(1276,0.373),(3045,0.340),(2766,0.342),(3321,0.343),(2775,0.340),(788,0.315),(908,0.399),(913,0.388),(547,0.315),(449,0.364),(899,0.373),(993,0.344),(1866,0.349),(2334,0.353),(3057,0.380)。

在获得完整的用户-服务间QoS矩阵后,我们开始抽取具有单峰偏好特征的个体排名集合,根据算法我们先检测当前用户集合是否具有单峰偏好特征,结果发现不满足。于是选择用户i,将其从集合中删除,并继续检验该集合是否具有单峰偏好特征并递归下去,直到获得满足要求的集合,最后获得具有单峰偏好特征的个体排名集合包括53个用户,其编号分别是:{3,4,6,7,8,10,11,15,16,17,18,21,22,25,27,29,30,33,34,36,38,39,41,43,44,46,47,48,51,53,54,55,57,58,61,63,64,65,66,68,69,70,71,73,74,75,77,78,83,89,90,91,96}。

将上述集合引入基于学习的受约束的聚合排名预测方法并与其它聚合排名方法的性能比较如下表所示。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1