【技术实现步骤摘要】
基于密度峰值与社区归属度的重叠社区发现方法
本专利技术涉及复杂网络上的重叠社区发现
,具体涉及一种基于密度聚类的重叠社区发现方法。
技术介绍
在现实世界中存在大量复杂网络,如社交网络、生物网络、文献引用网络。研究表明,这些复杂网络普遍存在着一定的社区结构,各社区内部节点连接较为紧密,社区间连接较为稀疏。社区发现研究的就是如何准确的识别出复杂网络中的社区结构。传统的社区发现算法是将网络划分成若干个互不相连的社区,网络中每个节点和边只能隶属一个固定社区。包括模块度优化方法,层次聚类算法,标签传播算法和信息论算法。.然而,真实网络中,社区之间通常是互相交叉,彼此联系的,这种情形下,网络中的节点不再仅隶属于单个社区,而是同时被包含到多个相关联的社区中。因而,研究重叠社区结构具有更重要意义。目前,重叠社区发现算法主要包括基于派系过滤的算法、基于局部社区的算法、基于多标签传播的算法和基于链接聚类的算法等。这些算法在社区结构明显且大小均匀时可以较好的发现网络社区结构,但对于社区大小不均以及形状各异的网络,上述算法的效果较差。所以就有研究员提出了基于密度峰值聚类的重叠社区发 ...
【技术保护点】
1.基于密度峰值与社区归属度的重叠社区发现方法,其特征在于:包括以下步骤:步骤S1:读取网络数据集,生成网络图G;步骤S2:根据网络图G节点间的路径长度来计算网络中节点间距离、距离最大值dmax、距离最小值dmin,得到节点间距离字典Pd;步骤S3:根据节点间距离字典Pd计算节点间的距离阈值dc、节点的局部密度Rho;步骤S4:根据节点间距离字典Pd、节点的局部密度Rho求取节点的跟随节点Nnb和跟随距离Del;步骤S5:根据密度峰值聚类算法的原理生成非重叠社区集C;步骤S6:对非重叠社区集C的边界点进行社区归属判断,得到重叠社区集C';步骤S7:输出最终的社区划分结果。
【技术特征摘要】
1.基于密度峰值与社区归属度的重叠社区发现方法,其特征在于:包括以下步骤:步骤S1:读取网络数据集,生成网络图G;步骤S2:根据网络图G节点间的路径长度来计算网络中节点间距离、距离最大值dmax、距离最小值dmin,得到节点间距离字典Pd;步骤S3:根据节点间距离字典Pd计算节点间的距离阈值dc、节点的局部密度Rho;步骤S4:根据节点间距离字典Pd、节点的局部密度Rho求取节点的跟随节点Nnb和跟随距离Del;步骤S5:根据密度峰值聚类算法的原理生成非重叠社区集C;步骤S6:对非重叠社区集C的边界点进行社区归属判断,得到重叠社区集C';步骤S7:输出最终的社区划分结果。2.根据权利要求1所述的基于密度峰值与社区归属度的重叠社区发现方法,其特征在于:所述步骤S1具体为:读取网络数据集,生成用于划分社区结构的网络图G=(V,E),其中V表示节点集,E表示边集。3.根据权利要求2所述的基于密度峰值与社区归属度的重叠社区发现方法,其特征在于:所述步骤S2具体为:步骤S21:初始化节点间距离字典Pd为空;步骤S22:遍历V中每个节点v,再遍历节点v的每个邻居u,按公式(1)求出节点u,v间的距离d(u,v),并把d(u,v)添加到距离字典Pd中;其中,DNB(v)表示节点v的直接邻居,;w表示节点v的直接邻居节点;当u∈DNB(v)时,节点u,v间距离由长度为1的路径所表示的距离和长度为2的路径所表示的距离相加计算得到;而当时,节点u,v间距离只需考虑由长度为2的路径所表示的距离;步骤S23:遍历节点u的每个邻居r,按公式(2)求出节点r,v间的距离d(r,v),并把d(r,v)添加到节点间距离字典Pd中;步骤S24:求出节点间距离的最大值dmax、最小值dmin;步骤S25:输出节点间距离字典Pd、最大值dmax、最小值dmin。4.根据权利要求3所述的基于密度峰值与社区归属度的重叠社区发现方法,其特征在于:所述步骤S3具体为:步骤S31:初始化节点的局部密度字典Rho为空,网络所有节点的dc-邻域内节点数nb及nb与网络节点总数的比例np为0;步骤S32:根据密度峰值聚类算法中距离阈值的选取规则计算阈值dc;步骤S33:根据dc和公式(3)计算网络中每个节点的局部密度;其中,rho(u)表示节点u的局部密度,INB(u)表示节点u邻居的邻居。步骤S34:输出局部密度字典Rho,距离阈值dc。5.根据权利要求4所述的基于密度峰值与社区归属度的重叠社区发现方法,其特征在于:所述步骤S4具体为:步骤S41:初始化局部密度列表Rl、节点跟随邻居字典Nnb,跟随距离字典Del和邻居节点集合NB为空;步骤S42:将Rho中的元素逐个添...
【专利技术属性】
技术研发人员:郭昆,彭胜波,郭文忠,陈羽中,
申请(专利权)人:福州大学,
类型:发明
国别省市:福建,35
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。