CommunityGAN: Community Detection with Generative Adversarial Nets
1、Introduction
-
社区检测问题:识别具有高度相似属性或特征的顶点
-
重叠社区:传统的算法是基于 K − m e a n s K-means K−means, G a u s s i a n M i x t u r e M o d e l Gaussian\ Mixture\ Model Gaussian Mixture Model等聚类算法,这就使得某个顶点只能属于一个社区,因此不能识别重叠社区,因此重叠的社区检测问题是有很大研究价值的。
-
一般来说,顶点嵌入向量的有用信息是这些向量的相关距离,而顶点嵌入向量中的特定值没有意义。(比如说node2vec,LINE等等)如果要给一些顶点特定的向量值,我们可能要考虑用一些其他的方法(比如说逻辑回归等)。
-
CommunityGAN。实际上,基于前面 G r a p h G A N GraphGAN GraphGAN中产生的节点表征,通过聚类的方法也可以得到图网络中的社区。但是, G r a p h G A N GraphGAN GraphGAN中的表征仅仅考虑了边的信息,而社区的形成往往需要更加紧密的结构如团( c l i q u e clique clique),所以 C o m m u n i t y G A N CommunityGAN CommunityGAN的基本思路就由 G r a p h G A N GraphGAN GraphGAN中回答“两个节点之间是否存在一条边”变成了“多个节点之间是否两两相连”,来解决社区发现的问题。
本文创新点
- C o m m u n i t y G A N CommunityGAN CommunityGAN,将 A G M AGM AGM和 G A N GAN GAN结合在一个统一的框架中,既实现了 G A N GAN GAN的优异性能,又实现了 A G M AGM AGM中直接的顶点社区成员表示
- 研究了 m o t i f motif motif在真实群体中的分布,并分析了它们如何帮助提高被检测群体的质量
- 我们提出了一种新的母题生成方法,称为 g r a p h A G M graphAGM graphAGM,它能以一种计算效率高的方式生成具有图结构感知能力的最有可能的模体
2、communityGAN Framework
M ( v c ) M(v_{c}) M(vc)可以被视为从 p t r u e ( m ∣ v c ) p_{true}(m∣v_{c}) ptrue(m∣vc)中的一组观察到的结构
在GraphGAN中,主要有两个模型:
(1)Generator G ( s ∣ v c ; θ G ) G(s∣v_{c};θ_{G}) G(s∣vc;θG) 输出尽可能接近的 p t r u e ( m ∣ v c )