论文部分内容阅读
现实生活中的很多复杂系统都已被抽象成为复杂网络来进行研究。随着各种复杂系统的数据量持续攀升,未来将会有更多的复杂系统加入到复杂网络的行列。复杂网络最为典型的特征就是社团结构,社团对应的是复杂网络中的单元结构。社团检测的目的就是准确地发掘复杂网络中的社团单元结构。成功的社团检测能够指导我们揭示出复杂网络内部深层次的规律,对复杂网络进行社团检测研究具有重要的现实意义。许多社团检测算法已经被提出,这些算法基本可以归类为基于模块度优化的社团检测算法、基于标签传播的社团检测算法、基于层次聚类的社团检测算法、基于中心点扩张的社团检测算法和基于密度的社团检测算法。为了更精确地检测出社团结构,本文深入研究了上述算法,并着重对中心点扩张算法进行了改进。本文主要改善了由于选取的中心点太少而导致社团检测效果不佳,选点经常不能覆盖所有社团,同时时间复杂度较高,未对重叠节点处理以及没有从全局的角度考虑中心点的选取等问题。本文首先提出了基于全局密度影响的中心点扩张社团检测算法(DenISeC)。DenISeC从网络的全局角度出发,计算每个节点从网络中移除后的网络所有节点的密度之和变化,将其作为节点对网络的密度影响值,将密度影响值超过一定阈值的节点视为中心点,将中心点组成的初始社团当作核心社团。依据节点与核心社团的相似性将网络中的其他节点按照层次划分到各个社团中。然而,DenISeC的准确率依旧有待提高,针对这一问题,本文提出了基于密度层次的中心点扩张社团检测算法(DenSeC)。DenSeC算法将度数最小的节点当作每个社团的边缘点,从边缘点出发递归地找出边缘点邻域内密度最大且高于当前节点密度的点,递归停止时到达的节点就是核心点。核心点组成的初始社团被当作网络的核心社团。网络中其他的节点将根据节点与核心社团的相似性划分到各个初始社团中。本文提出的算法在多个数据集上与参照算法对比了社团检测效果,实验结果表明DenSeC算法提高了中心点扩张算法在各个网络上的准确率,DenISeC算法更加合理地选中了复杂网络中的中心点,并且在时间复杂度上有所改善。