- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
051|社区检测算法之“模块最大化”
2017-12-29洪亮劼来自北京
《AI技术内参》
一起来回顾下本周的内容。周一我们介绍了用图(Graph)来表达网页与网页之间的关系并计
算网页的重要性,就是经典的PageRank算法。周三我们介绍了PageRank的一个姊妹算
法,HITS算法,并且分析了这两种算法的内在联系,这两类算法都希望给网页赋予一个权重
来表达网页的重要性。
今天,我们来看一类完全不一样的网页分析工具,那就是希望把网页所代表的图分割成小块的
图,或者叫图聚类,每个小聚类代表一个“社区”。这类分析有时候被称作图上面的“社区检
测”(CommunityDetection),意思就是从一个图上挖掘出潜在的社区结构。
社区检测的简要历史
提到社区检测就不得不提到这么一位学者,他与我们今天要介绍的算法有非常紧密的联系,而
且他的研究在2000年~2010年间成了社区检测研究的标杆,影响了后续的大量研究工作。
这位学者就是密歇根大学(UniversityofMichigan)的物理学教授马克·纽曼(Mark
Newman)。
1991年,纽曼从牛津大学获得理论物理博士学位。在接下来的10年里,他在康奈尔大学和
圣塔菲学院(SantaFeInstitute)分别担任博士后研究员和研究教授。2002年,纽曼来到密
歇根大学物理系担任教授,并且一直在这里进行网络科学(NetworkScience)的基础研究。
2006年,纽曼在《物理评论》杂志上发表了一个叫“模块最大化”(Modularity
Maximization)的社区检测算法。从某种程度上来说,这个算法很快就成了社区检测的标准
算法,吸引了研究领域的广泛关注,激发了大量的针对这个算法的分析和研究。对这个算法的
最原始论述,请参阅参考文献[1]和[2]。
今天我们就来讲一讲这个“模块最大化”算法的基本原理。
模块最大化的基本原理
在我们讲解模块最大化算法之前,我们先来看一看“社区”的含义。在图分析以及网络科学
中,“社区”定义为一组结点,它们互相之间的联系比它们跟社区之外结点的联系要更加紧
密。你可以注意到,在这个定义中,什么叫紧密,怎么来衡量“更紧密”这个关系都是没有说
明的,这就为各类社区检测算法或模型带来了很大的发挥空间。
社区检测(有时候也说社区发掘)算法的核心就是要根据给定的一组结点和它们之间的关系,
在无监督的情况找到这些社区,并分配哪些结点属于哪个社区。
我们先来谈一谈“模块最大化”的一个整体思路。这里,我们讨论一种简化的情况,那就是如
何把一个网络分割成两个社区。首先,算法按照某种随机的初始化条件,把网络分成两个社
区。然后,算法逐一检查每一个结点,看如果把这个点划归到另外一个社区的话,会不会增加
“模块化”这个目标函数。最终,算法决定改变那些能够最大化模块化目标的结点的社区赋
值。然后整个算法不断重复这个过程,直到社区的赋值不再发生变化。
现在我们来讨论一下模块化这个目标函数。根据上面提到的社区含义,我们希望社区里结点之
间的联系紧密。在模块化目标函数里,就表达为两个结点的连接数目减去这两个结点之间的
“期望连接数”。模块化最大化说的就是,对于同一个社区中的所有结点,我们希望这个差值
的和最大化。什么意思呢?就是说,如果我们把两个结点放到一个社区中,那它们的连接数
(其实就是1或者0)要足够大于它们之间的连接数的期望值,这就解决了我们刚才所说的如
何来衡量“更加紧密”的难题。
那么,怎么来定义两个结点之间的“期望连接数”呢?最初纽曼在介绍模块最大化的时候,他
给出了这么一个计算方法。那就是,用两个结点各自的总连接数相乘,除以整个网络的总连接
数的2倍。直观上说,这是在衡量这两个结点之间出现任何连接的可能性。
那么,整个模块最大化的目标函数就是,针对现在网络中的所有结点,根据它们是否在同一个
社区,我们计算他们两两之间的模块化数值,也就是它们之间的连接减去“期望连接数”,最
后对所有的两两配对进行加和。我们希望这个目标函数最大化,这个目标函数中的未知数,就
是社区的分配,也就是哪个结点属于哪个社区。一旦社区的分配已知,整个模块最大化这个目
标函数的数值就可以很容易地计算出来。
那么如何得到这些社区的分配呢?和我们之前介绍的PageRank以及HITS的思路类似,纽曼
使用了矩阵的表达方法对整个模块最大化进行了一个重构,经过一系列代数变形之后[1],纽
曼得到了一个新的目标函数,那就是一个向量s的转置,乘以一个矩阵B,然后再乘以向量
s,最后除以4倍的网络
您可能关注的文档
- 出口商品技术指南-木制品(1).pdf
- 002-精读2017年KDD最佳研究论文【萌萌家】(1).pdf
- 003-精读2017年KDD最佳应用数据科学论文【萌萌家】.pdf
- 007-精读2017年ICCV最佳研究论文【萌萌家】.pdf
- 013-WSDM2018论文精读:看谷歌团队如何做位置偏差估计【萌萌家】.pdf
- 014-WSDM2018论文精读:看京东团队如何挖掘商品的替代信息和互补信息【萌萌家】.pdf
- 019-SIGIR2018论文精读:偏差和“流行度”之间的关系【萌萌家】.pdf
- 025-ICML2018论文精读:模型经得起对抗样本的攻击?这或许只是个错觉【萌萌家】.pdf
- 026-ICML2018论文精读:聊一聊机器学习算法的“公平性”问题【萌萌家】.pdf
- 027-ICML2018论文精读:优化目标函数的时候,有可能放大了“不公平”?【萌萌家】.pdf
- 055-基于深度学习的搜索算法:深度结构化语义模型【萌萌家】.pdf
- 057-基于深度学习的搜索算法:局部和分布表征下的搜索模型【萌萌家】.pdf
- 058-简单推荐模型之一:基于流行度的推荐模型【萌萌家】.pdf
- 061-基于隐变量的模型之一:矩阵分解【萌萌家】.pdf
- 062-基于隐变量的模型之二:基于回归的矩阵分解【萌萌家】.pdf
- 066-高级推荐模型之三:优化复杂目标函数【萌萌家】.pdf
- 067-推荐的Exploit和Explore算法之一:EE算法综述【萌萌家】.pdf
- 068-推荐的Exploit和Explore算法之二:UCB算法【萌萌家】.pdf
- 070-推荐系统评测之一:传统线下评测【萌萌家】.pdf
- 071-推荐系统评测之二:线上评测【萌萌家】.pdf
文档评论(0)