欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2018109392938
申请人: 浙江工业大学
专利类型:发明专利
专利状态:已下证
专利领域: 计算;推算;计数
更新日期:2023-12-11
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种基于改进DBSCAN算法的Web服务聚类方法,其特征在于,所述服务聚类方法包括以下步骤:第一步、计算领域本体中两个概念A和B之间的语义相似度,过程如下:

步骤(1.1)若概念A和B是相同的或者它们被声明为等价类,则概念A,B的相似度Simconcept为1,否则进行步骤(1.2);

步骤(1.2)若概念A直接或间接为概念B的一个子类,则概念A,B的相似度Simconcept计算公式如下:其中prop(A)与prop(B)分别表示概念A与概念B的属性集合,

Size(prop(B))与Size(prop(A))分别表示概念B和概念A的属性个数,否则进行步骤(1.3);

步骤(1.3)若概念B直接或间接为概念A的一个子类,则概念A,B的相似度Simconcept计算公式如下:否则进行步骤(1.4);

步骤(1.4)若概念A与概念B没有父子关系,但两个概念直接或间接有一个共同的父类概念C,则采用基于朴素贝叶斯模型的单词语义相似度度量方法,首先分别遍历概念A与概念B的各个属性,通过ComputeFeature函数对概念A与概念B的属性名称进行特征提取,然后采用样本训练后的条件概率分布列和调整因子,计算概念属性之间的相似度Simword,根据概念属性之间的相似度Simword与相似判定因子η的比较,判断两个属性是否为同一属性并进行统计,最后计算出概念A,B的相似度Simconcept;

步骤(1.5)若概念A和概念B的关系在上述情况中均不符合,则概念A,B的相似度Simconcept设为0;

第二步、结合第一步的概念相似度计算方法,给出服务S1与服务S2输入相似度Siminput的计算方法,过程如下:步骤(2.1)创建服务输入参数相似度最大匹配数组InSim并初始化,进行步骤(2.2);

步骤(2.2)将服务S1的输入参数数量减去服务S2的输入参数数量得到参数数量差值d,进行步骤(2.3);

步骤(2.3)若d小于或等于0,则将服务S1设为Sshort,服务S2设为Slong,否则将服务S2设为Sshort,服务S1设为Slong,进行步骤(2.4);

步骤(2.4)遍历Slong中的输入参数,若遍历完成,则进行步骤(2.8),否则从Slong中取出下一个输入参数longi,进行步骤(2.5);

步骤(2.5)遍历Sshort中的输入参数,若遍历完成,则返回步骤(2.4),否则从Sshort中取出下一个输入参数shortj,进行步骤(2.6);

步骤(2.6)根据第一步的概念相似度计算方法计算参数longi与参数shortj的相似度Simij,进行步骤(2.7);

步骤(2.7)将Simij与InSim[i]进行比较,若Simij大于InSim[i],则将InSim[i]的值设为Simij的值,否则InSim[i]值为原值,返回步骤(2.5);

步骤(2.8)计算服务S1与服务S2输入相似度Siminput,计算公式如下:

其中Size(Slong.Input)与Size(Sshort.Input)分别表示服务Slong的输入参数个数与服务Sshort的输入参数个数,|d|表示两个服务的输入参数数量差值,InSim为输入参数的相似度最大匹配数组;

第三步、结合第一步的概念相似度计算方法,给出服务S1与服务S2输出相似度Simoutput的计算方法,过程如下:步骤(3.1)创建服务输出参数相似度最大匹配数组OutSim并初始化,进行步骤(3.2);

步骤(3.2)将服务S1的输出参数数量减去服务S2的输出参数数量得到参数数量差值d,进行步骤(3.3);

步骤(3.3)若d小于或等于0,则将服务S1设为Sshort,服务S2设为Slong,否则将服务S2设为Sshort,服务S1设为Slong,进行步骤(3.4);

步骤(3.4)遍历Slong中的输出参数,若遍历完成,则进行步骤(3.8),否则从Slong中取出下一个输出参数longi,进行步骤(3.5);

步骤(3.5)遍历Sshort中的输出参数,若遍历完成,则返回步骤(3.4),否则从Sshort中取出下一个输出参数shortj,进行步骤(3.6);

步骤(3.6)根据第一步的概念相似度计算方法计算参数longi与参数shortj的相似度Simij,进行步骤(3.7);

步骤(3.7)将Simij与OutSim[i]进行比较,若Simij大于OutSim[i],则将OutSim[i]的值设为Simij的值,否则OutSim[i]值为原值,返回步骤(3.5);

步骤(3.8)计算服务S1与服务S2输出相似度Simoutput,计算公式如下:其中Size(Slong.Output)与Size(Sshort.Output)分别表示服务Slong的输出参数个数与服务Sshort的输出参数个数,|d|表示两个服务的输出参数数量差值,OutSim为输出参数的相似度最大匹配数组;

第四步、结合第二步与第三步求得的服务输入相似度Siminput与服务输出相似度Simoutput计算服务S1与服务S2的功能相似性FunctionalSim(S1,S2),计算公式如下:FunctionalSim(S1,S2)=w1×Siminput+w2×Simoutput,其中权重w1和w2是0和1之间的实数值并且总和为1,它们表示服务消费者对输入相似性和输出相似性认定的重要性;

第五步、结合第四步的服务功能相似性度量方式给出服务聚类算法,首先任意选择一个未分配的核心对象作为种子,然后寻找该核心对象所有密度可达的样本集合,形成一个聚簇,接着继续选择另一个未分配的核心对象去寻找密度可达的样本集合,得到另一个聚簇,直到所有核心对象被分配完毕,搜索半径Eps由公式 确定,其中n表示服务的维度大小,即所有服务的平均属性个数,k表示形成聚簇所需的最少服务数量,r表示由n维服务组成的超球面半径,m则是这个超球面包含的n维服务数量;而最小数量MinPts遵循经验启发式:MinPts=round(m/25),其中round是取整函数。

2.如权利要求1所述的一种基于改进DBSCAN算法的Web服务聚类方法,其特征在于,所述步骤(1.4)的步骤如下:步骤(1.4.1)设变量i’表示概念A与概念B中属性相同的个数并置初始值为0,进行步骤(1.4.2);

步骤(1.4.2)若概念A的属性集合prop(A)遍历完成,则进行步骤(1.4.7),否则从prop(A)取出下一个prop(A)j并将其从prop(A)中移除,进行步骤(1.4.3);

步骤(1.4.3)若概念B的属性集合prop(B)遍历完成,则返回步骤(1.4.2),否则从prop(B)取出下一个prop(B)k并将其从prop(B)中移除,进行步骤(1.4.4);

步骤(1.4.4)基于朴素贝叶斯模型,结合WorkNet英语词典,通过ComputeFeature函数对prop(A)j与prop(B)k的属性名称进行特征提取进而得出L(prop(A)j,prop(B)k)和D(prop(A)j,prop(B)k),其过程如下:计算每个属性名称的单词语义,由于每个单词对应一个或多个语义,那么每一单词对也就对应一个或多个语义对,将与单词对相应的所有语义对中距离最短的语义节点距离定义为该单词对距离L(prop(A)j,prop(B)k),并将语义节点距离最短的语义对深度定义为单词对深度D(prop(A)j,prop(B)k),已知属性名称prop(A)j存在于语义节点vj1,vj2,…,vjn的同义词组中,属性名称prop(B)k存在于语义节点vk1,vk2,…vkm的同义词组中,那么prop(A)j与prop(B)k的距离计算公式与深度计算公式如下:其中L(vja,vkb)表示语义节点vja与语义节点vkb的距离,D(vja,vkb)表示语义对(vja,vkb)的深度;

依据朴素贝叶斯模型的训练集生成均值函数LW(i″)和DW(o),再利用均值函数LW(i″)和DW(o)计算条件概率分布列P(L(prop(A)j,prop(B)k)|C)和P(D(prop(A)j,prop(B)k)|C),其中C为单词类别分类,其值域为{U,N},其中U代表“一致”,N代表“不一致”,最后计算调整因子α和β,计算公式如下:之后转入步骤(1.4.5);

步骤(1.4.5)基于朴素贝叶斯模型,将本体概念属性的特征L(prop(A)j,prop(B)k)和D(prop(A)j,prop(B)k)注入到步骤(1.4.4)所得的条件概率分布列中,并依次提取条件概率V1=P(L(prop(A)j,prop(B)k)=i″|C=U),V2=P(D(prop(A)j,prop(B)k)=o|C=U),V3=P(L(prop(A)j,prop(B)k)=i″|C=N)与V4=P(D(prop(A)j,prop(B)k)=o|C=N),最后结合步骤(1.4.4)中的调整因子α和β来计算prop(A)j与prop(B)k之间的相似度Simword,计算公式如下:Simword(prop(A)j,prop(B)k)=(αV1×V2)/(αV1×V2+βV3×V4),进行步骤(1.4.6);

步骤(1.4.6)若Simword大于或等于相似判定因子η,则prop(A)j与prop(B)k为同一属性并将变量i’加1,返回步骤(1.4.2),否则返回步骤(1.4.3);

步骤(1.4.7)计算概念A,B的相似度Simconcept,计算公式如下:

其中i’表示概念A与概念B中属性相同的个

数,prop(A)与prop(B)分别表示概念A与概念B的属性集合,Size(prop(B))与Size(prop(A))分别表示概念B和概念A的属性个数,进行步骤(1.5)。

3.如权利要求1或2所述的一种基于改进DBSCAN算法的Web服务聚类方法,其特征在于,所述第五步包括以下步骤:步骤(5.1)初始化未访问样本集合为原始样本集T,簇集合C划分为空集,进行步骤(5.2);

步骤(5.2)遍历原始样本集T,若遍历完成,则结束,否则从T中取出下一个服务Si并将其从T中移除,进行步骤(5.3);

步骤(5.3)结合第四步定义的服务功能相似性度量方式寻找服务Si的Eps邻域;

步骤(5.4)创建新聚类簇Ck,若Si的Eps邻域样本数不少于MinPts,则将Si加入到该簇中,进行步骤(5.5),否则返回步骤(5.2);

步骤(5.5)遍历服务Si的邻域集合NEps(Si),若遍历完成,则进行步骤(5.13),否则取出集合NEps(Si)中的下一个服务S’k,进行步骤(5.6);

步骤(5.6)创建服务S’k的邻域集合NEps(S’k),进行步骤(5.7);

步骤(5.7)若原始样本集T包含服务S’k,则将服务S’k从T中移除,进行步骤(5.8),否则返回步骤(5.5);

步骤(5.8)遍历原始样本集T,若遍历完成,则进行步骤(5.11),否则从T中取出下一个服务S’l,进行步骤(5.9);

步骤(5.9)采用第四步定义的服务功能相似性度量方式来计算服务S’k与服务S’l的功能相似度FunctionalSim(S’k,S’l),进行步骤(5.10);

步骤(5.10)若服务S’k与服务S’l的功能相似度FunctionalSim(S’k,S’l)小于或等于搜索半径Eps,则将服务S’l加入服务S’k的邻域集合NEps(S’k),返回步骤(5.8),否则直接返回步骤(5.8);

步骤(5.11)若服务S’k的Eps邻域样本数不少于MinPts,则将该邻域中的服务加入到服务Si的Eps邻域集合NEps(Si),进行步骤(5.12),否则返回步骤(5.5);

步骤(5.12)若簇集合C中不包含含有服务S’k的聚类簇,则将服务S’k加入步骤(5.4)创建的聚类簇Ck,返回步骤(5.5),否则直接返回步骤(5.5);

步骤(5.13)将聚类簇Ck加入簇集合C,返回步骤(5.2)。

4.如权利要求3所述的一种基于改进DBSCAN算法的Web服务聚类方法,其特征在于,步骤(5.3)所述寻找服务Si的Eps邻域的步骤如下:步骤(5.3.1)创建服务Si的邻域集合NEps(Si),进行步骤(5.3.2);

步骤(5.3.2)遍历原始样本集T,若遍历完成,则进行步骤(5.4),否则从T中取出下一个服务Sj,进行步骤(5.3.3);

步骤(5.3.3)采用第四步定义的功能相似度来计算服务Si与服务Sj的功能相似度FunctionalSim(Si,Sj),进行步骤(5.3.4);

步骤(5.3.4)若服务Si与服务Sj的功能相似度FunctionalSim(Si,Sj)小于或等于搜索半径Eps,则将服务Sj加入服务Si的邻域集合NEps(Si),返回步骤(5.3.2),否则直接返回步骤(5.3.2)。