库来检测网络中的重叠社区?

在几秒钟内寻找一个在相当大的网络中检测重叠社区(最多10,000个节点)的lib,而不是几分钟? [注:通过“网络”我的意思是一个图表]


回应评论询问详情,这里是一个简单的例子:

DEF
|
G
|
ABC

有许多算法能够将(D,E,F,G)和(A,B,C)检测为这个网络中的2个不同的(不重叠的)社区 - 当然还有(D,E,F)和(A,B,C,G)。

我正在寻找一种用Java实现的算法,它能够将(D,E,F,G)和(A,B,C,G)检测为两个重叠(因为它们在G上重叠)社区网络。


试试斯坦福大学的SNAP工具。 他们在已经实现的examples文件夹中有这个用例。

http://snap.stanford.edu/


尝试gephi。 我相信你打算做的事情已经在那里实施了。 但是,它是开源的(3 GPL),您可以从代码中获得一些想法。 java Graph API描述在这里。

您也可能想要查看这篇文章


COPRA是一种在JAVA中实现重叠社区的算法,速度非常快。

http://www.cs.bris.ac.uk/~steve/networks/software/copra.html

其他用于重叠群集的有用链接(不一定用java编写)是:

MOSES:cliquecluster.org/moses

OSLOM:oslom.org/

OVERMAP:bitbucket.org/dsign/grbracket/wiki/Home

随机区块模型:github.com/premgopalan/svinet

链接地址: http://www.djcxy.com/p/11721.html

上一篇: library to detect overlapping communities in a network?

下一篇: RNCryptor not working with JSON string