大型有向图的社区检测
Community detection for large, directed graphs
在 R 的 Clustering and Community Detection in Directed Networks:A Survey Malliaros & Vazirgiannis (2013) describe many algorithms for clustering and community detection in directed graphs. I have a relatively large graph, 400.000 nodes, 180.000.000 edges and are looking for software that could detect communities in it, but the program for network analysis I've looked into, the igraph 包中,似乎没有任何算法能够检测大定向网络中的集群(igraph
有 cluster_fast_greedy()
,cluster_louvain()
但它们只适用于无向图)。在 R 或 python 中是否有任何包可以做到这一点?
在 Community detection on a very large graph 中提出了类似的问题,不同之处在于我需要 python 或 R.
的软件包
您可以使用 Python 包 leidenalg
中的 Leiden 算法,它应该比您提到的 Louvain 算法更快。该软件包适用于多种不同的网络,包括定向网络,但也适用于多路复用网络和具有负链接的网络。此外,它还支持一系列不同质量的功能。它应该很容易扩展到具有数百万个节点的网络(当然前提是它适合内存),运行时间通常最多只有几分钟。
免责声明:我是该软件包(以及许多相关出版物)的作者。
在 R 的 Clustering and Community Detection in Directed Networks:A Survey Malliaros & Vazirgiannis (2013) describe many algorithms for clustering and community detection in directed graphs. I have a relatively large graph, 400.000 nodes, 180.000.000 edges and are looking for software that could detect communities in it, but the program for network analysis I've looked into, the igraph 包中,似乎没有任何算法能够检测大定向网络中的集群(igraph
有 cluster_fast_greedy()
,cluster_louvain()
但它们只适用于无向图)。在 R 或 python 中是否有任何包可以做到这一点?
在 Community detection on a very large graph 中提出了类似的问题,不同之处在于我需要 python 或 R.
的软件包您可以使用 Python 包 leidenalg
中的 Leiden 算法,它应该比您提到的 Louvain 算法更快。该软件包适用于多种不同的网络,包括定向网络,但也适用于多路复用网络和具有负链接的网络。此外,它还支持一系列不同质量的功能。它应该很容易扩展到具有数百万个节点的网络(当然前提是它适合内存),运行时间通常最多只有几分钟。
免责声明:我是该软件包(以及许多相关出版物)的作者。