微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

大型有向图的社区检测

如何解决大型有向图的社区检测

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

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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。