欢迎访问我的个人博客: sky的技术小屋

社区发现源于计算机科学中的图形分割与社会学中的分级聚类问题。图形分割的一个实例就是集成电路板布线问题,每个组件是一个节点,有联系的两个组件之间存在一条边,要将所有组件分布在若干个电路板。由于不同电路板之间的连接相比于一块电路板内部的连接成本高的多,现在问题就是如何分配所有节点使得总成本最低。一般来说,找到这类分割问题的精确解是一个NP难题,当图的规模很大时不存在有效的精确解法。对此,著名的Kernighan-Lin算法在[4]中被提出,它引入了网络划分的一个增益函数Q,定义为两个社区内部的边数减去连接两个社区之间的边数,然后根据贪婪原理寻找使Q值最大的划分方法。之后,Dutt在[5]中对该算法进行了时间复杂度上的改进,主要针对其在每一个pass中寻找使得增益最大的节点对这个过程进行优化。谱平分法[6]是另一重要算法,它的基本思想是根据网络的Laplace矩阵的第二小的特征值将其分为两个社区,但只有在网络的确近似分成两个社区时,谱平分法才可以得到非常好的效果。文献[7]对其改进,使得可用于多个社区的划分,而文献[8]克服了需要预先指定社区数的这一缺陷。分级聚类是基于各个节点之间连接的相似性或者强度,把网络自然地划分为各个子群,主要分为两大类:凝聚方法和分裂方法。GN算法[2]就是一种分裂算法,其基本思想是,不断移除介数最大的边使得网络分解为各个子图即社区。但GN算法不知道分解到何时为止,为了解决这个问题,Newman等人提出了模块度来衡量社区划分的质量[9]。由于给出了定量化的衡量标准,把模块度作为目标函数,很自然地将分级聚类问题转化为最优化问题。快速Newman算法[10]就是最早运用该思想的,其本质是基于贪婪思想的一种凝聚算法,起始将所有节点看作不同的社区,每一步进行两两社区合并且使得模块度最优化。上述所有算法都是硬聚类,将每个节点划分为唯一的社区。但由于社区在不同应用背景下的区别,大部分场景下的社区存在重叠,能挖掘出重叠社区的算法称之为软聚类算法。Palla等人[11]首次提出重叠社区思想,运用派系过滤算法侦测网络中的k-派系来发现重叠社区结构。

随着网络规模的急剧膨胀,原有的算法无法再有效地运用。Du N等人[12]给出适用于大规模网络的社区发现算法,提出社区核(Community Kernels)的概念。如图2所示,两种颜色代表两个社区,其中右边虚线圈中的用户就是所在社区的核,核的内部连接紧密并且有大量其他节点与他们连接。运用派系过滤算法找出网络中的派系,在此基础上找出社区核集合,调整该集合使其无重叠,再将剩余节点归结到最近的社区核,从而完成所有的社区发现。Wang L等人[13]也有类似的思想,将社区分为社区核和附属社区两部分,优化了社区核的侦测环节,首先给出了GREEDY算法,但忽略了社区核和附属社区之间相连的信息,于是给出了改进的基于成对松弛的启发式WEBA算法。

社交平台的高度流行极大丰富了用户数据,用户在平台中会填写大量的个人信息,这使得节点带属性的社会网络研究成为可能。以往的社区发现仅仅考虑了网络拓扑结构,而用户属性对其社区归属也是影响巨大的,带属性网络中的社区不仅内部连接相比于社区之间连接更加紧密,并且内部节点属性大致相同。Steinhaeuser等人[14]将节点属性作为计算节点间相似度的标准之一。Zhou Y等人[15]首先将带属性的图处理为“属性增强图”,方法是把所有节点可能拥有的每个属性看作单个虚拟节点,节点拥有某个属性则增加一条边到相应虚拟节点。对于新的图,依据邻居随机游走距离给出任意两节点之间的距离度量,用K-Medoids算法进行聚类。

人际关系的复杂性决定了社会网络的动态变化性,因此动态网络中的社区的演化也是研究的热点。Bródka等人[16, 17]以时间社交网络为研究对象,定义了两个社区之间的包含度以及节点重要度,提出GED算法来推算社区的7种变化:形成、扩展、分裂、收缩、合并、分解和保持不变。

对于异构网络LBSN中的社区发现,是目前以及将来研究的一大热点。Brown等人[18]认为LBSN中社区概念:同一社区的用户在线下更有可能居住相近位置,通过用户签到记录计算用户之间交互程度,移除交互程度小的边,从而得到社区。Wang Z等人[19]将用户的签到记录看作用户的属性,从中抽取了5个特征用于衡量用户之间的相似性,再对聚类算法K-means适当修改发现社区,同时也提出边分割算法处理噪声数据,如那些偶尔的签到记录。

[1]       http://zh.wikipedia.org/wiki/社区

[2]      Girvan M, Newman M E J. Community structure insocial and biological networks[J]. Proceedings of the National Academy ofSciences, 2002, 99(12): 7821-7826.

[3]      Fortunato S, Castellano C. Community structurein graphs[M]. Computational Complexity. Springer New York, 2012: 490-512.

[4]     B. W. Kernighan and S. Lin, “Anefficient heuristic procedure for partitioning graphs", Bell System Tech. Journal, vol. 49, Feb. 1970, pp. 291-307.

[5]     Dutt S.New faster kernighan-lin-type graph-partitioning algorithms[C]. Computer-AidedDesign, 1993. ICCAD-93. Digest of Technical Papers. 1993 IEEE/ACM InternationalConference on. IEEE, 1993: 370-377.

[6]     Pothen A,Simon H D, Liou K P. Partitioning sparse matrices with eigenvectors ofgraphs[J]. SIAM Journal on Matrix Analysis and Applications, 1990, 11(3):430-452.

[7]     Wu F,Huberman B A. Finding communities in linear time: a physics approach[J]. TheEuropean Physical Journal B-Condensed Matter and Complex Systems, 2004, 38(2):331-338.

[8]     CapocciA, Servedio V D P, Caldarelli G, et al. Detecting communities in largenetworks[J]. Physica A: Statistical Mechanics and its Applications, 2005,352(2): 669-676.

[9]     Newman ME J, Girvan M. Finding and evaluating community structure in networks[J].Physical review E, 2004, 69(2): 026113.

[10]  Newman M E J. Fast algorithm for detectingcommunity structure in networks[J]. Physical review E, 2004, 69(6): 066133.

[11]  Palla G, Derényi I, Farkas I, et al. Uncoveringthe overlapping community structure of complex networks in nature andsociety[J]. Nature, 2005, 435(7043): 814-818.

[12]  Du N, Wu B, Pei X, et al. Community detectionin large-scale social networks[C]. Proceedings of the 9th WebKDD and 1stSNA-KDD 2007 workshop on Web mining and social network analysis. ACM, 2007:16-25.

[13]  Wang L, Lou T, Tang J, et al. Detectingcommunity kernels in large social networks[C]. Data Mining (ICDM), 2011 IEEE11th International Conference on. IEEE, 2011: 784-793.

[14]  Steinhaeuser K, Chawla N V. Community detectionin a large real-world social network[M]. Social Computing, Behavioral Modeling,and Prediction. Springer US, 2008: 168-175.

[15]  Zhou Y, Cheng H, Yu J X. Graph clustering basedon structural/attribute similarities[J]. Proceedings of the VLDB Endowment,2009, 2(1): 718-729.

[16] BródkaP, Saganowski S, Kazienko P. Group evolution discovery in social networks[C]. Advancesin Social Networks Analysis and Mining (ASONAM), 2011 International Conferenceon. IEEE, 2011: 247-253.

[17]  Bródka P, Saganowski S, Kazienko P. GED: the method forgroup evolution discovery in social networks[J]. Social Network Analysis andMining, 2013: 1-14.

[18]  Brown C, Nicosia V, Scellato S, et al.The importance of being placefriends: discovering location-focused onlinecommunities[C]. Proceedings of the 2012 ACM workshop on Workshop on onlinesocial networks. ACM, 2012: 31-36.

[19]  Wang Z, Zhou X, Zhang D, et al. Cross-domaincommunity detection in heterogeneous social networks[J]. Personal andUbiquitous Computing, 1-15.

社区发现研究现状(一)相关推荐

  1. 深度学习助力网络科学:基于深度学习的社区发现最新综述

    来源:AMiner科技 论文题目: A Comprehensive Survey on Community Detection with Deep Learning 论文网址: https://arx ...

  2. 文献记录(part80)--基于平均互信息的最优社区发现方法

    学习笔记,仅供参考,有错必纠 关键词:AMI-COPRA 算法 ;AMI-GN 算法 ;平均互信息 ;AMI 方法 ;社区发现; 基于平均互信息的最优社区发现方法 摘要 本文提出一种基于平均互信息的最 ...

  3. 社区发现(一)--算法综述

    基础概念简介:https://baike.baidu.com/item/%E7%A4%BE%E5%8C%BA%E5%8F%91%E7%8E%B0%E7%AE%97%E6%B3%95/19460396 ...

  4. 复杂网络之社区发现算法

    GN算法 2002年Girvan等提出了GN(Girvan - Newman ,命名是取自两位提出作者名)算法<Community Structure in Social and Biologi ...

  5. 论文翻译 - 深度学习社区发现综述 A Comprehensive Survey on Community Detection with Deep Learning

    为大家介绍一篇「深度学习」在社区发现(图聚类/图划分)方面应用的最新综述论文. 作者:Xing Su 原文链接:https://arxiv.org/abs/2105.12584 Github链接:ht ...

  6. 社区发现 SSN-LDA算法 学习笔记

    SSN-LDA(Simple Social Network-LDA)是一种基于潜在狄利克雷分配的分层贝叶斯算法,在SSN-LDA中,社区被建模为图形模型中的潜在变量,并被定义为社会参与者空间上的分布. ...

  7. 量子信息技术研究现状与未来——郭光灿

    来源: 中国科学杂志社 量子信息技术是量子力学与信息科学融合的新兴交叉学科, 它的诞生标志着人类社会将从经典技术迈进到量子技术的新时代, 本文将阐述量子信息技术的研究现状与未来. 文中描绘了量子技术发 ...

  8. 量子计算技术的研究现状与趋势

    来源:<中国科学> 2020年 第50卷   第9期 作者:郭光灿 导读:1900年 Max Planck 提出"量子"概念,宣告了"量子"时代的诞 ...

  9. 深度 | 量子计算技术的研究现状与未来

    来源:本源量子 导读 1900年 Max Planck 提出"量子"概念,宣告了"量子"时代的诞生.科学家发现,微观粒子有着与宏观世界的物理客体完全不同的特性. ...

最新文章

  1. postbody传参_post传参params与body的区别(@RequestParam和@RequestBody的区别)
  2. Cpp 对象模型探索 / 静态局部对象只构造一次的原因和执行析构的方法
  3. 机器学习(1)PLA
  4. 稳定性测试怎么做,这篇文章彻底讲透了
  5. 动态规划实战10 leetcode-64. Minimum Path Sum
  6. Web测试中性能测试基础
  7. matlab sprintf函数的用法
  8. js逆向爬虫入门-01.微信公众平台模拟登录逆向
  9. 正则表达式系列 (一)
  10. c语言思维导图(学习笔记)
  11. java 物体移动不了总结_java9迁移注意问题总结
  12. duilib设置透明窗口_使用duilib开发半透明异形窗体程序(补充)
  13. 笔记本电脑常识:噪音
  14. linux c语言 cmos,c语言编写程序读写CMOS内容
  15. 大学C语言考试易错知识点总结
  16. 在OpenCV里用drawContours画轮廓
  17. 基于JAVA图书共享系统计算机毕业设计源码+数据库+lw文档+系统+部署
  18. 【原创】老谷项目管理MSN群6.23记录
  19. 【Oracle】Cursor(游标)
  20. openwrt关闭串口打印信息

热门文章

  1. 数据科学家的一天,是怎样度过的?
  2. Java 实习要掌握的知识
  3. 关于Precision, Accuracy, F1, Micro-Ave, Macro-Ave
  4. 从明日方舟入手数据统计--盒须图
  5. Uncaught TypeError: Cannot read property ‘dispatch‘ of undefined
  6. 在家做什么兼职最靠谱?不去上班做什么好?
  7. 软件、Chrome字体细到模糊发虚解决方案
  8. 信号与系统2—关于自然常数e的那些事
  9. 应用每次打开重新启动_重新启动PC后如何阻止Windows 10重新打开以前的应用程序
  10. Python添加pywin32