基于种子节点选择的重叠社区发现算法
基于复杂网络的重叠社团发现算法
基于复杂网络的重叠社团发现算法基于复杂网络的重叠社团发现算法复杂网络是由大量节点和连接组成的复杂结构,它不仅应用广泛,而且具有重要的理论价值。
在复杂网络中,社团是一组高度相互关联的节点,而重叠社团则是指存在相同节点的多个社团。
重叠社团发现是一种重要的网络分析技术,可以揭示网络中的隐藏关系,对于研究人类行为、社交网络、蛋白质互作网络等领域具有重要的应用价值。
基于复杂网络的重叠社团发现算法主要分为两种,一种是基于聚类的算法,即将网络划分为若干个社团,使得同一社团内的节点之间的连接强度较强,而不同社团之间的连接强度较弱。
但是,这种算法只适用于发现非重叠社团。
另一种是基于分解的算法,即将网络表示为若干个基本成分的加权组合,其中每一基本成分需要包含许多节点。
这种算法不仅能够发现非重叠社团,更能够发现重叠社团。
重叠社团发现算法的主要挑战是如何对同一节点在多个社团之间的属于度量。
为了解决这个问题,研究者们提出了许多新的算法。
其中比较流行的是Jaccard系数和模块度。
Jaccard系数是一个二元度量,它将两个社团之间的交集和并集相除。
模块度被认为是复杂网络重叠社团发现算法中最流行的指标之一。
它是一个用于度量网络内部的连接强度和社团之间的连接弱度的权重性度量。
在实际应用中,重叠社团发现算法具有广泛应用。
例如,在社交网络中,我们可以使用重叠社团发现算法来识别网络中的小圈子,进一步了解社交网络中的社群结构。
在生物学中,我们可以使用这种算法来识别蛋白质互作网络中的蛋白质复合物。
在多媒体数据分析中,我们可以使用这种算法来分析大规模图像数据的群体特征。
可见,重叠社团发现算法在各个领域具有广泛的应用前景。
总之,基于复杂网络的重叠社团发现算法是一项重要的研究课题,具有广泛的应用前景。
在未来,我们需要继续深入探索这种算法,加强其理论分析和实际研究,为推动科学技术进步做出积极贡献。
一种基于多维遗传算法的重叠社区发现方法
) 的研究发现, 一些社交网络中, 节点之间在社区间重叠 ( 图1
6 ] 部分的连接往往比社区内部的连接更加紧密 [ 。这一研究结
在很多社交网络中, 一个人往往同时属于多个群体或参与 多个话题, 这就提出了重叠社区发现的问题。现在的社区发现 算法都隐含一个共同的假设, 认为社区是网络节点集合的若干 子集, 每个子集内部节点之间的连接相对紧密, 而不同子集节
4 ] 点之间的连接相对稀疏 [ 。换句话说, 这意味着一对节点同
时属于的社区越多, 它们之间相连的可能性就越低。然而最近
现在有大量的社交网络如 F a c e b o o k 、 T w i t t e r 和新浪微博 等。在社交网络中, 人们可以通过社区相互联系和交换信息来 展示个人生活。社区结构的发现有助于捕获和跟踪网络的拓 扑结构、 揭示复杂系统内在的功能特性、 预测个体关系和行为 的演化趋势, 具有很强的应用价值。社区发现算法的研究得到 了研究人员的广泛关注, 很多经典算法如模块度、 介数等被提
1 相关工作
社区反映了网络中个体行为的局部聚集特征, 在社交网络 中存在大量的隐性或显性社区, 社区结构的研究成为近年来社
1 ~ 4 ] 交网络研究的一个趋势 [ 。
果与现有社区的认识形成了鲜明的对比, 目前已有的众多社区 发现算法均没有考虑此种结构的社区, 它们在算法中要么将社 区重叠部分分成单独的一个聚类, 要么将重叠部分的所有社区
, 2 王 琦1 ,温志平1
( 1 . 南京工程学院 计算机工程学院,南京 2 1 1 1 6 7 ; 2 . 南京大学 计算机科学与技术系,南京 2 1 0 0 9 3 ) 摘 要:社区结构的发现是社交网络分析研究的重要内容。与传统的重叠社区不同, 最近的研究表明某些真实 网络中在社区重叠部分要比社区内部节点间的连接更加密集, 而现有的算法没有考虑此类社区结构。基于遗传 算法, 提出了一种新颖的方法来发现此类社区划分。为了刻画节点属于多个社区的重叠现象, 首次将多维染色 体和均匀块交叉算子引入到社区发现算法中。通过实验证明, 提出的算法可以很好地发现社交网络中重叠和非 重叠的社区结构。 关键词:社团发现;重叠社团;多维染色体;从属网络 中图分类号:T P 3 9 3 文献标志码:A 文章编号:1 0 0 1 3 6 9 5 ( 2 0 1 6 ) 1 2 3 5 4 3 0 4 : 1 0 . 3 9 6 9 / j . i s s n . 1 0 0 1 3 6 9 5 . 2 0 1 6 . 1 2 . 0 0 6 d o i
基于Node2Vec的重叠社区发现算法
基于Node2Vec 的重叠社区发现算法①陈 卓, 姜 鹏, 袁玺明(青岛科技大学 信息科学技术学院, 青岛 266061)通讯作者: 姜 鹏摘 要: 针对目前基于种子节点选择的社区发现算法在准确性和复杂度等方面存在的不足, 提出了一种基于Node2Vec 的重叠社区发现算法. 首先, 使用Node2Vec 算法学习到网络中每个节点的向量表示, 用以计算节点间的相似度, 其次, 利用节点影响力函数计算节点影响力并找出种子节点, 然后基于每个种子节点进行社区的扩展优化,最终挖掘出高质量的重叠社区结构. 本文选取多个真实网络进行了对比实验, 结果表明, 本文所提出的算法能够在保证良好稳定性的前提下发现高质量的社区结构.关键词: Node2Vec; 重叠社区发现; 节点影响力; 种子节点; 社区扩展引用格式: 陈卓,姜鹏,袁玺明.基于Node2Vec 的重叠社区发现算法.计算机系统应用,2020,29(11):163–167. /1003-3254/7658.htmlOverlapping Community Discovery Algorithm Based on Node2VecCHEN Zhuo, JIANG Peng, YUAN Xi-Ming(College of Information Science and Technology, Qingdao University of Science and Technology, Qingdao 266061, China)Abstract : In view of the shortcomings in accuracy and complexity of community discovery algorithm based on seed node selection, a Node2Vec overlapping community discovery algorithm is proposed. First, the vector representation of each node in the network is learned by using Node2Vec algorithm to calculate the similarity between nodes. Second, the node influence function is used to calculate the node influence and find out the seed node. Then the community extension optimization is carried out based on each seed node. Finally the high quality overlapping community structure is excavated. In this study, several real networks are selected for comparative experiments, and the results show that the proposed algorithm can find high quality community structures under the premise of ensuring sound stability.Key words : Node2Vec; overlapping community discovery; node influence; seed node; community expansion现实世界中的很多系统都可以被抽象为复杂网络,如社交网络、技术网络、生物网络, 这些网络都具有一种普遍的特性——社区结构. 在不同类型的网络中,社区有着不同的含义, 但是所有社区内部节点间的联系总是比不同社区节点间的联系密切, 准确地发现社区结构是在中观层面上理解复杂网络进而研究复杂系统的有效途径.社区发现的研究历史可以追溯到1927年, Rice 等基于投票模式的相似性发现小的政治团体中的社区[1]. 早期的研究工作大部分都围绕非重叠社区发现展开, 此类算法将复杂网络划分成若干个互不相连的社区结构且一个节点只能隶属于一个社区[2]. 然而, 现实中网络社区之间往往是相互重叠的, 硬划分的社区发现算法无法满足需求, 例如, 在社交网络中, 如果每个社区代表拥有共同兴趣爱好的用户所组成的群体, 则一个用户可以拥有诸多兴趣爱好而隶属于多个社区,计算机系统应用 ISSN 1003-3254, CODEN CSAOBNE-mail: Computer Systems & Applications,2020,29(11):163−167 [doi: 10.15888/ki.csa.007658] ©中国科学院软件研究所版权所有.Tel: +86-10-62661041① 基金项目: 国家自然科学基金(F030810); 山东省重点研发计划(2018GGX101052)Foundation item: National Natural Science Foundation of China (F030810); Key Research and Development Program of Shandong Province (2018GGX101052)收稿时间: 2020-03-12; 修改时间: 2020-04-12, 2020-04-29; 采用时间: 2020-05-10; csa 在线出版时间: 2020-10-29163显然, 重叠的社区结构更能体现出复杂网络的特性, 进而帮助我们从中观层面对复杂系统进行分析.对复杂网络中重叠社区的发现与研究也因此成为近年来新的研究热点, 而社区发现作为社区分析相关工作的前提, 对于其他领域的研究有着重要影响. 目前,重叠社区的发现结果可以被应用于情感分析、个性化推荐、实体消歧和链接预测等领域的研究.1 相关工作近年来, 学者们相继提出大量能够识别重叠社区的算法. Palla等提出一种基于最大团的派系过滤算法CPM来分析重叠的社区结构[3], 该算法易受k值影响,且以最大团为种子的方式计算复杂度较高. COPRA算法[4]对基于标签传播的非重叠社区发现算法进行改进,在标签后面附上节点对该标签的归属系数, 以便衡量该节点包含多个社区的信息比重, 在迭代更新节点标签的过程中允许一个节点同时拥有多个标签, 以发现网络中的重叠社区, 该算法每次迭代的时间复杂度接近线性但稳定度较差. 基于链路的重叠社区发现算法首先对网络的边进行聚类, 然后通过收集链路社区内的所有连接的节点进行社区划分, 代表算法为LINK 算法[5]. 在此基础上, Li等[6]提出一种基因表示模型,通过将链路社区映射成节点社区的方式, 实现对重叠节点的发现. 基于局部社区优化和扩展的方法则从局部社区出发, 基于优化函数进行扩张, 社区间的交叉部分则为重叠节点, 代表算法为LFM算法[7], 除此之外, Su等[8]提出利用随机游走策略扩展优化的方法. 文献[9]在此基础上提出基于种子节点选择的重叠社区发现算法, 首先通过定义的影响力函数选取种子节点, 然后通过吸引力函数以种子节点为核心进行扩展, 发现种子所在的局部社区结构. 其中, 基于种子节点选择和扩展的算法由于稳定性好、效率高而成为主流的社区发现算法. Wang等[10]提出一种基于结构中心性的种子选择算法, 实现了一个高覆盖率的朴实算法, 提高了社区发现质量, 但算法不能很好地适用于大规模数据集. 於志勇等提出的i-SEOCD算法能够高效地从种子节点出发进行局部扩展, 最终发现稳定的重叠社区[11], 但是该算法在计算节点相似度时只考虑了局部网络, 提高算法执行效率的同时也牺牲了算法准确性.现有基于种子节点扩展的重叠社区发现算法虽然在稳定性方面表现较好, 但在衡量两节点间关系时, 往往将两节点间是否有连边作为唯一判别标准, 而只考虑狭小作用域范围内的局部信息的做法, 虽然提升了社区发现的效率, 但忽略了网络中更大范围内节点和边因素对社区发现过程的影响, 使得算法在提升效率的同时往往以牺牲部分准确性为代价. 同时, 现有算法在基于种子节点进行社区扩展的过程中, 往往需要不断地迭代计算现有社区与未划分节点间的相似性关系,计算量大, 不适合进行大规模网络的社区发现.为了更好地解决以上问题, 本文利用Node2Vec[12]算法对网络结构进行学习, 通过控制在游走产生节点序列过程中对深度优先和广度优先的趋向, 将更大范围内的拓扑结构信息体现到节点因素中, 提出了基于Node2Vec的重叠社区发现算法, 该算法能够解决现有算法存在的以牺牲准确性来提高效率和不适合大规模数据集的问题.2 基于Node2Vec的重叠社区发现算法针对以Jaccard相似度为指标衡量节点间距离的方法所存在的局限性, 本文采用网络表示学习算法学习到网络中每个节点的向量表示, 针对传统种子节点选择方法稳定性和鲁棒性差的缺点, 提出了新的种子节点选择算法, 并以此为基础进行社区扩张和优化. 2.1 Node2Vec算法Perozzi等[13]提出了将Word2Vec的思想用于图节点表示学习的Deepwalk算法, Node2Vec在此的基础上改变了随机游走的序列生成方式, 通过半监督的方式学习p, q两个超参数的值, 控制游走对深度和广度的趋向, 其中p控制跳向前节点邻居的概率, q控制跳向前节点非邻居的概率, 如图1所示.x1x3x2tVα=1α=1/qα=1/qα=1/q图1 随机游走过程图q>1x1p>1x2x3图1中, 时, 趋向于遍历临近t节点的节点,即趋向于BFS; 时, 趋向于遍历临近t节点的或节点, 即趋向于DFS. 在确定要遍历的邻居节点之后,采用skip-gram模型进行训练进而获得节点的向量表示.u v在进行种子节点发现前, 首先利用Node2Vec算法对网络结构进行学习, 在学习到网络中每个节点的向量表示后, 对于任意节点和, 可利用算法内置的相似计算机系统应用2020 年 第 29 卷 第 11 期164sim (u ,v )A n ×n A uv u v 1−sim (u ,v )度计算工具计算其在高维空间中的相似度, 其取值范围为0~1, 通过该方式进一步计算网络中任意节点之间的相似度, 并用相似度矩阵表示整个网络中节点间的相似度信息, 其中表示节点和之间的相似度, 进而可以用来表示节点间的相异度.2.2 种子节点选择算法G =(V ,E )通常, 一个网络可以用无向图表示, 其中V 表示图中n 个节点的集合, E 表示图中m 条边的集合.在网络中, 节点u 的邻居集合N(u)定义如下:N (u )={u :v ∈V ,(u ,v )∈E }(1)节点u 对节点v 的影响力用F(u,v)表示如下:F (u ,v )=D (u )D (v )(1−sim (u ,v ))2(2)sim (u ,v )1−sim (u ,v )其中, D (u )和D (v )分别表示节点u 和v 的度, 表示u , v 节点的相似度, 可通过Node2Vec 生成的节点向量计算得到, 表示为两节点间的距离, 距离越远, u 对v 的影响力越小.节点u 的影响力值通过以下公式计算得到:F (u )=∑v ∈N (u )D (u )D (v )(1−sim (u ,v ))2(3)节点影响力的大小与其邻居节点的数量、度数以及相异度有关, 影响力越大, 节点越有机会成为种子节点.在种子节点选择算法中, 首先根据节点的向量计算所有节点的影响力值, 如果某节点的影响力值比其所有邻居节点的影响力值都大, 则将该节点加入到种子节点的集合中. 算法1中列出了种子节点选择算法的伪代码, 其中2–4行利用定义的节点影响力计算公式计算出每个几点的影响力值, 5–9行将每个节点的影响力值与其所有邻居的影响力值进行比较, 若邻居节点中没有比当前节点影响力值大的节点, 则将该节点加入到种子节点集合中.算法1. 种子节点选择算法G =(V ,E )A n ×n 输入: 无向图; 相似度矩阵.输出: 种子节点集合S.S ←∅1. u ∈V2. for do3. 利用式(3)计算F(u)4. end for ∈5. for u V do∀v ∈N (u )F (u )≥F (v )6. if and S ←S ∪u 7. 8. end if 9. end for 10. return S2.3 社区扩展算法ε针对现有算法在社区扩张过程中重复计算量大的问题, 本文在得到分布均匀、影响力大的种子节点之后, 充分利用前一阶段计算所得的节点相似度矩阵, 从每个种子节点出发进行社区扩展, 首先, 以集合中的每个种子节点为核心构建社区, 若节点与种子节点的相似度大于阈值, 则将该节点划入该种子节点所属的社区, 然后, 对于尚未被划分的节点, 比较其与各个种子节点的相似度, 选取与之最相似的种子节点, 加入其所在社区, 最终完成社区的划分.εε算法2中列出了社区扩展算法的伪代码, 2–4行首先将所有节点标记为false, 5–13行分别以每个种子节点为核心进行社区扩展, 并将被划分的节点标记为true,此过程中以各节点为核心的社区独立进行扩展, 能够很好地根据阈值的大小控制重叠节点的规模, 阈值越小, 发现重叠节点的几率越大, 14–19行将一轮划分结束后没有归属的节点分离出来, 20–25行则对标记为false 的节点进行处理, 选择与之相似度最高的种子节点所在的社区作为其社区归属, 最终经过两个阶段的处理, 得到最终的社区.算法2. 社区扩展算法G =(V ,E )A n ×n 输入: 无向图; 相似度矩阵; 种子集合S.输出: 社区结构C.C ←∅1. u ∈V2. for doLabel (u )=false 3. 4. end for5. for seed in S doCS ←∅,CS ←CS ∪{seed }6. u ∈V u S 7. for and A [seed ][u ]≥ε8. if CS ←CS ∪{U }Label (u )=true 9. ,10. end if 11. end for C ←C ∪CS 12. 13. end for R ←∅14. 15. for node in VLabel (node )=false16. if R ←R ∪{node }17. 18. end if 19. end for R20. for v in 21. for seed in SA [seed ][v ]22. CS_num = argmax 23. end forCS ←CS ∪{v }Label (v )=true 24. , 2.5 end for 26. return C2020 年 第 29 卷 第 11 期计算机系统应用165εεk ×n 2×k ×n k n k <<n O (n )O (n log n )通常情况下, 选择合适的阈值能够使得大部分节点经过第一阶段的处理能够划入相应的社区, 阈值越小, 需要进行第二阶段处理的节点越少, 但也会导致社区之间重叠度很高. 本文在基于种子节点进行社区扩展的过程中, 充分利用前阶段的计算结果, 将迭代更新的过程简化成了寻址过程, 完美状态下, 只需进行次计算即可完成社区检测, 最坏情况下, 则需进行次计算, 其中表示种子节点个数, 表示网络中节点的个数, 且二者间满足, 总体复杂度为,优于现有的时间复杂度为的社区扩展算法.综上, 基于Node2Vec 的重叠社区发现算法整体流程大致分为以下3个步骤:n ×n 首先, 利用NodeVec 算法对网络结构进行学习, 得到包含丰富拓扑结构信息的节点的向量表示, 基于节点向量值计算每对节点间的相似度, 用一个阶矩阵来表示网络结构中所有n 个节点间的相似度值.然后, 利用前一阶段计算得到的节点相似度, 根据定义的节点影响力公式筛选出能够独立领导社区的种子节点集合.最后, 以种子节点为核心, 分阶段进行社区扩展,首先通过比较每个种子节点与所有非种子节点间相似度与给定阈值的大小关系初步扩展社区, 然后对于未被划分的节点, 选择与之相似度最大的种子节点, 划入其所属社区, 直至所有节点都有至少一个社区归属, 重叠社区检测完毕.3 实验为验证算法的相关性能, 在多个不同规模的真实数据集上与其他经典重叠社区发现算法进行对比实验, 待比较的算法分别是CPM 、LINK 、COPRA 和LFM 算法.3.1 实验数据集分别选取不同类型不同数量级的5个真实网络数据集, 具体包括美国空手道俱乐部网络Karate [14]、海豚关系网Dolphins [15]、大学生足球联赛网络Football [16]、欧洲研究机构电子邮件网络Email-EU [17]和高能物理范畴论文引用关系网Ca-HepPh [18], 各网络规模如表1.3.2 评价指标由于社区划分没有标准的结果, 对于真实数据集,Newman 提出的模块度函数[19]被广泛认可, 但该评价标准并不能很好地适用于重叠社区, Shen 等在此基础上提出了能衡量重叠社区划分结果的重叠模块度函数[20],定义如下:EQ =12m ∑i ∑u ∈c i,v ∈c i1Q u Q v [A uv −k u k v2m](4)m A k u u Q u u 其中, 表示网络中的总边数, 为网络的邻接矩阵,为节点的度数, 表示节点所属的社区数量.表1 真实数据情况表数据集节点边Karate 3478Dolphins 62159Football 115616Email-EU 100525 571Ca-HepPh12 008118 5213.3 实验结果εεεh =0.1ε本文提出的算法在基于种子节点进行社区扩展时,社区划分结果易受阈值大小的影响, 故首先在不同数据集上在不同阈值的指引下进行社区划分, 通常情况下阈值的取值范围为0.3~0.7, 取步长进行实验,社区划分结果随阈值大小改变而变化的情况如图20.550.500.450.400.350.300.300.350.400.450.500.550.600.650.70E Q 值Karate Dolphins Football Email-EU Ca-HepPh阈值图2 重叠模块度随阈值变化图ε=0.5ε从图2可以看出, 在不同数据集上, 模块度总是在左右的位置取到峰值, 这也说明阈值对划分结果的影响趋势在所有数据值上是大致相当的.ε=0.5将本文算法与其他4个经典的重叠社区发现算法在不同规模不同类型的数据集上进行对比实验(阈值取), 结果如表2所示.在大多数数据集上, 本文算法均取得了最高的模块度值, 尤其是在Emai-EU 和Ca-HepPh 两个大规模的数据集上, 分别取得了接近0.5和0.4重叠模块度值,所发现的社区质量明显优于其他算法, 实验证明, 使用Node2Vec 算法将更大作用域范围内的网络信息映射到节点向量中的方式, 能够有效地避免范围限制所带来的准确率方面的牺牲, 提升社区发现质量, 在规模大、结构复杂的网络上, 提升效果格外显著.计算机系统应用2020 年 第 29 卷 第 11 期166表2 真实数据集对比结果表算法Karate Dolphins Football Email-EU Ca-HepPh CPM 0.1870.3620.5600.3750.292Link 0.1590.0030.0100.1130.132COPRA 0.3420.4820.4850.4030.328LFM 0.3170.3450.5720.4310.363本文算法0.4150.4840.5630.4940.3924 结论与展望本文提出了一种基于Node2Vec 的重叠社区发现算法, 首先获得网络结构的向量表示并计算节点之间的相似度值, 利用定义的影响力函数选择出种子节点,然后以每个种子节点为核心进行社区扩张. 本文选取了不同类型不同规模的真实网络数据集, 并在这些数据集上将本文算法与其他类经典重叠社区发现算法进行对比性实验, 实验结果表明, 本文算法在大部分数据集尤其是大规模数据集上表现出了明显的优势. 后续工作将提高算法的性能, 降低算法复杂度, 并将算法应用到动态社区发现研究中.参考文献Rice SA. The identification of blocs in small political bodies.American Political Science Review, 1927, 21(3): 619–627.[doi: 10.2307/1945514]1骆志刚, 丁凡, 蒋晓舟, 等. 复杂网络社团发现算法研究新进展. 国防科技大学学报, 2011, 33(1): 47–52. [doi: 10.3969/j.issn.1001-2486.2011.01.011]2Palla G, Derényi I, Farkas I, et al . Uncovering the overlapping community structure of complex networks in nature and society. Nature, 2005, 435(7043): 814–818. [doi:10.1038/nature03607]3Gregory S. Finding overlapping communities in networks by label propagation. New Journal of Physics, 2010, 12(10):103018. [doi: 10.1088/1367-2630/12/10/103018]4Ahn YY, Bagrow JP, Lehmann S. Link communities reveal multiscale complexity in networks. Nature, 2010, 466(7307):761–764. [doi: 10.1038/nature09182]5Li MM, Liu J. A link clustering based memetic algorithm for overlapping community detection. Physica A: Statistical Mechanics and its Applications, 2018, 503: 410–423. [doi:10.1016/j.physa.2018.02.133]6Lancichinetti A, Fortunato S, Kertész J. Detecting the overlapping and hierarchical community structure in complex networks. New Journal of Physics, 2009, 11(3): 033015.[doi: 10.1088/1367-2630/11/3/033015]7Su YS, Wang BJ, Zhang XY. A seed-expanding method based on random walks for community detection in networks8with ambiguous community structures. Scientific Reports,2017, 7: 41830. [doi: 10.1038/srep41830]齐金山, 梁循, 王怡. 基于种子节点选择的重叠社区发现算法. 计算机应用研究, 2017, 34(12): 3534–3537, 3568. [doi:10.3969/j.issn.1001-3695.2017.12.003]9Wang XF, Liu GS, Li JH. Overlapping community detectionbased on structural centrality in complex networks. IEEEAccess, 2017, 5: 25258–25269. [doi: 10.1109/ACCESS.2017.2769484]10於志勇, 陈基杰, 郭昆, 等. 基于影响力与种子扩展的重叠社区发现. 电子学报, 2019, 47(1): 153–160. [doi: 10.3969/j.issn.0372-2112.2019.01.020]11Grover A, Leskovec J. Node2Vec: Scalable feature learningfor networks. Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. San Francisco, CA, USA. 2016. 855–864.12Perozzi B, Al-Rfou R, Skiena S. DeepWalk: Online learningof social representations. Proceedings of the 20th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. New York, NY, USA. 2014. 701–710.13Zachary WW. An information flow model for conflict andfission in small groups. Journal of Anthropological Research,1977, 33(4): 452–473. [doi: 10.1086/jar.33.4.3629752]14Lusseau D, Schneider K, Boisseau OJ, et al . The bottlenosedolphin community of doubtful sound features a large proportion of long-lasting associations. Behavioral Ecology and Sociobiology, 2003, 54(4): 396–405. [doi: 10.1007/s00265-003-0651-y ]15Girvan M, Newman MEJ Newman. Community structure insocial and biological networks. Proceedings of the National Academy of Sciences of the United States of America, 2002,99(12): 7821–7826. [doi: 10.1073/pnas.122653799]16Yin H, Benson AR, Leskovec J, et al . Local higher-ordergraph clustering. Proceedings of the 23rd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. Halifax, Nova Scotia, Canada. 2017. 555–564.17Leskovec J, Kleinberg J, Faloutsos C. Graph evolution:Densification and shrinking diameters. ACM Transactions on Knowledge Discovery from Data, 2007, 1(1): 2. [doi:10.1145/1217299.1217301]18Newman MEJ, Girvan M. Finding and evaluating communitystructure in networks. Physical Review E, 2004, 69(2):026113. [doi: 10.1103/PhysRevE.69.026113]19Shen HW, Cheng XQ, Cai K, et al . Detect overlapping andhierarchical community structure in networks. Physica A:Statistical Mechanics and its Applications, 2009, 388(8):1706–1712. [doi: 10.1016/j.physa.2008.12.021]202020 年 第 29 卷 第 11 期计算机系统应用167。
一种新的基于标签传播的重叠社区发现算法
一种新的基于标签传播的重叠社区发现算法摘要摘要:发现高质量的社区是社区网络问题的研究热点。
目前,社区发现算法大多针对非重叠社区,重叠社区发现算法较少。
基于标签传播的算法是现有重叠社区发现算法中的一类,其中COPRA为典型算法。
尽管该算法具有接近线性的时间复杂度,但存在随机因素,结果不稳定,产生的社区结构存在一定差异。
为此,提出一种新的基于标签传播的社区发现算法,实验表明该算法在复杂度相近的情况下能明显提高所发现社区的质量,且具有较好的稳定性。
关键词关键词:社区发现;重叠社区;标签传播;稳定性DOIDOI:10.11907/rjdk.1431038中图分类号:TP312文献标识码:A文章编号文章编号:16727800(2015)0040059041重叠社区及其发现算法近年来,复杂网络研究受到广泛关注,主要涉及系统科学、统计物理学、社会科学、生物学等多个领域[1]。
随着通信和互联网技术的快速发展,人们发现众多网络都存在社区结构[2]这一特征。
所谓社区结构,简单来说,就是网络中的节点存在分组,一般组内的边连接比较稠密,而组间的边连接比较稀疏。
社区结构在一定程度上可以反映出真实网络的拓扑关系。
社区发现可以帮助更好地理解网络拓扑结构及其功能,从而更好地利用和改造网络,例如挖掘网络中的未知功能、控制疾病传播等。
社区发现在某些特定应用环境中也有现实意义,例如发现恐怖分子、寻找犯罪团体等。
然而,真实网络存在一些同时属于多个社区的节点,这些节点叫作“重叠节点”,与其它社区存在重叠节点的社区就叫作“重叠社区”。
例如在社会关系网络中,小王既参加了台球俱乐部,又参加了乒乓球俱乐部,那么小王就是这两个社区的重叠节点,台球俱乐部和乒乓球俱乐部是两个重叠社区。
重叠社区较之非重叠社区具有更好的现实意义:一方面,重叠节点是网络中关键点,重叠社区因此而产生联系;另一方面,重叠社区反映了更加真实的网络结构。
因此,研究重叠社区更符合真实网络的结构。
基于节点映射的核型企业重叠社群发现算法
( College of Economics and Management, Shanghai Maritime University, Shanghai 201306, China)
Abstract: As most existing enterprise community discovery algorithms focus on homogenous market environment, without reflecting the participation of some enterprises in multiple supply chain operations, a core community representation model based on node mapping relationship, Map-Community, was proposed. By constructing two different role nodes and their different mapping relationships, the ownership community of a enterprise was determined. Based on this representation model, Node Mapping Algorithm ( NMA) with approximately-linear time-space complexity was proposed. Firstly, filtering operation was used to obtain the biconnected core graph in the topology diagram of the supply chain network. Secondly, mapping degree was introduced to select the core enterprise nodes. Thirdly, local expansion was performed according to the mapping judgment rules. Finally, the local community structure was extended to the global network by backtracking and overlapping areas were discovered. In the LFR ( Lancichinetti-Fortunato-Radicchi) network application experiment, NMA shows low sensitivity to threshold change and is superior to LFM ( Local Fitness Maximization) , COPRA ( Community Overlap PRopagation Algorithm) and GCE ( Greedy Clique Expansion) in terms of practicality. Simulation was carried out in the enterprise social network, and the meaning of distribution effect was summarized by the community division. The experimental results verify the feasibility of this algorithm for overlapping enterprise community discovery and its performance advantages in discovery quality.
基于核心节点扩散的有向网络重叠社团发现算法
点。 节 点的有 向中心度受节点 的出入度影 响. 主要受到 节点的入度影响 。 为 了找 出中心度高 的节点 。 我们引入
有 向 中心 度 :
C ,  ̄C i + ( 1 ) c .
其 中, c t r t 为节点 的人度 c 为节点的出度 , 为权
,
重 参数 , 用 于 调 整 出入 度 在有 向 中心 度 中 的权 重 。
与节点之 间的关 系 、信息在 网络 中的传 播 以及 预测 网 络的未来 发展具有很高 的现实意义 。 随后 , 越来 越多的
算 法 被 提 出并 且 应 用 到 复 杂 网络 的社 团 发 现 . 包 括 K—
1 基 本 概 念 及 定 义
1 . 1 有 向中心度
有 向网 络 中 . 节 点 的有 向 中心 度 大 . 则 代 表 节 点 处
现代计算机 2 0 1 4 . 1 1中
1 , 2 有 向优化适应度 函数 f ( G j )
有 向优化适 应度 函数 f ( G i ) 用 于判断 一个 节点 加
入 社 团 G 后 对 社 团 的影 响 程 度 。根 据 社 团 内部 连 接 紧
扩散合 并 , 不断 合并对有 向优化适应度 函数厂 ( G ) 影 响
现实 中的很 多网络如社会关 系网络 、科 研合作 网络等
也 已被 证 明符 合 复 杂 网络 的特 征 。 自 2 0 0 1 年G N 算 法 的 提 出 .复 杂 网 络 的 社 团 结 构 开 始 得 到 广 泛 的关 注 和
研 究 复杂 网络的社团结构发现对 于研究 网络 中节点
2 . 2 算 法 过 程
输入 : 网络 G = ( 。 E ) , 权 重 参 数 = 0 . 5 , 分 辨 率 函 数 = 1 。
社区发现算法总结(二)
社区发现算法总结(⼆)原⽂出处派系过滤CPM⽅法(clique percolation method)⽤于发现重叠社区,派系(clique)是任意两点都相连的顶点的集合,即完全⼦图。
在社区内部节点之间连接密切,边密度⾼,容易形成派系(clique)。
因此,社区内部的边有较⼤可能形成⼤的完全⼦图,⽽社区之间的边却⼏乎不可能形成较⼤的完全⼦图,从⽽可以通过找出⽹络中的派系来发现社区。
k-派系表⽰⽹络中含有k个节点的完全⼦图,如果⼀个k-派系与另⼀个k-派系有k-1个节点重叠,则这两个k-派系是连通的。
由所有彼此连通的k-派系构成的集合就是⼀个k-派系社区。
由所有彼此连通的k-派系构成的集合就是⼀个k-派系社区。
⽹络中会存在⼀些节点同时属于多个k-派系,但是它们所属的这些k-派系可能不相邻,它们所属的多个k-派系之间公共的节点数不⾜k-1个。
这些节点同属的多个k-派系不是相互连通的,导致这⼏个k-派系不属于同⼀个k-派系社区,因此这些节点最终可以属于多个不同的社区,从⽽发现社区的重叠结构。
所以CPM的过程是⾸先寻找⽹络中极⼤的完全⼦图(maximal-cliques),然后利⽤这些完全⼦图来寻找k-派系的连通⼦图(即 k-派系社区),不同的k值对应不同的社区结构。
找到所有的k-派系之后,可以建⽴这些派系的重叠矩阵(clique overlap matrix)。
在这个对称的矩阵中,每⼀⾏(列)代表了⼀个派系,矩阵中的⾮对⾓线元素代表两个连通派系中共享的结点的数⽬。
对⾓线元素代表派系的规模。
将⼩于k-1的⾮对⾓线元素置为0,⼩于k的对⾓线元素置为1,得到k-派系连接矩阵,每个连通部分构成了⼀个k-派系社区。
由于k是个输⼊参数值,从⽽k的取值将会影响CMP算法的最终社区发现结果,当k取值越⼩社区将会越⼤,且社区结构为稀疏。
但是实验证明k的取值影响不是很⼤,⼀般k值为4到6。
然⽽,由于该算法是基于完全⼦图,因此CPM⽐较适⽤于完全⼦图⽐较多的⽹络,即边密集的⽹络,对于稀疏⽹络效率将会很低,且该算法还⽆法分配完全⼦图外的顶点。
基于节点重要性与相似性的重叠社区发现算法
人工智能及识别技术
计算机工程 ""
&"'()*+,-./0.++,0./
$%&' 年 # 月 1+(*+'2+,$%&'
文 章 编 号 !"""#$%&'&"!'"(#"!(&#"O) ) ) 文 献 标 志 码 *) ) ) 中 图 分 类 号 +,$"!-.
中文引用格式付"饶&孟凡荣&邢 " 艳$基 于 节 点 重 要 性 与 相 似 性 的 重 叠 社 区 发 现 算 法 ( 9) $计 算 机 工 程&$%&'& !!!#" *&#$6&#'$ 英文引用格式 QG I?"& 3-%4 Q?.,"./& UF%4 <?.$@C+,#?((0./ 8"'').0*> B0H8"C+,> ?#/",0*=' 2?H+B ". ."B+ 0'(",*?.8+?.B H0'0#?,0*>( 9) $&"'()*+,-./0.++,0./&$%&'&!!!#" *&#$6&#'$
基于节点重要性和局部扩展的重叠社区发现算法
Zachary 空手道俱乐部人员关系图上对各个节点的
重要性排序结果。
2.2.2
隶属度
DOCNet 算法采用节点到社区各点的平均距离
值来衡量节点对该社区的归属度,算法运算过程需
要计算两个节点间的最短距离,处理节点数较多的
初始社区 C;2)对 LR 进行遍历,通过式(6)依次计
算 C 的边界邻节点对 C 的隶属度大小,用 Bldegree
erated network and the real network,and compared with four overlapping community discovery algorithms. The experimental results
show that this algorithm has better accuracy and stability in the community structure division with more nodes.
郭
第 48 卷
峰等:基于节点重要性和局部扩展的重叠社区发现算法
e uω 为节点 u 与社区 C 中节点的连边数,e uφ 为节点
识图中节点重要性上有很好的性能。
u 与社区 P 中连边数。
2.3
算法描述
基于局部扩展的核心思想,文中有效地改善了
DocNet 算法的局限之处。算法主要分为三个步骤:
1)通过 LeaderRank 算法获取图中所有节点的重要
DOCLLE。首先采用经典重要性排名算法 LeaderRank 对节点重要性进行排序,选取出重要性最高的节点及其邻节点组成初
始社区。另外结合局部相似度概念重新定义节点隶属度,最后通过质量函数将符合标准的节点加入到已有社区。算法在人
遗传算法优化在重叠社区发现中的应用研究
遗传算法优化在重叠社区发现中的应用研究近年来,随着社交网络的广泛应用与普及,重叠社区发现的研究逐渐成为了学术和工业界的热门话题。
重叠社区发现是指在一个网络中同时存在多个社区,即一个节点可以属于多个社区,这也是与传统社区发现的最大区别。
而在这个过程中,遗传算法优化的应用也在这个领域内逐渐被人们所看重。
遗传算法是一种优化算法,其原理是基于遗传学中的进化论思想,从一组个体中筛选出适者生存的过程。
其通过选择、交叉和变异的操作,在种群内逐渐演化出适应度更高的个体,从而优化目标函数。
而重叠社区发现就可以将其看做“目标函数”,因此,遗传算法的优化能力也为重叠社区发现的研究提供了新的可能性。
在重叠社区发现中,最常用的方法是基于模块度的聚类算法。
而在使用遗传算法进行优化时,需要将模块度作为适应度函数。
通常,遗传算法的具体步骤为:初始化一组种群,通过后代生成产生下一代种群,最终搜索到拥有最大适应度值的个体。
具体来说,就是将社区划分问题看做是一个组合优化问题,然后使用遗传算法来解决这个问题。
目前,重叠社区发现的研究已经取得了很大的进展,而遗传算法优化在其中的应用研究也有了一些成果。
一些研究者通过与传统聚类算法的比较,证明了遗传算法在优化重叠社区发现问题上的优势。
比如,在2012年,Li等人在一篇论文中提出了基于遗传算法的模糊聚类算法,通过实验发现,该算法比传统的模糊聚类算法更能有效地发现重叠社区。
在2015年,Zhang等人也提出了基于遗传算法的社区发现算法,并在通过实验验证了其优化效果。
但是,在将遗传算法应用于重叠社区发现时,存在着一些需要注意的问题。
首先,遗传算法的优化结果很大程度上依赖于染色体编码方式的选择。
不同的编码方式对优化效果产生不同的影响,因此,如何选择合适的编码方式成为了一个重要的问题。
其次,遗传算法的参数设置也会对优化效果产生影响,如种群大小、交叉率、变异率等等,需要通过试验来确定合适的参数设置,才能更好地进行优化。
基于最大生成树的重叠社区发现算法
收稿日期:2019⁃11⁃23;修回日期:2020⁃02⁃17㊀㊀作者简介:郭娜(1994⁃),女(通信作者),河南南阳人,硕士研究生,主要研究方向为数据挖掘㊁复杂网络社区发现(372491036@qq.com);郑晓艳(1974⁃),女(蒙古族),内蒙古赤峰人,副教授,硕导,博士,主要研究方向为数据挖掘㊁复杂网络社区发现㊁分布式计算.基于最大生成树的重叠社区发现算法郭㊀娜†,郑晓艳(天津职业技术师范大学信息技术工程学院,天津300222)摘㊀要:挖掘复杂网络的重叠社区结构对研究复杂系统具有重要的理论和实践意义㊂针对局部扩展算法(localfit⁃nessmethod,LFM)随机选取种子节点造成的社区结果鲁棒性较低等问题,提出了一种基于最大生成树的重叠社区发现算法:提出一种新颖的边权重定义,将无权的网络转换为带权重的网络,而且该权重真实反映了网络真实结构;提出一种节点影响力计算方法,反映节点在整个网络结构中的重要程度;提出了一种新的生成候选种子集的方法,并借助最大生成树使得到的候选种子节点在网络中更具有代表性;对初始社区划分结果进行优化,避免社区之间重叠度过多㊂经仿真实验发现,该算法与经典的重叠社区发现算法相比,无论在真实网络还是LFR人工网络上,均有良好的表现㊂关键词:复杂网络;社区发现;重叠社区;边权;最大生成树0㊀引言现实中的很多系统都可以用复杂网络来描述㊂复杂网络中的节点可表示为复杂系统中的个体,节点之间的边是系统中个体之间按照某种规则而自然形成的一种关系,如现实世界中的社交网络[1]㊁技术网络㊁生物网络㊁交通网络[2]等㊂大量实证研究表明,许多网络是异构的,即复杂网络不是一大批性质相同的节点随机地连接在一起,而是许多类型节点的组合㊂类型相同的节点之间的连接紧密,而类型不同的节点之间的连接稀疏,把同一类型的节点以及这些节点之间的边所构成的子图称为社区[3]㊂在复杂网络搜索和发现社区,有助于人们理解和开发网络,具有重要的社会价值,由此出现了许多社区发现算法㊂目前大多数算法将一个节点仅归属到一个社区㊂然而在现实中,事物具有多样性的特点,一种事物往往可归属到不同的类别中,一个节点可属于多个社区,社区间必定存在重叠的现象㊂所以越来越多的研究者致力于重叠社区结构的研究[4 6]㊂目前的社区发现算法主要包括分级聚类算法和图形分割算法两大类㊂前者是将具有相似性的一类节点归为同一个社区,通过添加或删除边的方法,可以将分级聚类算法分为凝聚算法[7,8]和分裂算法[9,10],如GN算法和Newman快速算法;后者通常有派系过滤算法(cliquepercilationmethod,CPM)[11]和Kernighan⁃Lin算法等㊂文献[12]提出的分裂算法已经成为研究网络社区结构的著名算法,并取得了一系列创新型成果[13]㊂Palla等人[11]基于凝聚原理,于2005年提出了派系过滤算法,开启了重叠社区发现的大门,成为当时社区挖掘的前沿㊂这种算法通过寻找网络中的极大完全子图来发现社区,但在处理稍大规模的网络时耗时较大,并且对极大子图之外的节点无法判定归属㊂随后在2009年,Lancichinetti等人[14]提出一种基于局部适应度的重叠社区发现算法LFM,它也属于凝聚算法,其主要思想是随机选取种子节点,不断扩展能够使社区适应度增益最大的节点,得到种子节点所在的社区集合㊂搜索过程中,任意节点可以被多次访问,所以会出现一些节点㊂归属于多个社区的情况,从而发现重叠社区结构㊂另外它通过设置参数α的大小,用于控制发现社区的规模,发现社区的层次结构㊂但是由于种子节点是随机选取的,可能会出现划分结果不稳定的情况;如果初始种子节点位于稀疏网络的重叠区域,则会出现社区漂移现象;在局部扩展过程中,为了获得最大增益,会有删除节点的操作,可能出现将初始种子节点删除的可能,使得扩展过程不再围绕种子节点,失去社区结构的局部特点㊂针对LFM算法的一些不足,Lee等人[15]又提出一种以极大团作为初始种子节点进行扩展的社区发现算法GCE,其在扩展过程中,采用贪心策略逐步添加增益最大的邻居节点,直到适应度函数不再增大为止㊂但是算法寻找极大子图的代价比较高,而且最终会有一些没有社区归属的节点㊂2013年,Chen等人[16]提出了一种基于局部中心节点的社区发现算法,根据局部中心节点生成社区㊂2014年,刘阳等人[17]提出一种基于边界节点识别的复杂网络局部社区发现算法,通过边界节点识别控制社区范围,给定节点的社区归属㊂2015年,Li等人[18]提出基于谱方法的局部社区发现算法㊂这些方法都只考虑了网络的拓扑结构,认为网络中的每一条边都具有相同的权重㊂而在现实世界中,个体之间的联系强弱是有差别的,网络中统一的边权重并不能反映网络的真实结构㊂而后,一些学者考虑将社区定义为一些相似度高的节点集合㊂2017年,Liu等人[19]提出一种基于节点对相似性的局部社区发现算法㊂2019年,文献[20]提出了一种基于结构紧密性的社区发现算法㊂针对以上所述的问题,本文提出了一种基于最大生成树的局部扩展算法用于发现重叠社区,主要创新有以下几点:a)提出一种新颖的边权重定义,将无权的网络转换为带权重的网络,权重真实反映了网络真实结构;b)提出一种节点影响力计算方法,反映节点在整个网络结构中的重要程度;c)提出了一种新的生成候选种子集的方法,使得到的候选种子节点在网络中更具有代表性;d)对初始社区结果进行优化,避免了社区之间重叠度过高的情况㊂实验结果显示,与另外两种经典的重叠社区发现算法相比,无论在真实数据集还是在人工数据集上,本文算法的准确率和鲁棒性都有明显的提高㊂1㊀相关定义1.1㊀基本概念可将复杂网络建模成图G(V,E),其中V是节点的非空有限集,V={v1,v2,v3, ,vn},n是网络中节点的个数;E是边的非空有限集合,E={v1,v2,v3, ,vm},m是网络中的边数㊂所以n=|V|,m=|E|㊂N(v)表示在图G中节点V的相邻节点集合;kv=|N(v)|表示节点的度,即与节点v相邻的节点集合中的元素总数㊂经典三元闭包原则指出:如果x和y二人拥有共同的好友a,那么x和y将有很大可能成为好友,从而形成闭包的三角形xya㊂将其推广到复杂网络中:如果两个节点的公共邻居节点越多,那么这两个节点就会越相似,节点间的连接强度越大,如图1所示㊂可以将节点间相似性作为衡量节点连接强度的一个指标㊂Jaccard系数[21]的定义为J(Vi,Vj)=|N(Vi)ɘN(Vj)||N(Vi)ɣN(Vj)|(1)在一般的无权无向网络中,用邻接矩阵A来描述节点之间的连接关系,两个节点Vi和Vj之间有边相连,对应邻接矩阵A[i][j]的值为1,若无连边,那么值为0㊂使用这种传统的邻接矩阵虽然能够很好地表达网络的结构,但是在某种程度上,它并不能真实㊁具体地反映节点间的连接强度㊂就好比在科研合作网络中,各个研究者之间合作的论文数量是不一样的,合作的次数越多,研究者的联系更紧密㊂复杂网络节点间的联系强度很大程度上会影响网络的结构,所以本文提出一种节点间的边权重模型,用来描述节点间的连接强度,反映更真实的网络结构,应用到之后的社区发现过程中㊂1.2㊀边权重模型复杂网络中,用边权重来表示节点间的连接强度㊂设e=uvɪE,A=N(u)ɣN(v),B=N(u)ɘN(v),其中e为网络G的边集E中的任意一条边,集合A是一条边两个顶点的邻居节点集的并集,集合B是两个节点的邻居节点集构成的交集㊂|E(A)|(|E(B)|)的大小在一定程度上反映了其在对应子图的连接强度,因为相对于社区而言,子图内部的边数要高于子图外部㊂通过式(2),能够生成一个带权图G∗㊂Wuv=2|E(A)||A|(|A|-1)+2|E(B)||B|(|B|-1)㊀∃uvɪE(G)0¬∃uvɪE(G)ìîíïïïï(2)㊃071㊃计算机应用研究2020年㊀1.3㊀最大生成树一个连通且不存在回路的图称为树,如果图G的生成子图T是树,则称T为G的生成树,一个加权的最大生成树是G的具有最大权值的生成树㊂例如,图2是我国北方某地区城市高速公路交通图,边上的权值代表该路线的车流量㊂因为雨雪天气,需要及时清理路上的积雪,所以首先要考虑清理这个城市车流量大的道路的积雪,才能够确保整个交通网络快速地恢复良好的通行㊂因为考虑到种子节点位于网络中的关键位置,所以本文考虑用最大生成树来简化网络结构,提取出网络结构中影响力较大边的集合,为下一步计算节点的影响力做铺垫㊂本文使用克鲁斯卡尔算法来生成带权网络G∗的最大生成树T㊂1.4㊀节点影响力假设树T(V,E)中,对任意一个节点v,它的影响力定义为在树T中与节点v相连的边的权重之和,为I(v)=ð{u|uvɪE(T)}ωuv(3)节点影响力也是衡量网络集团化的重要参数,节点在网络中的连边越多㊁连边的边权重越大,会使节点在整个网络中的局部聚集性越高,地位越关键,成为干扰点和离散点的概率越小㊂1.5㊀社区适应度给定图G=(V,E),社区C⊂G,社区C的适应度函数为F{C}=Ckin(Ckin+Ckout)α(4)其中:C代表当前的社区;Ckin和Ckout分别代表当前社区内部节点的度之和与当前社区中每个节点与网络其他部分相连的边数;α是控制社区规模的参数㊂F{C}反映了社区内连接强度和社区与外部网络连接强度的相对关系,该值越大,代表当前社区的社区结构越明显㊂1.6㊀添加节点适应度给定图G=(V,E),社区C⊂G,节点v是社区C的邻居集中的节点㊂将F({C}+v)的计算代入式(4)㊂式(5)表示在相同的参数α的情况下,当前社区加入节点v时社区适应度的改变量㊂由于社区适应度一定程度上反映了社区内部与社区间的连接强度,所有只有F(v+C)为正值的邻居节点才能加入到当前社区中㊂F(v+C)=F({C}+v)-F({C})(5)1.7㊀删除节点适应度给定图G=(V,E),社区C⊂G,节点v是社区C中的节点㊂F({C}-v)的计算代入式(4)㊂式(6)表示在相同的参数α的情况下,删除当前社区节点v时社区适应度的改变量㊂由于社区适应度一定程度上反映了社区内部与社区间的连接强度,所以F(v-C)为负值的节点需要从当前社区删除㊂F(v-C)=F({C})-F({C}-v)(6)1.8㊀社区重叠度对于初始社区集合{c1,c2, ,ck}中的任意两个社区Ca和Cb,社区重叠度定义为θ(Ca,Cb)=|CaɘCb|min(|Ca|,|Cb|)(7)其中:θ(Ca,Cb)表示社区Ca和Cb的重叠度,取值为[0,1],值越大,说明重叠度越大㊂2㊀算法思想与分析基于最大生成树的重叠社区发现算法主要包括生成候选种子集㊁生成初始社区划分结果㊁社区优化三个阶段:a)根据提出的边权重模型,将无权网络转换为加权网络,生成加权网络的最大生成树,得到原始网络中节点的影响力排序结果,得到候选种子集;b)按影响力排序结果选择种子,生成围绕该种子的适应度最大的社区,当所有社区构造完成之后,即得到初始社区划分结果;c)针对初始社区划分结果,将重叠度较大的社区之间进行合并㊂2.1㊀候选种子集针对随机选取种子节点造成算法结果鲁棒性较低的情况,考虑计算网络中各个节点的影响力,让网络中具有代表性且具有高影响力的节点作为种子节点㊂通常,这类节点在最终生成的社区子图拓扑的中心位置,选取这类节点作为网络中的种子节点,能够使算法以尽可能少的迭代次数获得社区划分㊂具体步骤如下:算法1㊀候选种子集生成算法输入:G=(V,E)㊂输出:candidate={v1,v2, ,vn}㊂1㊀initialize,letcandidate=⌀2㊀foreuvɪE3㊀㊀caculatewuv4㊀generateWuv5㊀generateG∗=(V,E,W)useWuv6㊀T=Kruskal(G∗)7㊀forviinT8㊀㊀caculateI(vk)9㊀rankallvkinnon⁃increasingorder㊀㊀//按影响力排序,即I(v1)ȡI(v2)ȡ ȡI(vn)10㊀returnresultcandidate={v1,v2, ,vn}2.2㊀生成初始社区集合在生成社区阶段,本文采用最大化社区适应度函数的方法对种子节点进行扩展,以期能得到当前种子节点附近的社区适应度最大的集合㊂在该阶段,通过批量扩展社区,使当前社区适应度最大;此后,考虑逐个删除某个节点,使社区适应度最大㊂算法具体步骤如下:算法2㊀初始社区集生成算法输入:G=(V,E),candidate={V1,V2, ,Vn},社区规模参数α㊂输出:C={C1,C2, ,Cn}㊂1㊀whilecandidateʂ⌀do2㊀㊀forvifromcandidateinorder3㊀㊀candidateѳcandidate-{v}4㊀㊀CkѳCkɣ{v}5㊀㊀updateNsetofCk,calculateF{C}usingeq(4).㊀㊀㊀//Ck为当前社区集合,Nset为当前社区的邻居集6㊀㊀whileNsetʂ⌀do7㊀㊀㊀fornodeɪNset8㊀㊀㊀㊀M=⌀9㊀㊀㊀㊀caculateF(C+node)10㊀㊀㊀ifF(C+node)>011㊀㊀㊀㊀㊀MѳMɣ{node}12㊀㊀㊀CkѳCkɣM13㊀㊀endwhile14㊀㊀whileCkʂ⌀do15㊀㊀㊀forvɪCk,calculateF(C-V)16㊀㊀㊀ifF(C-V)<017㊀㊀㊀㊀CkѳCk-{v}18㊀㊀endwhile19㊀㊀letCiѳCk,candidate=candidate-Ck20㊀㊀k=k+121㊀endwhile2.3㊀社区结果优化重叠社区发现算法可以允许不同的两个社区包含若干个公共节点,所以得到的初始社区之间存在一定的相似性㊂但如果两个社区的重叠性过高,会出现过度重叠的现象,需要对重叠度过高的社区进行合并㊂算法描述如下:算法3㊀社区优化算法输入:C={C1,C2, ,Cn};重叠度阈值为0.4㊂输出:{C1,C2, ,Cm}㊂1㊀forCainC2㊀㊀forCbin{Ca+1,Ca+2, ,Cn}3㊀㊀㊀caculateθ(Ca,Cb)4㊀㊀㊀ifθȡ0.45㊀㊀㊀㊀Ca={CaɘCb}6㊀㊀㊀㊀removeCb3㊀评价3.1㊀实验数据3.1.1㊀真实数据本文采用多个不同规模的经典真实数据集测试,如表1所示㊂3.1.2㊀LFR人工数据集如今LFR(LancichinettiFortunatoRadicchi)基准网络[26]被认为是社区检测的标准测试网络,其特征在于节点度和社区规模的非均匀性分布㊂可以用LFR生成一个合成网络,这种基准图拥有真㊃171㊃㊀第37卷增刊郭㊀娜,等:基于最大生成树的重叠社区发现算法㊀㊀㊀实网络的特征,即节点度和社区规模都具有异质性㊂网络结构由如下的可调参数控制:N为生成网络的节点个数;k为网络节点的平均度;kmax为最大度;t1为度分布的指数;t2为社区大小分布的指数;cmin为最小社区顶点个数;cmax为最大社区的顶点个数,mu为混合参数,其取值在(0,1)㊂每一个顶点在社区内部的边是其度数的μ-1倍,而与外部社区顶点相连的边是其度的μ倍㊂表2是合成的人工数据集㊂表1㊀真实数据集参数数据集点数边数社区数说明karate[22]34782空手道俱乐部网络dolphins[23]621592海豚社会关系网络lesmis[24]772564‘悲惨世界“人物关系网络football[25]11561312美国大学生橄榄球联赛网络polbooks1054413美国政治书网络netscience[1]15892742-科学家合作网络表2㊀LFR人工数据集参数参数D1D2D3网络顶点数N100100100 1000平均度k444最大度kmax101010混合参数mu0.10.10.1度分布指数t1222社区大小分布指数t2111最小社区顶点数cmin566最大社区顶点数cmax303030重叠节点数On105 2010重叠节点所属社区数Om2 5323.2㊀评价指标3.2.1㊀模块度(EQ)最早Chauset等人[27]提出了模块度函数Q,成为评价非重叠社区的重要指标,被许多研究人员广泛使用㊂针对重叠社区的模块度评价,使用Shen等人[28]提出的公式,表示为EQ=12mðiðvɪCi,wɪCi1OvOwAvw-kvkw2méëêêùûúú(8)其中:v㊁w是同一个社区的两个节点;m是网络G的总边数;k是网络中包含的总的社区数量;Ov代表节点v所属的社区数量;Avw是图G邻接矩阵A的元素㊂当网络中社区内部链接越紧密而社区之间连接越稀疏的时候,EQ的值就越大,算法划分的效果就越好,EQ的取值在[0,1]㊂计算模块度时,并不需要与网络已知的社区结构对照,因为大多数网络的社区结构是未知的,所以与其他评价指标相比,模块度的适用范围更广,所以本文主要使用重叠社区模块度作为评价指标㊂3.2.2㊀标准互信息(NMI)本文用标准互信息来评估人工网络的社区划分质量,最早是由Lancichinetti改进了适用于重叠社区的标准互信息[29],但由于该方法在两种划分结果的社区数量差异较大时,会出现对两个集群相似性评价过高的情况㊂为了避免这种情况,使标准互信息指标更合理,本文用文献[30]提出的标准互信息评价标准㊂NMI=12[H(X)+H(Y)-H(X|Y)-H(Y|X)]max(H(X),H(Y))(9)其中:H(X)和H(Y)为随机变量X和Y的信息熵;H(X|Y)和H(Y|X)为随机变量X㊁Y的条件熵㊂3.3㊀实验条件本文算法和参照实验的另外两种算法均存在一些可变参数;在LFM算法中,参数α控制在0.6 1,通过多次实验将α调整到最合适的值,使衡量指标达到最大值㊂另外,由于LFM算法结果随机性较大,随机选取10次运行结果的平均值作为其结果㊂在本文算法中,设置的α参数与LFM算法相同,另外重叠度阈值设置为0.45㊂在CPM算法中,全耦合网络节点数k设置为3㊂3.4㊀实验结果由图3可知,本文算法要优于另外两种算法,对于大部分真实网络,本文算法相对于LFM和CPM算法具有更高的模块度和更高的稳定性,得到的划分结果更接近于真实网络㊂本文算法的指标明显高于CPM算法㊂另外,在算法质量优于LFM的情况下,具有高鲁棒性,避免LFM算法稳定性很低的情况,也不会出现种子随机选取陷入死循环的情况㊂图4中用到的网络是人工生成的LFR人工基准网络D1,随着逐渐增大Om,使重叠节点可以隶属多个社区㊂从图中可以明显地看出,不管在哪个网络中,本文算法都要明显优于另外两种算法,具有相对较高的模块度㊂从整体上来看,这三种算法随着Om的增大,模块度的大小在逐渐下降㊂主要的原因是不同算法在Om和社区数量上表现不同㊂图5中用到的网络是人工生成的LFR人工基准网络D2,分别设置不同的On,使网络的重叠节点比例不断增大㊂从图中可以明显地看出,随着网络中重叠节点的增多,三种算法的模块度指标整体呈现出下降的趋势,但是无论网络中重叠节点的比例有多大,本文算法的模块度指标始终优于另外两种算法㊂图6中用到的网络是人工生成的LFR人工基准网络D3,网络中的节点个数N设为100 1000㊂很显然,对于这种中小规模网络,随着网络中节点数目的增多,算法的模块度指标整体出现增长趋势最终呈现出稳定趋势;而且,无论哪种规格的网络,本文算法的模块度始终是最高的㊂从图中可以看到,在社区规模为700时,三种算法的模块度指标均达到峰值㊂图7是在真实数据集上的标准互信息,明显可以看出,本文算法划分结果与真实的划分结果更加接近㊂4㊀结束语本文提出了一种基于最大生成树的重叠社区发现算法,首先针对现实网络中边可能带有表示连接紧密程度的权重,将无权网络转换为带权网络;进而结合生成树算法,获得网络中节点的影响力排名,得到候选种子集;然后根据社区适应度最优策略生成初始社区,最终通过社区优化得到社区划分结果㊂分别在真实网络和人工网络上的实验显示了本文算法较另外两种重叠社区发现算法而言,具有更高的稳定性和准确率㊂参考文献:[1]NewmanMEJ.Thestructureofscientificcollaborationnetworks[J].ProceedingsoftheNationalAcademyofSciencesoftheUnitedStatesofAmerica,2001,98(2):404⁃409.[2]谭红叶,吴永科,张虎,等.面向复杂有权网络的社区发现方法研究[J].中文信息学报,2018,32(8):111⁃119.[3]SchweitzerF,FagioloG,SornetteD,etal.Economicnetworks:thenewchallenges[J].Science,2009,325(5939):422⁃425.[4]ShahmoradiMR,EbrahimiM,HeshmatiZ,etal.Multilayeroverlap⁃pingcommunitydetectionusingmulti⁃objectiveoptimization[J].Fu⁃tureGenerationComputerSystems,2019,101:221⁃235.[5]TengXiangyi,LiuJing,LiMingming.Overlappingcommunitydetec⁃tionindirectedandundirectedattributednetworksusingamultiobjec⁃tiveevolutionaryalgorithm[J/OL].IEEETransonCybernetics,2019.http://doi.org/10.110q/tcyb.2019.2931983.[6]李东,程鸣权,徐杨,等.基于平均互信息的最优社区发现方法[J].中国科学:信息科学,2019,49(5):613⁃629.[7]NewmanMEJ,GirvanM.Findingandevaluatingcommunitystruc⁃tureinnetworks[J].PhysicalReviewE,2004,69(2):026113.[8]RadicchiF,CastellanoC,CecconiF,etal.Definingandidentifyingcommunitiesinnetworks[J].ProceedingsoftheNationalAcade⁃myofSciences,2004,101(9):2658⁃2663.(下转第180页)已经有研究者基于Spark内存计算框架开展了生物大数据处理与分析方面的工作,但是研究尚不成熟,其中需要解决的一个关键问题是串㊁并行处理结果如何保持一致,二者存在差异的原因是什么㊂本文实验结果表明,在串并行TopHat执行序列比对方面二者存在约0.03% 2.3%的差异,其原因尚不明确,是后续值得进一步研究的内容;在检测显著差异表达基因/转录本方面,串并行Cufflinks能够取得约88%的一致性,这对于评价本文所提出的并行方案的结果的可靠性具有重要意义㊂在基于Spark或MapReduce平台对传统串行软件进行并行化改写或调用的过程中,由于串行软件自身效率不高而使得并行效率难以充分提升,这个瓶颈问题有待今后进一步研究解决㊂致谢㊀感谢西北农林科技大学园艺学院管清美教授提供的拟南芥RNA⁃seq数据㊂参考文献:[1]DecapD,ReumersJ,HerzeelC,etal.Halvade:scalablesequenceanalysiswithMapReduce[J].Bioinformatics,2015,31(15):2482⁃2488.[2]DecapD,ReumersJ,HerzeelC,etal.Halvade⁃RNA:parallelvari⁃antcallingfromtranscriptomicdatausingMapReduce[J].PLoSONE,2017,12(3):e0174575.[3]PandeyRV,SchlottererC.DistMap:atoolkitfordistributedshortreadmappingonaHadoopcluster[J].PLoSONE,2013,8(8):e72614.[4]杨晓亮.MapReduce并行计算应用案例及其执行框架性能优化研究[D].南京:南京大学,2012.[5]林子雨.大数据技术原理与应用:概念㊁存储㊁处理㊁分析与应用[M].2版.北京:人民邮电出版社,2017:174⁃175.[6]YangA,TroupM,LinPeijie,etal.Falco:aquickandflexiblesin⁃gle⁃cellRNA⁃seqprocessingframeworkonthecloud[J].Bioinforma⁃tics,2017,33(5):767⁃769.[7]AbuínJM,PichelJC,PenaTF,etal.SparkBWA:speedingupthealignmentofhigh⁃throughputDNAsequencingdata[J].PLoSONE,2016,11(5):e0155461.[8]KleinM,SharmaR,BohrerCH,etal.Biospark:scalableanalysisoflargenumericaldatasetsfrombiologicalsimulationsandexperimentsusingHadoopandSpark[J].Bioinformatics,2017,33(2):303⁃305.[9]ZouQuan,HuQinghua,GuoMaozu,etal.HAlign:fastmultiplesimilarDNA/RNAsequencealignmentbasedonthecentrestarstrategy[J].Bioinformatics,2015,31(15):2475⁃2481.[10]WanShixiang,ZouQuan.HAlign⁃II:efficientultra⁃largemultiplese⁃quencealignmentandphylogenetictreereconstructionwithdistributedandparallelcomputing[J].AlgorithmsforMolecularBiology,2017,12(9):articleNo.25.[11]TrapnellC,RobertsA,GoffL,etal.DifferentialgeneandtranscriptexpressionanalysisofRNA⁃seqexperimentswithTopHatandcufflinks[J].NatureProtocols,2012,7(3):562⁃578.[12]WassersteinRL,LazarNA.TheASAstatementonp⁃values:con⁃text,process,andpurpose[J].TheAmericanStatistician,2016,70(2):129⁃133.[13]AbuinJM,PichelJC,PenaTF,etal.BigBWA:approachingtheBurrows⁃Wheeleralignertobigdatatechnologies[J].Bioinformatics,2015,31(24):4003⁃4005.[14]KimD,LangmeadB,SalzberSL.HISAT:afastsplicedalignerwithlowmemoryrequirements[J].NatureMethods,2015,12(4):357⁃360.(上接第165页)[6]ZhuZ,CaoS.Back⁃steppingslidingmodecontrolmethodforquadro⁃torUAVwithactuatorfailure[J].JournalofEngineering,2019,2019(22):8374⁃8377.[7]OkyereE,BousbaineA,PoyiGT,etal.LQRcontrollerdesignforquadrotorhelicopters[J].JournalofEngineering,2019,2019(17):4003⁃4007.[8]余润芝,赵文龙,程若发.四旋翼飞行器的神经网络PID控制算法研究[J].现代电子技术,2019,42(10):108⁃112.[9]李砚浓,李汀兰,姜艺,等.基于RBF神经网络自适应PID四旋翼飞行器控制[J].控制工程,2016,23(3):378⁃382.[10]RosalesC,TosettiS,SoriaC,etal.NeuralAdaptivePIDcontrolofaquadrotorusingEFK[J].IEEELat⁃inAmericaTrans,2018,16(11):2722⁃2730.[11]刘金锟.先进PID控制MATLAB仿真[M].4版.北京:电子工业出版社,2016.(上接第172页)[9]FortunatoS,LatoraV,MarchioriM.Amethodtofindcommunitystructuresbasedoninformationcentrality[J].PhysicalReviewE,2004,70(5):056104.[10]ClausetA,NewmanMEJ,MooreC.Findingcommunitystructureinverylargenetworks[J].PhysicalReviewE:StatisticalNonlinearandSoftMatterPhysics,2004,70(6):066111.[11]PallaG,DeranyiI,FarkasI,etal.Uncoveringtheoverlappingcom⁃munitystructureofcomplexnetworksinnatureandsociety[J].Na⁃ture,2005,435(7043):814⁃818.[12]MarkNewmanEJ.Thestructureandfunctionofnetworks[J].Com⁃puterPhysicsCommunications,2002,147(1):40⁃45.[13]NewmanMEJ.Thestructureandfunctionofcomplexnetworks[J].SIAMReview,2003,45(2):167⁃256.[14]LancichinettiA,FortunatoS,KerteszJ.Detectingtheoverlappingandhierarchicalcommunitystructureincomplexnetworks[J].NewJour⁃nalofPhysics,2009,11(3):033015.[15]LeeC,ReidF,McdaidA,etal.Detectinghighlyoverlappingcom⁃munitystructurebygreedycliqueexpansion[C/OL]//ProcofInterna⁃tionalConferenceonPaperPresentedatSNA⁃KDDWorkshop.Wash⁃ington,NJ:ACMPress,2010.(2010⁃02⁃09)[2010⁃06⁃15].https://arxiv.xilesou.top/abs/1002.1827.[16]ChenQiong,WuTingting,FangMing.Detectinglocalcommunitystructuresincomplexnetworksbasedonlocaldegreecentralnodes[J].PhysicaA:StatisticalMechanicsandItsApplications,2013,392(3):529⁃537.[17]刘阳,季新生,刘彩霞.一种基于边界节点识别的复杂网络局部社区发现算法[J].电子与信息学报,2014,36(12):2809⁃2815.[18]LiYixuan,HeKun,BindelD,etal.Uncoveringthesmallcommunitystructureinlargenetworks:alocalspectralapproach[EB/OL].(2015⁃09⁃25).https://arxiv.org/abs/1509.07715.[19]LiuJinglian,WangDaling,ZhaoWeiji,etal.Aunifiedframeworkoflightweightlocalcommunitydetectionfordifferentnodesimilaritymeasurement[C]//ProcofChineseNationalConferenceonSocialMediaProcessing.Singapore:Springer,2017:283⁃295.[20]潘剑飞,董一鸿,陈华辉,等.基于结构紧密性的重叠社区发现算法[J].电子学报,2019,47(1):147⁃154.[21]LuLinyuan,ZhouTao.Linkpredictionincomplexnetworks:asurvey[J].PhysicaA:StatisticalMechanicsandItsApplications,2011,390(6):1150⁃1170.[22]ZacharyWW.Aninformationflowmodelforconflictandfissioninsmallgroups1[J].JournalofAnthropologicalResearch,1976,33(4):452⁃473.[23]LusseauD,SchneiderK,BoisseauOJ,etal.Thebottlenosedolphincommunityofdoubtfulsoundfeaturesalargeproportionoflong⁃lastingassociations[J].BehavioralEcology&Sociobiology,2003,54(4):396⁃405.[24]KnuthDE.TheStanfordGraphBase:aplatformforcombinatorialcomputing[M].NorkYork:ACMPress,1993.[25]GirvanM,NewmanMEJ.Communitystructureinsocialandbiologi⁃calnetworks[C]//ProcofNationalAcademyofSciencesoftheUnitedStatesofAmerica.2002.[26]LancichinettiA,FortunatoS.Benchmarksfortestingcommunityde⁃tectionalgorithmsondirectedandweightedgraphswithoverlappingcommunities[J].PhysicalReviewE,2009,80(1):016118.[27]ClausetA,NewmanMEJ,MooreC.Findingcommunitystructureinverylargenetworks[EB/OL].(2004⁃08⁃30).http://doi.org/10.1103/physreve.70.066111.[28]ShenH,ChengX,CaiK,etal.Detectoverlappingandhierarchicalcommunitystructureinnetworks[J].PhysicaA:StatisticalMe⁃chanicsanditsApplications,2009,388(8):1706⁃1712.[29]LancichinettiA,FortunatoS,KerteszJ.Detectingtheoverlappingandhierarchicalcommunitystructureincomplexnetworks[J].NewJour⁃nalofPhysics,2009,11(3):033015.[30]McdaidAF,GreeneD,HurleyN.Normalizedmutualinformationtoevaluateoverlappingcommunityfindingalgorithms[EB/OL].(2013⁃08⁃02).https://arxiv.org/abs/1110.2515.。
基于节点尺度特征的重叠社区检测算法
基于节点尺度特征的重叠社区检测算法张黎烁;高继勋【摘要】针对社会网络中重叠社区检测问题,在节点尺度特征下量化社区结构,用这些特性更易界定社区划分.利用合理假设来量化节点尺度的期望值,基于节点描述符集和谱算法建立算法模型,从而提出一种重叠社区检测算法.该方法允许节点同时属于多个社区,在社区重叠时同样可行.通过计算验证,算法对于整体边缘密度都有效.在2类网络中实验的结果表明,该算法在重叠社区检测中性能稳定、准确性高,能适用于目标特定的社区概念.【期刊名称】《河南理工大学学报(自然科学版)》【年(卷),期】2016(035)005【总页数】7页(P706-712)【关键词】重叠社区检测;社会网络;节点尺度;边缘描述符集;自我中心网【作者】张黎烁;高继勋【作者单位】河南工程学院计算机学院,河南郑州451191;河南工程学院计算机学院,河南郑州451191【正文语种】中文【中图分类】TP391现实生活中许多系统都以网络形式体现,如社会关系网络、通信网络、生物体系网络等。
为便于分析系统内部结构,网络系统可用图论相关模型表示。
用节点表示系统中的个体,边表示个体间连接关系。
系统中具有相同或相似特征节点形成的节点组可看作网络社区。
网络社区内部节点连接相对紧密,社区间连接相对稀疏。
由于不同结构社区表示不同的概念,社区检测并非是单一问题,因此,社区可表述为一个相关问题的集合[1]。
现有的社区检测算法利用已知网络信息发现社区特征。
Evans等[2]认为社区不能简单地用节点定义,而是在节点之间的连接定义时,提出了利用边聚类算法来划分网络中的边。
Palla等[3]提出了集团渗流算法(Clique Percolation Method),把节点及边的集合称为集团。
作为集团成员,节点充当“原子”角色,从而组建社区这一“分子”。
集团提供了表示社区结构局部特征的一种方式,这些局部特征利用文献[3]中的“渗流”过程来分割社区。
集团渗流算法通过自我中心网(Egonet)得到每一个节点的近邻节点集,这个节点称为自我中心节点。
一种基于节点分裂的重叠社区发现算法
基于节点属性的重叠社区发现算法改进
基于节点属性的重叠社区发现算法改进王梦迪;付顺顺【期刊名称】《通信技术》【年(卷),期】2018(051)001【摘要】复杂网络越来越多地应用到各个领域,而在复杂网络中存在着一定的社区结构,社区发现的目标就是从无标记的网络中发现具有相似功能的节点组合.分析基于社区隶属模型AGM的重叠社区发现算法的特点及机理,讨论节点属性对社区发现的可能影响,通过节点属性来调整节点对社区的隶属情况和节点之间生成边的概率,获得更合理的社区隶属指标和对应的社区划分.真实数据集上的实验表明,改进后的算法能够提高采样效率.%Complex network is increasingly applied to various fields. However, there exists certain community structure in complex network. The goal of community discovery is to find similar nodes with similar functions from the non-mark network. The overlapping community based on the community membership model AGM is analyzed, and the characteristics and mechanisms of the algorithm thus found, and the possible impact of node properties on community discovery also discussed. Through node attribute, the node's membership of the community and the probability of the generated edges of nodes are adjusted to get a more reasonable community membership index and the corresponding community partition. Experiments on real data sets indicate that the Modified algorithm could improve the sampling efficiency.【总页数】6页(P128-133)【作者】王梦迪;付顺顺【作者单位】中国人民公安大学信息技术与网络安全学院,北京 100038;中国人民公安大学信息技术与网络安全学院,北京 100038【正文语种】中文【中图分类】O157.5【相关文献】1.基于网络节点中心性度量的重叠社区发现算法 [J], 杜航原;王文剑;白亮2.基于种子节点选择的重叠社区发现算法 [J], 齐金山;梁循;王怡3.基于节点重要性与相似性的重叠社区发现算法 [J], 付饶;孟凡荣;邢艳4.基于节点重要性和局部扩展的重叠社区发现算法 [J], 郭峰;尤凯丽;李昕泽5.基于节点亲密度的标签传播重叠社区发现算法 [J], 梁世娇;柴争义因版权原因,仅展示原文概要,查看原文内容请购买。
重叠社区发现算法评价指标综述
重叠社区发现算法评价指标综述
韩红旗;徐紫燕;李琳娜;周则旭
【期刊名称】《计算机技术与发展》
【年(卷),期】2024(34)5
【摘要】重叠社区发现算法对于理解复杂系统、发现复杂网络中隐藏的规律等具有很强的应用价值,而评价指标是算法发现高质量重叠社区的一个关键要素,算法的进步常常依赖于评价指标的进步。
现有研究对非重叠社区发现算法的评价指标有较多的总结,而没有对重叠社区发现算法的评价指标进行总结。
对重叠社区发现算法的评价指标进行了系统的总结和回顾,将指标分为事先知道社区结构、事先不知道社区结构和其它三大类。
事先知道社区结构的评价指标包括基于混淆矩阵、基于ARI、基于NMI三个子类评价指标,事先不知道社区结构的评价指标包括基于模块度、基于密度、基于元数据三个子类评价指标,其它类主要介绍算法可扩展性评价指标。
深入理解各种评价指标对于开发和优化重叠社区发现算法、在实际应用中发现高质量社区具有重要价值。
【总页数】9页(P1-9)
【作者】韩红旗;徐紫燕;李琳娜;周则旭
【作者单位】中国科学技术信息研究所;富媒体数字出版内容组织与知识服务重点实验室(国家新闻出版署)
【正文语种】中文
【中图分类】TP301.6
【相关文献】
1.大规模社交网络重叠社区发现技术综述
2.基于社区森林模型的分布式重叠社区发现算法
3.一种基于节点影响力的重叠社区发现算法
4.融合节点影响力与多标签传播的重叠社区发现算法
5.动态重叠社区发现算法研究与实现
因版权原因,仅展示原文概要,查看原文内容请购买。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
O v e r l a p p i n gc o m m u n i t yd e t e c t i o na l g o r i t h mb a s e do ns e l e c t i o no f s e e dn o d e s
1 , 2 1 1 Q i J i n s h a n ,L i a n gX u n ,Wa n gY i
第3 4卷第 1 2期 2 0 1 7 年1 2月㊀
计 算 机 应 用 研 究 A p p l i c a t i o nR e s e a r c ho f C o m p u t e r s
V o l . 3 4N o . 1 2 D e c . 2 0 1 7
基于种子节点选择的重叠社区发现算法
A b s t r a c t :I nv i e wo f t h e u n r e a s o n a b l e s e l e c t i o n i n s e e d a l g o r i t h mf r o mt h e l o c a l c o m m u n i t y e x p a n d i n g i n t o a g l o b a l c o m m u n i t y ,t h i s p a p e r p r o p o s e da no v e r l a p p i n g c o m m u n i t y d e t e c t i o na l g o r i t h mb a s e do ns e l e c t i o no f t h e s e e dn o d e s .T h e a l g o a t p r e s e n t r i t h mu s e dt h e i n f l u e n c e f u n c t i o nt o f i n do u t t h e s t r o n g e s t n o d e s i nl o c a l n o d e i n f l u e n c e s ,w h i c hs t r u c t u r e dt h e s e e d s d i s t r i b u t i n gt h r o u g h o u t t h en e t w o r k .A n dt h e nu t i l i z e dt h e s es e e d s t oc o n s t r u c t t h ei n i t i a l c o m m u n i t y ,s e l e c t i v e l ya d d e dn o d e s t oe x p a n dt h ec o m m u n i t y a c c o r d i n g t o t h e s e t a t t r a c t i o nf u n c t i o n .T h e e x p e r i m e n t a l r e s u l t s s h o wt h a t t h ea l g o r i t h mt e s t e di nar e a l n e t w o r kc a ne f f e c t i v e l y d i g o u t o v e r l a p p i n g c o m m u n i t y i nt h e n e t w o r k . K e yw o r d s :o v e r l a p p i n gc o m m u n i t y ;l o c a l c o m m u n i t y ;a t t r a c t i o nf u n c t i o n ;c o m m u n i t y e x p a n s i o n
( 1 . S c h o o l o f I n f o r m a t i o n ,R e n m i nU n i v e r s i t y o f C h i n a ,B e i j i n g 1 0 0 8 7 2 ,C h i n a ; 2 . S c h o o l o f C o m p u t e r S c i e n c e &T e c h n o l o g y ,H u a i y i nN o r m a l U n i v e r s i t u 2 2 3 3 0 0 ,C h i n a )
描述所发现的社区的优劣, 基本思想是基于社区内部的节点连
㊀引言
现实世界许多复杂的系统如人际关系网、 科学家合作网、 流行病传播网、 蛋白质相互合作网等都可以抽象为复杂的网 络。网络的模块化是指复杂网络中的节点具有聚簇化的特点, 其表现形式为模块结构, 即社区结构。它是指网络由若干个团 或是群组成, 每个团内部节点的连接相互紧密, 而不同团之间 的连接相互稀疏。社区发现的目的就是挖掘复杂网络中的这 种团结构, 进而实现更深入的应用研究, 如社会网络动态演变、 异质网络分析、 个性化推荐、 大规模网络压缩求解等。 目前有关社区发现的方法大致可分为两类, 第一类是非重 叠社区发现方法, 此类方法将复杂网络划分为若干个彼此互不 相连的社区结构, 各节点只归属于其中的一个社区。具体又可 分为: a ) 层次聚类方法, 通过给定网络的拓扑结构定义网络节 点间的相似性或距离, 然后采用单连接层次聚类或全连接层次 聚类将网络节点组成一个树状图层次结构, 根据实际需求横切 树状图, 获得社区结构, 代表性算法有文献[ 1 ] 提出的算法; b ) 谱聚类方法, 该方法源于图的划分问题, 其目标是找到一种切 割方法, 使得切割最少的边就可以将节点分割为不相交的集 2 ] 提出的算法, 类似的算法还包括文 合, 代表性算法有文献[ 献[ 3 5 ] ; c ) 模块度优化方法则是采用模块化评价函数 Q来
, 2 齐金山1 ,梁㊀循1,王㊀怡1
( 1 . 中国人民大学 信息学院,北京 1 0 0 8 7 2 ; 2 . 淮阴师范学院 计算机科学与技术学院,江苏 淮安 2 2 3 3 0 0 ) 摘㊀要:针对目前从局部社区扩展成全局社区时有关算法的种子节点选择不合理的情形, 提出了一种基于种子 节点选择的重叠社区发现算法。首先根据影响力函数找出局部影响力最大的节点, 由这些节点构成的种子集合 较好地分布在整个网络中, 然后以这些种子点构造初始社区, 根据设定的吸引度函数选择性地添加节点来进行 社区扩展。实验结果表明, 该算法在真实网络上进行测试时能够有效地挖掘网络中的重叠社区。 关键词:重叠社区;局部社区;吸引度函数;社区扩展 中图分类号:T P 3 0 1 . 6 ㊀㊀㊀文献标志码:A ㊀㊀㊀文章编号:1 0 0 1 3 6 9 5 ( 2 0 1 7 ) 1 2 3 5 3 4 0 4 : 1 0 . 3 9 6 9 / j . i s s n . 1 0 0 1 3 6 9 5 . 2 0 1 7 . 1 2 . 0 0 3 d o i