论文部分内容阅读
生物信息学、社会网络、web分析等方面的发展积累了大量的复杂网络数据信息,及时快速的挖掘出这类数据中的社群结构已成为数据挖掘领域一项重要的工作。传统算法在对社群定义中的一个特点是社群之间是不相交的,而现实数据图结构中,一个节点往往是从属于多个社群的,即社群之间存在重叠。加之数据图结构的多样性特点,使开发一种快速而准确的算法对数据图结构进行重叠社群检测成为一种极具挑战性的工作。本文主要对重叠社群检测算法进行了研究。2009年Andrea Lancichinetti等人提出的LFK算法,是一种高效的重叠社群检测算法,它提出了一种高效的局部扩充优化的模型对社群进行检测,并针对社群重叠的情形设计了高效的实验评估指标用于算法准确度的评估。在此基础上,2010年Conrad Lee等人提出了Greedy Clique Expansion(GCE)算法,解决了LFK算法对于某些特殊种子循环扩充而无法停止的问题。这类算法简单高效,同时存在一些不足和可供改进的地方:①算法内部流程可调整拆分,使算法存在并行化可能;②局部扩充优化函数中的α因子可被考虑进社群成长过程,从而使算法自适应的选取α,减少运算前手动的对α的选取,从而使算法能更快收敛至最优结果。本文针对GCE算法中这些可供改进的地方,进行了一系列具有针对性的研究,研究内容和取得成果如下:①将α因子的自适应机制引入到GCE算法中。新方法中,通过分析社群成长的局部扩充优化函数,变换调整了社群局部扩充优化的机制,使算法在保持准确性的基础上能对α因子进行自适应的选取,从而去除了在算法开始前,手动设定α因子值大小的繁琐操作。并且在引入α因子自适应机制后,通过在此模型基础上对扩展备选集合的进一步缩减,从而提升了算法速度,弥补了α因子自适应模型中的性能丢失。②将并行化模型引入到GCE算法中。新方法在分析现有GCE算法流程及原理的基础上,通过将GCE算法中种子的扩充过程和备选社群的过滤过程进行分拆至不同CPU上,使算法足以在任务级上达到并行。同时将各个环节的任务拆分为处理子数据集的子任务,使得算法进一步在数据级上同步,并运用当前计算机的多核优势进行并行计算,从而提升算法的执行速率。③对上述算法的改进进行了实验分析和验证。首先在众多评价指标中确定了以改进的NMI标准互信息量指标作为算法准确度评价指标。然后根据LFR模型构造出了不同类别的人造数据图结构,对GCE算法及改进后算法进行了实验分析和验证。最后通过对来源于Combined-AP/MS网络的蛋白质交互信息网络图和标准CYC数据集所列举出的已知蛋白质化合物数据集上进行了实验分析和验证。最终实验表明,改进算法在算法的可用性和速率上都有一定的提升。