1. INTRODUCTION
社区结构捕获了一个网络中的实体聚集成有意义网络子集的趋势,每个集合中的成员之间有一种独特的相互关系。识别出这些子集使得我们可以从不同的级别和细节来分析网络,这有助于阐明大规模系统的潜在结构。
尽管社区结构在网络的结构和功能上发挥着根本性的作用,但是社区结构已经被证明是十分难以定义、量化和提取的。除了挑战相关的计算易驾驭性,三个主要因素可以解释社区提取的错综复杂。首先,应用程序领域包括从根本上有不同性质的各种各样的网络。每个网络都拥有有意义的社区,这些社区也拥有自己独特的结构组合表。第二,本文提供了多种不同的社区发现算法,由于概念和设计上的区别,这些程序的输出展示了高的结构可变性。最后,关于什么样的子图是社区什么样的子图不是社区这个问题还没有达成共识。
在本文中,我们通过对社区特性的综合分析来应对这些挑战。我们提出了一个框架使得科研工作者和实践者可以评估由各种社区发现算法输出的社区在结构上的不同点,以及算法输出的社区和实践中的社区在结构上的不同点。我们通过考虑结构特性的广泛光谱来分析社区,该分析揭示了提取的社区和实际社区结构的细微差别。
我们将我们的算法设计成一个类可分性问题,可以同时处理许多类型的社区以和一组不同的结构属性。为此,我们指定一个学习问题,可以将不同的社区映射到一个特征空间,其中的维度代表着描述一个社区的链接结构的衡量。类的可分性描述了不同的社区有相同的特征值分布的程度。我们提取了不同类型的社区,这些社区可以划分成两类:本质定义社区和非本质定义社区。
我们通过链接结构的本质属性来定义第一组社区。就我们的目的而言,这些集合都是社区发现算法可能输出的。每类本质定义社区都包含一组例子,这些例子由特定的算法提取。这些类的可分性说明了不同算法输出结构上可区分的子图的程度。然后可以使用特征选择分析来突出那些表现出最高程度的类的可变性的属性,从而使得不同算法产生的偏差更明显。
我们还根据背景、动态或与网络相关的功能等非本质的链接结构来定义社区。我们通过数据集提供的有意义的注释来确定这些社区,比如显示的声明会员、产品分类以及通过蛋白质功能分组等等。对于每个网络我们用这种形式定义了一类非本质定义社区,从今以后称为带注释的社区。这些社区支持社区发现算法进行大规模的严格的分析。类的可分性包括来自本质定义社区的带注释的社区,用来判定社区发现算法成功提取的子图与那些由共同外在属性节点构成的社区在结构上是可比的程度。
为了说明我们的方法,我们为该框架提供了大量的结构特性和十个社区发现算法程序,用来产生不同结构的类例子。在本文中我们选择的是具有代表性的流行的算法。我们考虑了各种各样的大规模的网络,涉及的领域包括生物学、在线购物、社交系统。评估可分性通常结合有监督的分类方法比如支持向量机、无参的K近邻算法和基于相关性的特征选择分析方法。首先,对于所有的网络,强大的交叉验证结果表明不同的社区发现算法会产生从根本上不同的结构,这些结构可以在定义的特征空间中进行分离。第二,我们可以发现,在几乎所有的情况下,带注释的社区与社区发现算法输出的社区在结构上是易分辨的。虽然如此,那些基于随机游走算法提取的社区与带注释社区在结构上具有较高的相似性。令人惊讶的是,我们采用的网络是来自各种各样的领域,这个发现适用于所有的网络,除了两个人规模较小的网络。最后,特征集的一个子集最终被发现是最有区分度的。这得维度降低到4,同时保证了10倍交叉验证的性能。最有识别能力的特征可以识别出不同算法产生的偏差的方式。正如我们实验所说明的,通过人工生成的或是实际存在的社区例子,这些社区拥有我们希望发现的结构,利用我们的框架使得给定一个网络可以给出最合适的社区发现算法成为可能。并且,它允许现有的社区发现算法进行比较、可能会引导一个新的设计。
*******************************************************************************************************************
What problem is this entire field trying to solve?
在网络中发现虚拟社区结构有助于理解网络的拓扑结构特点、揭示复杂系统的内在功能特性、理解社区内个体关系/行为及演化趋势,为信息检索、信息推荐、信息传播控制、组织管理、公共安全事件管理控制等诸多应用提供有力支撑。
虚拟社区发现算法的进程:
1、20世纪的图分割算法:Kernighan-Lin算法(该算法可以查找到合理的网络划分,而且可以将网络的社区结构通过树状图的形式展现出来,从而揭示层次化的社区结构)和谱平分法。
2、进入21世纪后,2002年Michelle Girvan和Mark Newman提出了GN算法(通过自定义的边介数指标来标示社区之间的网络连边,通过迭代去除边介数最大的连边,从而将网络分裂成若干虚拟社区结构)。
3、石川等学者在模块度的基础上提出了基于多目标优化的社区发现算法(利用多目标函数全面、准确的刻画社区结构特征并利用遗传算法等技术,实现多目标函数的优化)。
4、信息科学领域的专家也从信息论的角度出发,将网络拓扑结构映射为数据编码问题,Infomap算法为该领域典型代表(可以更高精度地发现网络社区,主要应用于需要精确分析社区结构的场合)。
5、由于一个节点可以隶属多个社区,Gergely Palla在2005年提出了重叠社区概念(利用派系和团的定义去发现网络中的重叠社区和处于社区边界位置的桥节点)。
6、Mark Newman等人提出了基于概率模型的社区结构发现算法(通过最大化似然概率,实现重叠结构的社区的发现)。
上述算法适合较小规模的网络中社区发现,于是从社区的局部结构特征出发,人们提出了:
7、基于局部扩展的社区发现算法(往往从一个或者几个网络核心节点出发,通过定义局部受益函数,采用贪婪策略将该节点周围的节点吸收入已存在的虚拟社区结构中)。
8、Usha Nandini Raghavan等人提出了一种基于标签传播的社区发现算法(该算法通过为每一个节点赋予唯一的标签,并按照节点邻居的多数标签迭代更新其自身的标签值,最终收敛到部分网络节点共享同一个标签的稳定的状态,该算法在已知网络拓扑结构全貌的情况下,可以在线性时间内发现网络社区结构)。
What exactly are the authors trying to answer with their research?