[发明专利]一种基于密度峰值检测的Mashup服务聚类方法有效
| 申请号: | 202010127369.4 | 申请日: | 2020-02-28 |
| 公开(公告)号: | CN111475610B | 公开(公告)日: | 2022-06-17 |
| 发明(设计)人: | 陆佳炜;吴涵;马超治;徐俊;程振波;肖刚 | 申请(专利权)人: | 浙江工业大学 |
| 主分类号: | G06F16/33 | 分类号: | G06F16/33;G06F16/35;G06F40/289;G06F40/30;G06K9/62 |
| 代理公司: | 杭州斯可睿专利事务所有限公司 33241 | 代理人: | 王利强 |
| 地址: | 310014 浙江省*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 密度 峰值 检测 mashup 服务 方法 | ||
1.一种基于密度峰值检测的Mashup服务聚类方法,其特征在于,所述方法包括以下步骤:
第一步、对于所有参与聚类的Mashup服务的特征向量,进行局部密度、向量间距离和较高密度最近距离计算;
第二步、基于第一步计算的密度信息,从所有Mashup服务特征向量中,筛选出聚类中心的候选点;
第三步、对第二步所得的聚类中心候选点,进一步筛选出最为合适的K个初始聚类中心,进行K-means聚类,过程如下:
步骤(3.1)在聚类中心候选点集合中,筛选出ρy与δy乘积最高的向量,并将其在半径r内包含的向量个数m统计出来,其中半径r即为第二步计算出的判定半径,进行步骤(3.2);
步骤(3.2)遍历聚类中心候选点集合,计算当前候选点的波动值SDy,计算公式如下所示:
其中,U(y)表示距离y最近的m个向量,γz表示ρy与δy的乘积,avgz则表示这m个向量γz的均值,进行步骤(3.3);
步骤(3.3)判断候选点集合是否遍历完成,若否,则返回步骤(3.2),否则,进行步骤(3.4);
步骤(3.4)对候选点集合中的每个向量,进行加权评估计算,计算公式如下所示:
其中,a为介于0与1之间的权值,默认为0.5,进行步骤(3.5);
步骤(3.5)对步骤(3.4)计算所得的score进行降序排序,选取前K个向量作为K-means算法的输入,进行K-means聚类;
所述第一步的过程如下:
步骤(1.1)遍历每个Mashup服务特征向量,计算当前向量的局部密度ρy,计算公式如下所示:
其中,DVecy表示Mashup服务的特征向量,而DVecy的局部密度ρy就是由离其最近的k个特征向量DVecz的余弦相似度cos(DVecy,DVecz)累加而成,这样的计算方式不仅避免了人工设定截断距离所带来的干扰问题,并且可以让每个向量获得较为合理的局部密度值,进行步骤(1.2);
步骤(1.2)计算当前向量的向量间距离dyz,计算公式如下所示:
dyz=1-cos(DVecy,DVecz),进行步骤(1.3);
步骤(1.3)基于属性ρy与属性dyz,定义当前向量的较高密度最近距离δy,定义公式如下:
其中,定义式中y表示当前向量,z表示其他向量,min函数表示选取最小值,max函数表示选取最大值,进行步骤(1.4);
步骤(1.4)判断Mashup服务特征向量是否遍历完成,若否,则返回步骤(1.1),否则,结束;
所述第二步的过程如下:
步骤(2.1)计算限定值bound,其计算公式如下所示:
bound=(max(δy)+min(δy))/2,其中,max(δy)表示δy的最大值,而min(δy)表示δy的最小值,进行步骤(2.2);
步骤(2.2)将δy值低于bound的Mashup服务特征向量提取出来,并将它们的密度信息对应放入集合S,进行步骤(2.3);
步骤(2.3)计算步长单元au,并设置初始值为0,其中,au主要用于确定聚类中心候选点的δy值范围,进行步骤(2.4);
步骤(2.4)遍历集合S,取出δy,进行步骤(2.5);
步骤(2.5)遍历集合S,取出δz,其中,δz与δy不相等,进行步骤(2.6);
步骤(2.6)对au进行累加计算,计算公式如下:
au=au+|δy-δz|,其中,|δy-δz|表示取δz与δy之差的绝对值,记录当前循环次数count,进行步骤(2.7);
步骤(2.7)判断集合S是否遍历完成,若否,则返回步骤(2.5),否则,进行步骤(2.8);
步骤(2.8)判断集合S是否遍历完成,若否,则返回步骤(2.4),否则,进行步骤(2.9);
步骤(2.9)设au=au/count,进行步骤(2.10);
步骤(2.10)设置判定半径r,并赋默认值为bound,其中判定半径主要用于进一步确定聚类中心候选点的范围,进行步骤(2.11);
步骤(2.11)针对所有Mashup服务特征向量,判断在连续的bound/au个区域中,向量δy属性的数量是否保持递增,并将初始遍历区域设为[l1=0,l2=au],进行步骤(2.12);
步骤(2.12)若δy属性的数量递增,则将l1与l2的值分别累加一个步长au,进行更新,否则,进行步骤(2.13);
步骤(2.13)将判定半径r设为l1的值,进行步骤(2.14);
步骤(2.14)从所有Mashup服务特征向量中,筛选出半径r内包含其它向量,并且δy值大于r的向量作为聚类中心候选点集合。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江工业大学,未经浙江工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010127369.4/1.html,转载请声明来源钻瓜专利网。





