linkurious.js实现Louvain社区发现算法

来源:互联网 发布:网站模板需要源码吗 编辑:程序博客网 时间:2024/06/05 01:50

linkurious.js实现Louvain社区发现算法

原文:Community Detection · Linkurious/linkurious.js Wiki

阅读:
* 五大常用算法:分治、动态规划、贪心、回溯、分支限界搞怪的小丸子新浪博客
* 数据结构——图 贪婪方法 - ZDF19的博客 - CSDN博客

Louvain社区发现算法,多整个网络进行处理,将更密集的节点连接在一起。

linkurious.js Louvain插件

形式上,社区发现的目的是在一个图中按子集划分节点,使得同一个子集,相对不同子集,节点之间有更多的边。本质上,社区组内联系紧密,组外关系疏松。在论文[1]中讨论了很多解决这个问题的算法。

Louvain是一个流行的社区发现算法,在[2]有描述。该算法通过在网络上尝试各种分组操作后,贪婪地(当前看来是最好的选择)优化模块化得分,从而在社区中分离网络。通过使用这种简单的贪婪方法,该算法在计算上非常高效。

[1] Fortunato, Santo. “Community detection in graphs.” Physics Reports 486, no. 3-5 (2010).

[2] V.D. Blondel, J.-L. Guillaume, R. Lambiotte, E. Lefebvre. “Fast unfolding of communities in large networks.” J. Stat. Mech., 2008: 1008.



Before After