收稿日期: 2010唱11唱03; 修回日期: 2010唱12唱09 基金项目: 国家自然科学基金资助项目(71071096) ;高等学校博士学科点专项科研基金
资助项目(20070248054)
作者简介:张聪(1975唱),男,安徽阜阳人,讲师,博士研究生,主要研究方向为复杂网络、数据挖掘( z_c_cn@163.com);沈惠璋(1958唱) ,男,天津
人,教授,博导,博士,主要研究方向为数据挖掘、网络安全;李峰(1976唱) ,男,辽宁辽阳人,讲师,博士研究生,主要研究方向为复杂网络、数据挖掘.
复 杂 网 络 中 社 团 结 构 划 分 的 快 速 分 裂 算 法
倡
张 聪, 沈惠璋, 李 峰
(上海交通大学 安泰经济管理学院, 上海 200052)
摘 要: 针对已有分裂算法时间复杂度较高,不适用于社团数目未知的大型网络等问题,借鉴电压谱分割算法
和 GN 算法的思想,提出以扩散距离为分割依据,以模块度函数为社团结构划分满意度的快速分裂算法。 实验
结果表明,与已有的社团结构划分算法相比,基于扩散距离的快速分裂算法能够得到高质量的社团结构,其时间
复杂度较低,不仅对稀疏网络能够快速运算,对非稀疏网络更能高效求解,这进一步体现出算法具有较高的稳
定性。
关键词: 复杂网络; 社团结构; 分裂算法; 模块度; 扩散距离
中图分类号: TP181 文献标志码: A 文章编号: 1001唱3695(2011)04唱1242唱03
doi:10.3969 /j.issn.1001唱3695.2011.04.010
Fast splitting algorithm for partitioning community structure in complex networks
ZHANG Cong, SHEN Hui唱zhang, LI Feng
( Antai College of Economics & Management, Shanghai Jiaotong University, Shanghai 200052, China)
Abstract: Most of the proposed splitting algorithms are not suitable for very large networks because of their high time complex唱
ity and unknown quantity of community number.Referencing the voltage spectrum segmentation algorithm and GN algorithm,
this paper proposed a fast splitting algorithm based on diffusion distance and the modularity function.Its segmentation basis
was the diffusion distance, and the ability of modularity function could find the best community number in large networks.Ex唱
perimental results show that the algorithm has better partitioning ability and lower time complexity than the proposed partitio唱
ning community structure algorithms.Not only it is capable of fast operation for the sparse network, but also for the non唱sparse
network, which reflects the algorithm has high stability.
Key words: complex networks; community structure; splitting algorithm; modularity; diffusion distance
许多研究领域中的复杂系统都可以被表述成由节点或顶
点集通过线或边的连接而构成的网络,如现实世界中的互联
网、万维网、新陈代谢网、食物链网、神经网络、通信与分布式网
络以及社会网络
[1,2]
。 近年来在对以上网络的研究中发现它
们存在一个共同的性质,称为社团结构。 它是指整个网络由若
干个组或簇构成,组内节点间的连接比较紧密,而组间节点的
连接比较松散
[3]
。 发现网络中的社团结构并对其进行分析是
了解整个网络结构、特征和功能的重要途径,在生物学、物理
学、计算机科学和社会学研究领域中都有着广泛的应用
[3,4]
。
网络中社团结构的划分方法主要有四类:分裂方法、凝聚
方法、谱分析法和搜索方法
[3 ~15]
,其中分裂方法是近年来研究
比较广泛的一类。 计算机科学中的图分割是该类方法的研究
起源。 由 Girvan 等人
[3]
提出的 GN 算法是一种典型的分裂方
法,它的基本思想是通过不断地从网络中移除介数最大的边来
达到划分网络的目的;而 Radicchi 等人
[5]
则是利用边聚类系数
代替 GN 算法中的边介数来作为发现社团结构的依据;Tsuch唱
iura 等人
[6]
引入了布朗微粒来衡量网络中两个节点之间的距
离;Zhou
[7,8]
基于这种距离矩阵,引入了相异性指数来表示两
个最相邻节点属于同一个社团的可能性大小;Fortunato 等人
[9]
提出了一种利用信息中心度来划分网络的算法; 赵凤霞等
人
[10]
在 Fortunato 的信息中心度的基础上,提出了一种基于 K唱
means 聚类算法的划分方法;李峻金等人
[11]
将社团结构划分
问题转换为空间数据聚类问题,将粒子群算法应用到社团结构
的划分。 以上算法均可得到层次结构的社团结构,但是它们也
有各自的局限,例如 GN 算法的边介数计算的时间复杂度较
高,又需反复计算,总时间复杂度为 O( m
2
n);Radicchi 的算法
则在很大程度上依赖于网络中存在的三角形数目;基于相异性
的算法需重复计算距离矩阵和相邻节点的相异性指数;基于信
息中心度的算法同样要反复计算移除每条边后造成的信息有
效率减小的相对量;基于 K唱means 聚类算法和基于粒子群算法
的划分方法则需将网络结构转换为空间数据后再运算得到聚
类,而这些转换过程将在不同程度上造成数据的偏差和失真。
本文在分析上述算法优缺点的基础上,提出一种网络社团结构
快速分裂算法。 该算法借鉴电阻网络电压谱的思想,通过一系
列的迭代过程,不断找到最大“电阻”或“距离”所对应的边,切
断这些边,从而达到自然分割为层次社团结构的目的。
1 电压谱分割法
本算法是以 Wu 等人
[15]
的基于电阻网络电压谱的快速谱
分割法为基础而提出的(下文简称 WH 算法)。 下面简要介绍
第 28 卷第 4 期
2011 年 4 月
计 算 机 应 用 研 究
Application Research of Computers
Vol.28 No.4
Apr.2011