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

摘要:

权利要求书:

1.一种基于Mashup服务功能特征表示与密度峰值检测的聚类方法,其特征在于,包括以下步骤:第一步、对所有需要特征表示的Mashup服务数据进行预处理;

第二步、基于预处理后的Mashup服务数据,进行功能名词提取操作;

第三步、对于每条Mashup服务的功能名词集合FS,对每个功能名词的语义权重进行语义关联计算;

第四步、基于第三步的语义权重计算结果,结合TF-IDF算法与Word2Vec模型,进行Mashup语义特征向量的表示;

第五步、对于所有参与聚类的Mashup语义特征向量,进行密度信息的计算,密度信息包括局部密度、向量间距离和较高密度最近距离;

第六步、基于第五步计算的密度信息,从所有Mashup语义特征向量中,筛选出聚类中心的候选点;

第七步、对第六步所得的聚类中心候选点,进一步筛选出最为合适的K个初始聚类中心,进行K-means聚类。

2.如权利要求1所述的一种基于Mashup服务功能特征表示与密度峰值检测的聚类方法,其特征在于,所述第一步的过程如下:步骤(1.1)遍历每条Mashup服务信息,针对性的提取出服务名称、服务描述、Web API组合信息、类别信息以及标签信息进行整理,进行步骤(1.2);

步骤(1.2)如果遇到缺失服务描述或描述内容过于简短的情况,则直接将该服务剔除,进行步骤(1.3);

步骤(1.3)如果遇到缺失服务名称的情况,则将设置特定的递增序列号作为默认的服务名称,进行步骤(1.4);

步骤(1.4)对于每条服务的描述内容,将具有特殊语义的符号进行转义,例如将“$”改写为“dollar”,同时剔除“▲”、“#”这样不包含任何语义信息的字符,以便于在后一阶段提升功能词汇检索的运行效率,进行步骤(1.5);

步骤(1.5)检查服务描述中的单词完整性,若有字母缺失的情况,先尽可能进行补全复原,而对于实在无法补全的单词,则将其剔除,进行步骤(1.6);

步骤(1.6)根据每条Mashup服务的Web API组合属性,获取相应的Web API服务信息,进而利用这些Web API的标签对相应的Mashup服务标签进行扩充,使得扩充后的Mashup服务标签更能全面体现服务的功能特点,进行步骤(1.7);

步骤(1.7)判断Mashup服务信息是否遍历完成,若否,则返回步骤(1.1),否则,结束。

3.如权利要求1或2所述的一种基于Mashup服务功能特征表示与密度峰值检测的聚类方法,其特征在于,所述第二步的过程如下:步骤(2.1)遍历Mashup服务数据,对每条服务描述内容进行词性标注,进行步骤(2.2);

步骤(2.2)基于步骤(2.1)的词性标注结果,过滤掉副词、形容词、量词这些没有实际语义的停用词,进行步骤(2.3);

步骤(2.3)在剩余的名词中进行词形还原,去重后放入临时名词集合中,进行步骤(2.4);

步骤(2.4)检查临时名词集合中是否掺杂了类似Mashup服务名称这样无功能语义的名词成分,若有,则剔除,而保留下来的其他名词则作为最终的功能名词集合FS,否则,将临时名词集合直接作为功能名词集合FS,进行步骤(2.5);

步骤(2.5)判断Mashup服务是否遍历完成,若否,则返回步骤(2.1),否则,结束。

4.如权利要求1或2所述的一种基于Mashup服务功能特征表示与密度峰值检测的聚类方法,其特征在于,所述第三步的过程如下:步骤(3.1)计算所有功能名词集合FS的平均长度LAvg,计算公式如下:其中,Set(FS)表示存放FS的集合,|Set(FS)|则是该集合的长度,进行步骤(3.2);

步骤(3.2)遍历各Mashup服务信息,包括对应的功能名词集合FS,计算名词间语义关联权重对最终语义权重的影响因子w,若当前FS的集合长度len(FS)不等于LAvg,那么影响因子w公式如下所示:否则,w设为默认值0.5,进行步骤(3.3);

步骤(3.3)遍历当前FS中的名词,计算第i个功能名词与其他名词之间的语义关联权重FSimi,计算公式如下:其中,WordNet(ni,nj)表示第i个功能名词与第j个功能名词之间的语义相似度,|FS|表示功能名词集合FS中所包含的名词个数,进行步骤(3.4);

步骤(3.4)在当前服务的服务标签中,计算出与功能名词ni语义相似性最大的值,作为ni的语义权重校正量TSimi,其中,语义相似性同样采用WordNet函数计算,进行步骤(3.5);

步骤(3.5)计算出功能名词ni的最终语义权重SWi,并存于当前服务功能语义权重字典SimDic中,其中,SWi计算公式如下:SWi=w×Simi+(1-w)×TSimi,w即为步骤(3.2)计算的影响因子,进行步骤(3.6);

步骤(3.6)只将语义权重较高的前LAvg个单词存放于当前字典SimDic中,剔除其他单词,进行步骤(3.7);

步骤(3.7)判断当前FS中的名词是否遍历完成,若否,则返回步骤(3.3),否则,进行步骤(3.8);

步骤(3.8)判断Mashup服务是否遍历完成,若否,则返回步骤(3.2),否则,结束。

5.如权利要求1所述的一种基于Mashup服务功能特征表示与密度峰值检测的聚类方法,其特征在于,所述第四步中,对于每条Mashup服务,基于第三步的语义权重计算结果,将字典SimDic中存放的单词进行最终的权重计算,将字典中每个单词x的语义权重SWx嵌入到TF-IDF算法中,最终的单词权重TSx计算公式如下所示:其中,TF-IDFxy表示单词x在服务描述文本y中的TF-IDF权重,在此基础上,借助由谷歌新闻作为语料训练好的Word2Vec模型,将字典SimDic中的单词向量化,并结合TS计算公式进行Mashup语义特征向量的表示。

6.如权利要求5所述的一种基于Mashup服务功能特征表示与密度峰值检测的聚类方法,其特征在于,所述第四步的过程如下:步骤(4.1)遍历每条Mashup服务信息,包括对应的功能语义权重字典SimDic,进行步骤(4.2);

步骤(4.2)初始化Mashup语义特征向量DVecy,进行步骤(4.3);

步骤(4.3)遍历当前字典SimDic中的单词x,并利用训练好的Word2Vec模型将其转化为词向量WVecx,进行步骤(4.4);

步骤(4.4)从当前字典SimDic中提取单词x的语义权重SWx,并计算出单词x的TF-IDF权重TF-IDFxy,进行步骤(4.5);

步骤(4.5)结合TS计算公式,计算出单词x的TS权重TSx,进行步骤(4.6);

步骤(4.6)判断是否当前SimDic存在多个单词,并且语义权重SWx为0,若是,则将将TSx置为0,否则,直接进行步骤(4.7);

步骤(4.7)对Mashup语义特征向量DVecy进行累加计算,计算公式如下:DVecy+=WVecx×TSx,进行步骤(4.8);

步骤(4.8)判断当前字典SimDic中的单词是否遍历完成,若否,则返回步骤(4.3),否则,进行步骤(4.9);

步骤(4.9)判断Mashup服务信息是否遍历完成,若否,则返回步骤(4.1),否则,结束。

7.如权利要求1或2所述的一种基于Mashup服务功能特征表示与密度峰值检测的聚类方法,其特征在于,所述第五步的过程如下:步骤(5.1)遍历每个Mashup语义特征向量,计算当前向量的局部密度ρy,计算公式如下所示:其中,DVecy表示Mashup语义特征向量,而DVecy的局部密度ρy就是由离其最近的k个特征向量DVecz的余弦相似度cos(DVecy,DVecz)累加而成,这样的计算方式不仅避免了人工设定截断距离所带来的干扰问题,并且可以让每个向量获得较为合理的局部密度值,进行步骤(5.2);

步骤(5.2)计算当前向量的向量间距离dyz,计算公式如下所示:dyz=1-cos(DVecy,DVecz),进行步骤(5.3);

步骤(5.3)基于属性ρy与属性dyz,定义当前向量的较高密度最近距离δy,定义公式如下:其中,定义式中y表示当前向量,z表示其他向

量,min函数表示选取最小值,max函数表示选取最大值,进行步骤(5.4);

步骤(5.4)判断Mashup语义特征向量是否遍历完成,若否,则返回步骤(5.1),否则,结束。

8.如权利要求1或2所述的一种基于Mashup服务功能特征表示与密度峰值检测的聚类方法,其特征在于,所述第六步的过程如下:步骤(6.1)计算限定值bound,其计算公式如下所示:bound=(max(δy)+min(δy))/2,其中,max(δy)表示δy的最大值,而min(δy)表示δy的最小值,进行步骤(6.2);

步骤(6.2)将δy值低于bound的Mashup语义特征向量提取出来,并将它们的密度信息对应放入集合S,进行步骤(6.3);

步骤(6.3)计算步长单元au,并设置初始值为0,其中,au主要用于确定聚类中心候选点的δy值范围,进行步骤(6.4);

步骤(6.4)遍历集合S,取出δy,进行步骤(6.5);

步骤(6.5)遍历集合S,取出δz,其中,δz与δy不相等,进行步骤(6.6);

步骤(6.6)对au进行累加计算,计算公式如下:

au=au+|δy-δz|,其中,|δy-δz|表示取δz与δy之差的绝对值,记录当前循环次数count,进行步骤(6.7);

步骤(6.7)判断集合S是否遍历完成,若否,则返回步骤(6.5),否则,进行步骤(6.8);

步骤(6.8)判断集合S是否遍历完成,若否,则返回步骤(6.4),否则,进行步骤(6.9);

步骤(6.9)设au=au/count,进行步骤(6.10);

步骤(6.10)设置判定半径r,并赋默认值为bound,其中判定半径主要用于进一步确定聚类中心候选点的范围,进行步骤(6.11);

步骤(6.11)针对所有Mashup语义特征向量,判断在连续的bound/au个区域中,向量δy属性的数量是否保持递增,并将初始遍历区域设为[l1=0,l2=au],进行步骤(6.12);

步骤(6.12)若δy属性的数量递增,则将l1与l2的值分别累加一个步长au,进行更新,否则,进行步骤(6.13);

步骤(6.13)将判定半径r设为l1的值,进行步骤(6.14);

步骤(6.14)从所有Mashup语义特征向量中,筛选出半径r内包含其它向量,并且δy值大于r的向量作为聚类中心候选点集合。

9.如权利要求1或2所述的一种基于Mashup服务功能特征表示与密度峰值检测的聚类方法,其特征在于,所述第七步的过程如下:步骤(7.1)在聚类中心候选点集合中,筛选出ρy与δy乘积最高的向量,并将其在半径r内包含的向量个数m统计出来,其中半径r即为第六步计算出的判定半径,进行步骤(7.2);

步骤(7.2)遍历聚类中心候选点集合,计算当前候选点的波动值SDy,计算公式如下所示:其中,U(y)表示距离y最近的m个向量,γz表示ρy与δy的乘积,avgz则表示这m个向量γz的均值,进行步骤(7.3);

步骤(7.3)判断候选点集合是否遍历完成,若否,则返回步骤(7.2),否则,进行步骤(7.4);

步骤(7.4)对候选点集合中的每个向量,进行加权评估计算,计算公式如下所示:其中,a为介于0与1之间

的权值,默认为0.5,进行步骤(7.5);

步骤(7.5)对步骤步骤(7.4)计算所得的score进行降序排序,选取前K个向量作为K-means算法的输入,进行K-means聚类。