当前位置: 首页 > 专利查询>常州工学院专利>正文

一种基于用户社交信息和服务配置信息的服务组合推荐方法技术

技术编号:22167106 阅读:47 留言:0更新日期:2019-09-21 10:40
本发明专利技术公开了一种基于用户社交信息和服务配置信息的服务组合推荐方法。首先根据服务的配置信息和其加入的服务组合的描述信息确定服务的主题,并且根据服务库中的统计信息计算了每个服务的信誉度;然后根据用户的基本信息确定了用户的主题,根据平台信誉和贡献值计算了用户的信誉度;接着构建了服务知识图谱,根据历史服务组合信息和用户社交信息找到服务间的显性关系和隐形关系,并根据服务的功能进行了社区划分;然后构建了服务组合时的正负规则,根据组合时积极影响因素和消极影响因素的综合影响确定服务组合的可能性;通过计算服务间的综合影响构建服务组合推荐给用户。本发明专利技术实现了根据用户需求进行服务组合推荐,提高了服务组合的推荐效率。

A Service Composition Recommendation Method Based on User Social Information and Service Configuration Information

【技术实现步骤摘要】
一种基于用户社交信息和服务配置信息的服务组合推荐方法
本专利技术涉及服务计算领域,特别是一种基于用户社交信息和服务配置信息的服务组合推荐方法。
技术介绍
在开源的服务库中,存在着大量由不同开发者开发的服务,这些服务可以提供不同的功能、完成不同的目标。对于一个用户而言,在其计划开发一个项目时,相比于自己从零开始开发,合理的运用已有的服务可以帮助其大大减少开发的成本。但是,如何在规模庞大的服务库中定位用户所需服务并合理地将候选服务进行组合是一个重要的问题。首先,对于用户而言,每个用户的领域专业度是不同的,他们对自身需求的理解深浅不一,这就为选择候选服务带来了困难。其次,单一服务的功能往往不能直接满足用户的复杂需求,这就需要将若干实现不同需求子功能的服务进行组合。基于服务的配置信息进行推荐是常用的一种服务组合推荐方法,根据服务的配置信息可以获取服务的功能描述,从而根据服务功能与用户需求的相似度选择候选服务。随着服务库不断发展,在服务库中除了服务配置信息外,还存在大量的用户社交信息,这些信息可以侧面反映用户创建的服务的信息,在进行服务组合推荐时将社交信息纳入考虑的范围内会提高推荐的效率。因此,如何合理的利用社交信息和配置信息进行服务组合推荐是一个重要的问题。
技术实现思路
针对现有技术中存在的问题,本专利技术提供了一种实现了服务组合的合理构建,从而使得推荐的服务组合更满足用户的需求的基于用户社交信息和服务配置信息的服务组合推荐方法。本专利技术的目的通过以下技术方案实现。一种基于用户社交信息和服务配置信息的服务组合推荐方法,步骤包括:1)基于服务的配置文件,利用主题模型构建方法确定每个服务的主题,利用服务库中服务组合的被浏览和被下载的次数计算每个服务组合的信誉度,并将该信誉平均共享给该组合中的每个服务,从而活得每个单一服务的信誉度;2)基于用户的描述信息,利用主题模型构建方法确定每个用户的主题,利用用户的平台信誉度和用户的贡献计算用户的信誉度;3)构建服务知识图谱,其中顶点为服务和用户,边为服务和服务的调用关系,用户和用户的好友关系,用户和服务的创建关系,基于服务的功能进行社区划分,将每个社区的中心点作为该社区的代表节点;4)、构建服务组合的正负规则,根据正负规则,计算影响两个服务链接的综合影响;5)根据用户的需求在服务知识图谱中找到候选服务,计算服务间的综合影响,构建服务组合,从而推荐给用户。所述步骤1)具体为:基于服务的配置文件和包含该服务的服务组合的描述和标签,利用LDA模型技术构建每个服务的主题,利用服务库中服务组合的浏览下载的次数和其他用户对其的评级计算服务组合的信誉度,其中,为该服务组合被其他用户被浏览的次数,为该服务组合被其他用户下载的次数,为其他用户给该服务组合的评定等级,fp为一个单调递增函数。将该信誉平均共享给该组合中的每个服务,从而获得每个单一服务的信誉度,所述步骤2)具体为:基于用户的基本描述信息,即其研究领域、兴趣领域和标签信息,利用LDA技术构建每个用户的主题,通过综合用户的平台信誉度和贡献度就得到用户的综合信誉度crdau=fcrd(Cau,{pau}),其中,fcrd是一个单调递增函数,Cau是开发者的信用,pau是该开发者开发的服务组合的信誉度。所述步骤3)具体为:构建服务知识图谱SKG=(V,E),其中顶点V=(S,A)为服务和用户的集合,边为服务和服务的调用关系、用户和用户的好友关系、用户和服务的创建关系三种关系的集合,其中,服务集合S={s1,s2,…,ssn},集合中的每个si都是服务库中存在的一个服务,si=(sid,snm,sdsc,sr,st,sau).其中sid是服务的唯一标识;snm,是服务的名字;sdsc是服务的主题向量,根据与服务相关的一系列功能描述构建,用来表述该服务的功能;sr是服务的信誉度,表示该服务的可信程度,体现了该服务的质量;st是该服务的创建时间;sau是该服务的开发者。开发者集合A={a1,a2,…,aAN},集合中的每个ai都是服务库中的一个开发者,ai=(aid,anm,adsc,ar,Af)。其中aid是开发者的唯一标识,anm是开发者的姓名,ades是开发者研究领域描述的主题向量,ar是开发者的信誉度,Af是开发者的好友集合。基于服务的功能利用FastUnfolding算法进行社区划分,采用模块度的概念,利用启发式的贪心算法,每次合并社区时选取能使模块度最大化的合并策略,在社区划分完成后,将每个社区的中心点作为该社区的代表节点。所述步骤4)具体为:构建服务组合的正负规则,正规则会促使两个服务进行组合,而负规则会阻止两个服务进行组合,根据正负规则,计算影响两个服务链接的综合影响,α、β、γ是每个影响因素的重要程度,α+β+γ=1,服务Si在选择可以组合的另一个服务Sj,两服务间的综合影响Uij=αstij+βCreditij+γNRijifSa=Sf=1。公式中具体每个字符的含义如下。每个服务的创建时间到当前时间的差值是它的创建时长。在整个时长内,若两个服务都未曾共同出现在同一个服务组合内,这就说明它们间可以组合的可行性极低,它们服从负规则Stij=now-max(sti,stj),其中,now是当前时间,sti是服务Si的创建时间,stj是服务Sj的创建时间。服务的信誉度也会对服务组合造成影响。对于两个信誉度都很高的服务,它们从未合作过,这就说明它们可以合作的可行系极低,它们服从负规则Creditij=sri×srj,其中,sri是服务Si的信誉度,srj是服务Sj的信誉度。同时,上述两个规则组合后也是负规则。对于两个信誉度好、创建时间久的服务,它们彼此组合的可行性极低,服从负规则NRij=-(timeij*Creditij),NRij的值越大,表示服务Si与服务Sj可以进行组合的可行性越低。Sa表示服务Si与服务Sj是否是同一作者,Sf表示服务Si与服务Sj的作者是否为好友。所述步骤5)具体为:5.1)对于用户需求中的第一个子功能,计算它与各个社区代表节点的相似度,定位相关社区;5.2)计算该社区中每个服务与该子功能的相似度,选择出相似度最高的服务;5.3)对于用户需求中的第i个子功能(i≥2),计算它与各个社区代表节点的相似度,定位相关社区,将同一个用户创建的或者该用户研究领域相似的好友创建的服务加入组合候选集中;5.4)根据步骤4中的综合影响计算公式计算各服务间的综合影响,按综合影响正向排序;5.5)将排名前5的服务加入推荐集合。重复步骤5.3和5.4,直到用户需求的最后的子功能。相比于现有技术,本专利技术的优点在于:本专利技术用户社交信息的运用,可以对服务的信息进行补充。用户的信誉度越高说明其创建的服务的可信度越高;用户的兴趣领域可以反应其创建的服务的所属领域;用户的好友信息可以反应两个服务之间的相关性,两个兴趣领域相似的是好友关系的用户创建的服务之间的相关性可能很高。在服务组合推荐工作中,从服务的配置文件中可以获得服务的基本信息,而这些社交信息可以对服务的基本信息和服务间的潜在关联性进行补充,从而获得更好的服务组合推荐效果。附图说明图1是本专利技术的流程图。图2是实施例中按照本专利技术进行处理后的服务知识图谱的部分展示。具体实施方式下面结合本文档来自技高网...

【技术保护点】
1.一种基于用户社交信息和服务配置信息的服务组合推荐方法,其特征在于步骤包括:1)基于服务的配置文件,利用主题模型构建方法确定每个服务的主题,利用服务库中服务组合的被浏览和被下载的次数计算每个服务组合的信誉度,并将该信誉平均共享给该组合中的每个服务,从而活得每个单一服务的信誉度;2)基于用户的描述信息,利用主题模型构建方法确定每个用户的主题,利用用户的平台信誉度和用户的贡献计算用户的信誉度;3)构建服务知识图谱,其中顶点为服务和用户,边为服务和服务的调用关系,用户和用户的好友关系,用户和服务的创建关系,基于服务的功能进行社区划分,将每个社区的中心点作为该社区的代表节点;4)、构建服务组合的正负规则,根据正负规则,计算影响两个服务链接的综合影响;5)根据用户的需求在服务知识图谱中找到候选服务,计算服务间的综合影响,构建服务组合,从而推荐给用户。

【技术特征摘要】
1.一种基于用户社交信息和服务配置信息的服务组合推荐方法,其特征在于步骤包括:1)基于服务的配置文件,利用主题模型构建方法确定每个服务的主题,利用服务库中服务组合的被浏览和被下载的次数计算每个服务组合的信誉度,并将该信誉平均共享给该组合中的每个服务,从而活得每个单一服务的信誉度;2)基于用户的描述信息,利用主题模型构建方法确定每个用户的主题,利用用户的平台信誉度和用户的贡献计算用户的信誉度;3)构建服务知识图谱,其中顶点为服务和用户,边为服务和服务的调用关系,用户和用户的好友关系,用户和服务的创建关系,基于服务的功能进行社区划分,将每个社区的中心点作为该社区的代表节点;4)、构建服务组合的正负规则,根据正负规则,计算影响两个服务链接的综合影响;5)根据用户的需求在服务知识图谱中找到候选服务,计算服务间的综合影响,构建服务组合,从而推荐给用户。2.根据权利要求1所述的一种基于用户社交信息和服务配置信息的服务组合推荐方法,其特征在于所述步骤1)具体为:基于服务的配置文件和包含该服务的服务组合的描述和标签,利用LDA模型技术构建每个服务的主题,利用服务库中服务组合的浏览下载的次数和其他用户对其的评级计算服务组合的信誉度,其中,为该服务组合被其他用户被浏览的次数,为该服务组合被其他用户下载的次数,为其他用户给该服务组合的评定等级,fp为一个单调递增函数,将该信誉平均共享给该组合中的每个服务,从而获得每个单一服务的信誉度3.根据权利要求2所述的一种基于用户社交信息和服务配置信息的服务组合推荐方法,其特征在于所述步骤2)具体为:基于用户的基本描述信息,即其研究领域、兴趣领域和标签信息,利用LDA技术构建每个用户的主题,通过综合用户的平台信誉度和贡献度就得到用户的综合信誉度crdau=fcrd(Cau,{pau}),其中,fcrd是一个单调递增函数,Cau是开发者的信用,pau是该开发者开发的服务组合的信誉度。4.根据权利要求3所述的一种基于用户社交信息和服务配置信息的服务组合推荐方法,其特征在于所述步骤3)具体为:构建服务知识图谱SKG=(V,E),其中顶点V=(S,A)为服务和用户的集合,边为服务和服务的调用关系、用户和用户的好友关系、用户和服务的创建关系三种关系的集合,其中,服务集合S={s1,s2,…,ssn},集合中的每个si都是服务库中存在的一个服务,si=(sid,snm,sdsc,sr,st,sau).其中sid是服务的唯一标识;snm,是服务的名字;sdsc是服务的主题向量,根据与服务相关的一系列功能描述构建,用来表述该服务的功能;sr是服务的信誉度,表示该服务的可信程度,体现了该服务的质量;st是该服...

【专利技术属性】
技术研发人员:谢光前刁金周长兵
申请(专利权)人:常州工学院
类型:发明
国别省市:江苏,32

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

1