[发明专利]基于传递相似度和聚类度的两阶段局部社区发现方法在审
申请号: | 201910191365.X | 申请日: | 2019-03-12 |
公开(公告)号: | CN109949173A | 公开(公告)日: | 2019-06-28 |
发明(设计)人: | 夏正友;刘赛赛;刘庆庆 | 申请(专利权)人: | 南京航空航天大学 |
主分类号: | G06Q50/00 | 分类号: | G06Q50/00;G06F16/953 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 211106 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 聚类 社区 核心节点 局部社区 两阶段 相似度 传递 广度优先搜索 相似性计算 依赖性问题 结束条件 邻居节点 判定条件 网络结构 准确问题 自动选取 检测 发现 遍历 判定 搜索 | ||
1.基于传递相似度和聚类度的两阶段局部社区发现方法,其特征在于:包括以下步骤:
步骤S1:读取网络数据集,生成网络图G;读取给定的节点Vu;
步骤S2:初始化当前检测到的社区集合C、社区邻居队列N、节点传递相似度向量S、广度遍历深度向量Depth、节点权重W;
步骤S3:根据节点局部聚类度LCC,将给定节点Vu及其具有最大LCC值的邻居节点加入C中,更新N、S、Depth、W;
步骤S4:遍历N中每一个节点Vi,将满足核心节点条件的节点Vi加入社区C中,并将其未在C和N中的邻居节点加入N中,当N中所有节点都遍历完成后,就生成了由核心节点组成的核心社区C;
步骤S5:根据主关键字Depth值递增,此关键字S值递减顺序排序核心社区C;
步骤S6:根据公式(6)计算核心社区C中所有节点的平均节点传递相似度Savg;
步骤S7:遍历C中每个节点Vi,并将Vi的每个不在C和N中的节点加入N中;
步骤S8:遍历N中每一个节点Vi,将满足扩展节点条件的节点Vi加入社区C中,并将其未在C和N中的邻居节点加入N中,当N中所有节点都遍历完成后,就生成了给定节点Vu所在的社区C;
步骤S9:输出最终的社区划分结果C。
2.根据权利要求1所述的基于传递相似度与聚类度的两阶段局部社区发现方法,其特征在于:所述步骤S1具体为:
步骤S11:读取网络数据集,生成网络图G=(V,E),其中V表示节点集,|V|表示节点的个数,E表示边集;构建G的|V|×|V|的邻接矩阵A,若Vi和Vj之间的边E(i,j)存在,则元素aij=1,否则aij=0;
步骤S12:读取给定的节点Vu,u表示Vu是V中的第u个节点,u的取值范围是0至(|V|-1)。
进一步的,所述步骤S2具体为:初始化集合C和N为空,长度为|V|的向量S的每一个元素值等于-1,长度为|V|的向量Depth的每一个元素值等于-1,长度为|V|的向量W的每一个元素值等于-1。
3.根据权利要求2所述的基于传递相似度与聚类度的两阶段局部社区发现方法,其特征在于:所述步骤S3具体为:
步骤S31:将给定节点Vu加入社区集合C中,设置S[u]=1,Depth[u]=0,W[u]=0;
步骤S32:遍历节点Vu的每个邻居,按公式(1)求出节点i的局部聚类度LCCi,并把具有最大LCC值的邻居节点Vmax添加到C中,设置Depth[max]=1,W[max]=0,按公式(2)求出节点Vmax同节点Vu的传递相似度S[max],此时,令i=u,Sui=0;
其中,i表示节点Vi的序号,ki表示Vi的度;
Suj′=max{Suj,α·Sui+(1-α)·Simij} (2)
其中,Suj表示节点Vu和节点Vj之间的传递相似性,Suj’表示节点Vu和节点Vi之间当前的传递相似性,Suj表示节点Vu和节点Vi之间以前的传递相似性,Simij表示节点Vi和节点Vj之间的相似性;
步骤S33:遍历社区集合C中的每一个节点Vi,将Vi的所有不在C和N中的邻居节点Vj加入N中,并更新Depth[j]=Depth[i]+1,按公式(2)求出S[j],按公式(4)求出W[j]。
4.根据权利要求3所述的基于传递相似度与聚类度的两阶段局部社区发现方法,其特征在于:所述步骤S4具体为:
步骤S41:重复执行此步骤S42,直到N为空;
步骤S42:取出N中的第一个节点Vi,并将Vi从N中删除,遍历Vi的每一个邻居节点Vj,令Depth[j]=Depth[i]+1,根据公式(2)计算S[j],根据公式(4)计算W[j],如果满足公式(5)则将Vi加入C中,并将Vi不在C和N中的邻居节点加入N中。
Wj<Wi (5)
5.根据权利要求4所述的基于传递相似度与聚类度的两阶段局部社区发现方法,其特征在于:所述步骤S8具体为:
步骤S81:重复执行此步骤S82,直到N为空;
步骤S82:取出N中的第一个节点Vi,并将Vi从N中删除,遍历Vi的每一个不在C中的邻居节点Vj,根据公式(2)计算S[j]。如果满足公式(7),则将Vi加入C中,并将Vi不在C和N中的邻居节点加入N中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京航空航天大学,未经南京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910191365.X/1.html,转载请声明来源钻瓜专利网。