- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一种新基于标签传播重叠社区发现算法
一种新的基于标签传播的重叠社区发现算法
摘要摘要:发现高质量的社区是社区网络问题的研究热点。目前,社区发现算法大多针对非重叠社区,重叠社区发现算法较少。基于标签传播的算法是现有重叠社区发现算法中的一类,其中COPRA为典型算法。尽管该算法具有接近线性的时间复杂度,但存在随机因素,结果不稳定,产生的社区结构存在一定差异。为此,提出一种新的基于标签传播的社区发现算法,实验表明该算法在复杂度相近的情况下能明显提高所发现社区的质量,且具有较好的稳定性。
关键词关键词:社区发现;重叠社区;标签传播;稳定性
DOIDOI:10.11907/rjdk.1431038
中图分类号:TP312
文献标识码:A文章编号
文章编号2015)004005904
1重叠社区及其发现算法
近年来,复杂网络研究受到广泛关注,主要涉及系统科学、统计物理学、社会科学、生物学等多个领域[1]。随着通信和互联网技术的快速发展,人们发现众多网络都存在社区结构[2]这一特征。所谓社区结构,简单来说,就是网络中的节点存在分组,一般组内的边连接比较稠密,而组间的边连接比较稀疏。社区结构在一定程度上可以反映出真实网络的拓扑关系。社区发现可以帮助更好地理解网络拓扑结构及其功能,从而更好地利用和改造网络,例如挖掘网络中的未知功能、控制疾病传播等。社区发现在某些特定应用环境中也有现实意义,例如发现恐怖分子、寻找犯罪团体等。
然而,真实网络存在一些同时属于多个社区的节点,这些节点叫作“重叠节点”,与其它社区存在重叠节点的社区就叫作“重叠社区”。例如在社会关系网络中,小王既参加了台球俱乐部,又参加了乒乓球俱乐部,那么小王就是这两个社区的重叠节点,台球俱乐部和乒乓球俱乐部是两个重叠社区。重叠社区较之非重叠社区具有更好的现实意义:一方面,重叠节点是网络中关键点,重叠社区因此而产生联系;另一方面,重叠社区反映了更加真实的网络结构。因此,研究重叠社区更符合真实网络的结构。
图1为非重叠社区结构, 图2为接近真实网络的重叠社区结构。目前,能够发现重叠社区结构的算法主要包括以下3类:
(1)基于clique的方法。典型算法有CPM算法[3]、EAGLE算法[6]和GCE算法[7]。
(2)基于合并社区核心和扩展社区的方法[8]。
(3)基于标签传播的方法典型算法有LPA算法[4]和COPRA算法[5]。
CPM算法是一种派系过滤算法,主要通过寻找Kclique派系社区对社区进行划分。虽然CPM能够发现重叠点,但该算法在实际应用中依赖参数K的选取,不同K值导致划分出来的社区结构有很大差别。因此,在实际应用中存在一定局限性。同样地,EAGLE和GCE算法是CPM的改进算法,存在同样的局限。
基于合并社区核心和扩展社区的算法需要人为指定两个参数,这两个参数需要先验知识,和具体网络相关并影响社区发现结果的好坏。
基于标签传播的算法是一类具有接近线性时间复杂度的算法,该算法的优点是计算过程简单,计算速度快,而它的缺点是算法稳定较差,每次运行的结果可能都不一样。本文提出一种新的标签算法,该算法对COPRA 算法的初始化过程和随机选择过程作出了改进,从而大大提高算法的稳定性。
2标签传播算法
本文重点对标签传播算法中的COPRA算法进行改进,故简要介绍标签传播思想和LPA算法,并分析COPRA算法与LPA的区别。
2.1算法思想
标签传播算法最早由zhu等[9]于2002年提出,是基于图的半监督学习方法,其基本思想是通过标记节点的标签信息预测还未标记节点的标签情况。节点之间的标签传播主要依照标签相似度来进行,在传播过程中,未标记的节点根据邻接点的标签情况来迭代更新自身的标签信息,如果其邻接点与其相似度越相近,则表示对其所标注的影响权值就越大,邻接点的标签就更容易进行传播。
图3为标签传播过程。每个顶点都有一个唯一的标签作为社区标识,对图中所有的顶点进行标签迭代更新。在迭代过程中,每个顶点标签为其邻接点中出现次数最多的节点的标签。如果多个标签的数量都是最大值,则随机选择一个作为该顶点的标签。经过若干次迭代,最终形成一个完全连通图(代表一个社区),并且该图内所有顶点都拥有相同标签。
2.2LPA算法
LPA算法基于标签传播算法思想来发现社区结构。该算法由Raghavan[4]提出,根据每个节点邻接点的社区情况来选择所要加入的社区。其主要思想是起初每个节点拥有独立的标签,每次迭代中对于每个节点将其标签更改为其邻接点中出现次数最多的标签,如果这样的标签有多个,则随机选择一个。通过迭代,直到每个节点的标签与其邻接点中出现次数最多的标签相同,则达到稳定状态,算法结
文档评论(0)