基于关联规则的Web服务推荐方法

文档序号:9631586阅读:428来源:国知局
基于关联规则的Web服务推荐方法
【技术领域】
[0001] 本发明涉及Web服务组合的服务推荐计算技术领域,特别是涉及一种基于关联规 则的Web服务推荐方法。
【背景技术】
[0002] Web服务推荐系统一方面帮助用户找到对用户有用的Web服务,一方面帮助服务 的提供者将Web服务展现给对它感兴趣的用户面前。推荐的这些服务必须满足用户的功能 性和非功能性的需求。一个高效的推荐算法,往往能够帮助开发者缩短开发周期、节约开发 以及管理所需要的成本,同时保证软件开发的效率和质量。现有的Web服务推荐方法大多 基于Web服务本身或者用户之间的相似度进行相应的推荐,比如基于项目的协同过滤推荐 和基于用户的协同过滤推荐。这些方法基本都是从推荐普通商品的角度出发的,由于Web 服务的特异性和用户群体的多样性,普通的推荐方法往往效果一般。随着用户使用Web服 务的时间的变长,利用日益庞大的用户历史使用记录来为用户推荐逐渐成为Web推荐的更 好选择。
[0003] 很多服务推荐算法通过比较服务之间的相似特性,从而为用户推荐功能上相似的 服务。但是有时候用户并不知道自己需要什么具体的服务,因为用户并没有给出具体明确 的需求,在这种情况下通过相似特性的方式就很难做出推荐。单个Web服务通常功能单一, 不能满足多样的需求,因此要进行服务组合。利用数据挖掘技术,发掘单个Web服务之间所 隐含的内在联系就可以发现用户的潜在需求,从而产生Web推荐。所以从服务组合的角度, 通过分析所有服务组合的历史数据,我们可以给用户推荐其他原子服务来帮助用户完善自 己的组合服务的功能或者提高组合服务的性能。
[0004]目前有学者提出了面向Web服务组合推荐的关联规则研究,将关联规则应用在Web服务组合推荐中。虽然引入关联规则提高了Web服务组合的执行效率和服务质量并产 生了推荐,但是该方法只能产生少部分强关联服务的推荐,对于少部分不常见但高关联能 力的服务则由于使用率不高被忽略了。
[0005] 为了给用户提供方便高效的服务推荐方法,本发明提出改进的关联规则推荐方 法。对服务进行关联规则推荐,从而从宏观上构造和优化服务组合,以保证推荐结果的准确 性。

【发明内容】

[0006] 本发明的目的在于针对现有技术的不足,提供一种基于关联规则的Web服务推荐 方法。
[0007] 本发明的目的是通过以下技术方案来实现的:一种基于关联规则的Web服务推荐 方法,包括以下步骤:
[0008] (1)预处理工作流数据,解析工作流,从工作流中提取原子服务信息,构造服务组 合的历史记录,其中原子服务总数为n,每个原子服务就使用编号1-n表示,比如第一个原 子服务编号为1,第二个原子服务编号为2,……,第η个原子服务编号为η;
[0009] (2)组建服务组合:将步骤1提取的原子服务重新随机组合,将产生的服务组合保 存在
[0010] 二维数组userCombList中,userCombList□的长度代表总共有多少个服务组合, 重新组合后的规则总数N= 2n-l;
[0011] (3)搜索最长组合,S卩从二维数组userCombList中搜索最佳的服务组合,具体包 括以下子步骤:
[0012] (3. 1)令变量len=η,η是原子服务个数;
[0013] (3. 2)如果len>0,执行步骤3. 3 ;否则执行步骤3. 7 ;
[0014] (3.3)令变量i= 0;
[0015] (3. 4)如果i〈userCombList[len]数组的长度,执行步骤3. 5 ;否则执行步骤3. 6 ;
[0016] (3. 5)如果userCombList[len]数组的长度等于len,同时userCombList[len] [i]服务组合符合关联规则,则把该组合保存在二维数组result中,然后令i=i+1,执行 步骤3. 4 ;否则,直接令i=i+1,执行步骤3. 4 ;
[0017] (3. 6)如果二维数组result中存在长度为len的关联规则,则找到最佳服务组合, 保存在二维数组finalresult中,执行步骤3. 7;否则,len=len-Ι,执行步骤3. 2 ;
[0018] (3.7)结束循环;
[0019] (4)计算推荐度:从二维数组finalresult中提取关联规贝IJ,计算每个服务在这个 规则下的置信度,放在一维数组rec中,rec的大小是η(原子服务个数),rec的第k个元 素就是第k个原子服务的置信度;把置信度作为推荐度,置信度越大,推荐排名越靠前;
[0020] (5)排序服务检索结果:根据已有的用户历史记录采用修正后的支持度公式计算 每个推荐目标的推荐预测值即数组rec;将数组rec按照推荐度的值降序排列,从而得到个 性化推荐结果。
[0021] 进一步地,所述步骤2中,所述服务组合为将功能简单的服务组件按照相关的逻 辑和时序关系进行动态地交互,以此协作完成一个大任务以满足用户的复杂多样的业务需 求。
[0022] 进一步地,所述步骤4中,每个推荐目标的置信度的计算具体为:
[0023] A)计算支持度,支持度揭示所有事务中A与B同时出现的概率;如果支持度越大, 关联规则越常见;使用修正后的支持度公式计算支持度Support (A->B):
[0024]
[0025]其中,X代表整个复合服务数据集中的任意一组复合服务,D代表整个复合服务数 据集。ID代表数据集所有复合服务的数量。
[0026]
[0027] 修正函数fs代表该AB元素在当前组合中所占的比例,函数如下:
[0028]
[0029]B)计算置信度,置信度Confidence(A->B) =Support(A->B)/Support(A)= P(AIB);置信度揭示了A出现时,B出现的概率;Support(A->B)就是A与B同时出现的概 率,即支持度。这里的置信度就是推荐目标的推荐度。
[0030] 本发明与同类技术相比,具有的有益的效果是:现有的Web服务推荐方法虽然引 入关联规则提高了Web服务组合的执行效率和服务质量并产生了推荐,但是只能产生强关 联服务的推荐,对于一部分不常见但高关联能力的服务则由于使用率低被忽略了。针对这 类不足,本发明对关联规则挖掘进行了改进,即对关联规则的支持度进行修改。改进后的关 联规则推荐方法保证服务组合内在的每个原子服务间的关联强度不会因服务组合的长度 增大而降低,相较于常规的推荐方法在稳定性和准确度上均有提高。本发明分析服务组合 的历史数据,发掘单个Web服务之间所隐含的内在联系从而发现用户的潜在需求,系统选 择最佳服务组合推荐给用户。本发明方法可以找到复合服务内在的原子服务之间存在着的 关联性,从而更好满足用户服务组合的需求,给用户提供方便高效的服务推荐方法,具有广 阔的应用前景。
【附图说明】
[0031] 图1是本发明的流程图。
【具体实施方式】
[0032] 下面结合附图和具体实施例对本发明作进一步详细说明。
[0033] 如图1所示,本发明基于关联规则的Web服务推荐方
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1