一种基于合作博弈的社区检测算法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
= A , i, j ∈ N 是复杂网络的邻接矩阵,如果节点 i 与节点 j 之间存在边,则 = aij 1, i, j ∈ N ,否则, = aij 0, i, j ∈ N ,则合作博弈的社区检测模型为 CCG = ( N , v ) ,i ∈ N 是联盟博弈参与节点。合作博弈的特
ij n× n
(a )
3. 基于合作博弈的社区检测算法
本节将阐述本文合作博弈的社区检测算法,首先介绍了相关定义及定理,包括合作博弈模型的社区 检测模型定义和高效计算 Shapley 值的迭代公式定理,然后阐述了本文算法的初检测算法和社区调整算 法,最后给出了本文合作博弈的社区检测算法伪代码并分析了算法时间复杂度。
3.1. 相关定义及定理
Keywords
The Social Network, Community Detection, Cooperative Game
一种基于合作博弈的社区检测算法

*
超,周丽华*,杨德品,龙克珍,张彩平
通讯作者。
38
一种基于合作博弈的社区检测算法
云南大学信息学院计算机科学与工程系,昆明 * Email: lhzhou@ynu.edu.cn 收稿日期:2014年8月6日;修回日期:2014年9月16日;录用日期:2014年9月30日
定 义 1 [2] 合 作 博 弈 的 社 区 检 测 模 型 。 若 N = {1, 2, , n} 是 复 杂 网 络 中 所 有 节 点 的 集 合 ,
39
一种基于合作博弈的社区检测算法
2. 相关工作
社区检测一直是复杂网络研究领域的热点问题。随着人们对复杂网络中社区检测问题深入而广泛的 研究,研究者们提出了很多社区检测算法。其中 GN 算法[3]是目前进行网络社区检测的常用算法,该算 法在中小规模的网络中能较好地检测社区。 近年来,研究者们提出了一些较新的算法,如 Zhao[4]等人提出了基于主题为导向的社区划分方法; Shi [5]等提出了多目标社区检测的算法,其实质是利用计算模块度的公式建立两个函数,将社区检测问 题转化了函数最优化问题;Tasgin [6] [7]等提出了利用遗传算法来完成社区检测,达到了较好的结果; Ahn [8]等提出了边相似度划分社区的方法,该方法能够找出重叠社区,也称之为边社区;Chen [9]等人提 出了利用社区形成博弈发现社区的算法,其主要的思想是将社区动态形成过程描述成一个策略博弈过程 (社区形成博弈),并基于 Newman 模块度函数提出了一个增益函数和一个损耗函数来反映和衡量一个节 点加入社区的得失,在这样的博弈框架下一个社区被解释成一个博弈平衡,由于一个节点可以选择多个 社区,因此 Chen 的算法可以发现重叠社区;Zhou [2]等人建立了合作博弈社区检测模型,提出了高效计 算 Shapley 值的迭代公式,并设计了一种合作博弈的凝聚层次聚类算法(GAMEHC 算法),该算法主要思 想是联盟之间相互合作,计算合作带给联盟的收益增量 ∆SH ,并每次取出增量最大的联盟之间的合作, 作为一次决策,重复上述决策过程直到所有节点成为一个社区,终止算法。该算法主要是基于合作博弈 的方法而 Chen 等人采用的是策略博弈, 是一种非合作博弈的方法。 合作博弈是一种强调团体理性的博弈, 且个体贡献的收益在团体中被最大化,这符合实际社区以收益最大化形成社区是一致的。社区形成过 程近似于合作博弈形成联盟的过程,只是如何构建合作博弈模型,如何分配收,而非合作博弈尽管在 实际社区中仍然存在,但难以体现群体形成过程和原因。因此,在文献[2]基础上提出本文基于合作博弈 的社区检测算法。
关键词
社会网络,社区检测,合作博弈
1. 引言
现实世界中的很多系统都可以用复杂网络模型来描述,复杂网络成为了跨学科的研究热点和研究复 杂系统的重要方法。社会网络是复杂网络中的一类,反映了社会成员及其相互关系。随着互联网技术的 迅猛发展,人们的生活方式呈现互联网交际、互联网消费、互联网金融或理财等特征,许多的虚拟社会 网络不断出现,如社交网(人人网、Facebook)、微博(新浪微博、Twitter)、电子商务网(淘宝、京东、亚马 逊)、微信平台等,这些虚拟社会网络聚集了大量用户[1]。用户处在网络虚拟空间中,却在真实的共享信 息和知识、讨论热点事件、交流情感及购物感受、分享生活等,他们是信息的浏览者和接受者,也是互 联网信息资源的提供者和传播者,是商品的供应者和潜在的消费者。研究这些用户形成的复杂社会网络 具有现实的意义及商业应用的价值,而社会网络中用户的大量社会行为数据被保存在网络空间中,为研 究这些大规模社会网络创造了很好的条件。社会网络研究近些年受到了国内外研究者的广泛关注,其中 社会网络中社区结构研究更是被多个学科领域所重点关注,并进行了深入探讨和研究,取得了丰硕的成 果。但由于社会网络是复杂的且规模庞大的,所以社区检测仍然是有困难的,人们依然在不断的创新并 提出新的社区检测的算法。经典的社区检测算法一般是面向结构的分析方法,但随着社会网络分析研究 的不断深入,更多的学者提出将社会网络作为一个智能网络系统,网络中的节点作为智能的社会个体, 提出了一些基于社会主体(个体)行为的方法,这样的方法分析出的社区结构,是网络中的智能个体,在不 断选择和协调的过程中形成的,符合真实社会网络的实质。本文提出的基于合作博弈的社区检测算法, 属于一种基于社会个体行为的方法。本文在文献[2]提出的合作博弈模型及高效计算 Shapley 值迭代公式 的基础上,展开研究工作,提出了一种以个体理性为核心的合作博弈的社区检测算法,算法是基于网络 中个体在不断根据自身利益的抉择及协调的过程中实现社区的检测,算法能够自动确定最终社区划分个 数且具有较好的社区检测效果及时间效率。
Hans Journal of Data Mining 数据挖掘, 2014, 4, 38-50 Published Online October 2014 in Hans. http://www.hanspub.org/journal/hjdm http://dx.doi.org/10.12677/hjdm.2014Leabharlann Baidu44006
A Community Detection Algorithm Based on Cooperative Game
Chao Cheng, Lihua Zhou*, Depin Yang, Kezhen Long, Caiping Zhang
Department of Computer Science and Engineering, Yunnan University, Kunming * Email: lhzhou@ynu.edu.cn Received: Aug. 6 , 2014; revised: Sep. 16 , 2014; accepted: Sep. 30 , 2014 Copyright © 2014 by authors and Hans Publishers Inc. This work is licensed under the Creative Commons Attribution International License (CC BY). http://creativecommons.org/licenses/by/4.0/
th th th
Abstract
With the rapid development of Internet technology, the virtual large-scale social networks are widespread. Community structure is an important characteristic of social network, mining the community structure in large-scale social networks can help us to understand the internal structure and relationships of the network, so as to better apply these networks. Therefore, community detection has important practical significance. A kind of individual rationality as the core of cooperative game community detection algorithm was proposed in this paper, which based on cooperative game community detection model and efficient iterative formula for computing the Shapley value (SH). CDCG algorithm includes initial detection and community adjustment. In the initial detection of changing the strategy environment, every node based on its own maximum SH value to make a decision, after several rounds of decisions, when all of the nodes’ SH value become balance in the network, then the initial detection ended. The characteristics of the internal tight connection of community and relatively sparse in communities, can detect the unreasonable and meaningless small clusters in step of community adjusting, then the detected cluster has obvious community features. In order to improve efficiency of the algorithm, no contribution nodes pruning and ownership nodes pruning strategies were proposed. Finally, extensive experiments show that CDCG algorithm can automatically determine the final number of divided communities, which is effective and efficiency.


随着互联网技术的迅速发展,虚拟大规模社会网络普遍存在。社区结构是社会网络的重要特征,挖掘大 规模社会网络中的社区结构能帮助人们了解网络中的内部结构和关系, 从而更好的应用这些网络。 因此, 社区检测具有重要的现实意义。本文基于合作博弈检测社区的模型及高效计算Shapley值(SH值)的迭代 公式,提出了一种以个体理性为核心的合作博弈社区检测算法(CDCG算法)。CDCG算法包括初检测和社 区调整两个步骤,初检测中每个节点在不断变化的策略环境下依据自身获得最大SH值作出决策,经过多 轮决策后,网络中所有节点的SH值达到平衡状态,初检测结束;社区调整是利用社区内部连接紧密、社 区之间连接相对稀疏的特征对初检测产生的不合理、无意义的小簇进行调整,使得检测得出的簇具有明 显的社区特征。为了提高算法时间效率,本文提出了无贡献节点剪枝策略和已归属节点剪枝策略。最后 通过大量实验验证了CDCG算法能够自动确定最终社区划分个数且具有较好的社区检测效果及时间效率。
相关文档
最新文档