大型有向图的社区检测

问题描述

Clustering and Community Detection in Directed Networks:A Survey Malliaros & Vazirgiannis (2013) 中描述了许多用于有向图中聚类和社区检测的算法。我有一个相对较大的图、400.000 个节点、180.000.000 条边,并且正在寻找可以检测其中的社区的软件,但是我研究过的网络分析程序(R 的 igraph 包)没有似乎有任何算法能够检测大型有向网络中的集群(igraphcluster_fast_greedy()cluster_louvain(),但它们只适用于无向图)。是否有任何包,无论是在 R 中还是在 python 中,可以做到这一点?

Community detection on a very large graph 中提出了类似的问题,不同之处在于我需要 python 或 R 的包。

解决方法

您可以使用 Python 包 leidenalg 中的 Leiden 算法,它应该比您提到的 Louvain 算法更快。该软件包适用于多种不同的网络,包括定向网络,但也适用于多路复用网络和具有负链接的网络。此外,它还支持一系列不同的质量功能。它应该可以轻松扩展到具有数百万个节点的网络(当然前提是它适合内存),运行时间通常最多为几分钟。

免责声明:我是该软件包(以及一些相关出版物)的作者。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...