【发布时间】:2015-10-20 01:31:00
【问题描述】:
我有未加权和无向图作为我的网络,基本上是蛋白质网络。我想将此图聚类并将此图划分为不相交的聚类。任何 1 都可以建议我可以应用于未加权和无向图的生物网络的聚类算法。
【问题讨论】:
我有未加权和无向图作为我的网络,基本上是蛋白质网络。我想将此图聚类并将此图划分为不相交的聚类。任何 1 都可以建议我可以应用于未加权和无向图的生物网络的聚类算法。
【问题讨论】:
存在多种图划分算法,它们使用不同的范式来解决相同的问题。
最常见的是Louvain's method optimizing Newman's modularity。 在使用 Networkx 作为图形库的 python 中,您可以使用 community 对图形进行分区。
最快的图分区使用Metis。它基于层次图粗化。
您还有 N-cut 最初设计用于分割图像。
最后,您可以使用stochastic block-model techniques 对图进行分区。可以在Graph-tool 中找到一个非常好的 Louvain 的 Python 实现和几种块模型技术。
我最喜欢的是后者,它速度快(基于 Boost 图形库),相对易于使用且可调整。
编辑:请注意,在图形工具中,我们所说的 Louvain 模块化确实是 Newman 的算法,docs are here。
【讨论】: