什么是好的重叠组算法?

我熟悉各种聚类算法(k-means等)但是对于我的特定用例(社交网络),我需要一种能够检测重叠组的算法.这个算法巧妙地将我的Facebook好友分成了我的高中朋友,我的大学朋友,我的家人和我的工作朋友.

我上面使用的算法(JUNG的VoltageClusterer)将节点分成单个集群.但我想要一个可以为节点分配多个集群的算法(例如,我的一个朋友可以是我的高中朋友和大学朋友).

我该怎么做呢?如果我能让这个算法也适用于加权图形而不仅仅是未加权的图形,那将是很好的.

最佳答案 Palla等人有一篇很好的关于检测重叠社区的自然论文:

http://www.nature.com/nature/journal/v435/n7043/full/nature03607.html

他们证明了它在不同类型网络中的成功,从社交到蛋白质互动.

该算法称为k-clique渗流.它在他们的C-finder程序中实现:
http://www.cfinder.org/

点赞