什么是好的重叠组算法?
我熟悉各种聚类算法(k-means 等),但对于我的特定用例(社交网络),我需要一种检测重叠组的算法。这个算法巧妙地将我的 Facebook 朋友分为我的高中朋友、我的大学朋友、我的家人和我的工作朋友。
我上面使用的算法(JUNG 的VoltageClusterer)将节点分成单个集群。但我想要一种可以将节点分配给多个集群的算法(例如,我的一个朋友可以是我的高中朋友和大学朋友)。
我该怎么做?如果我能让这个算法也适用于加权图而不仅仅是未加权图,那就太好了。
I am familiar with various clustering algorithms (k-means etc) but for my specific use case (social networks), I need an algorithm that detects overlapping groups. This algorithm neatly separates my Facebook friends into my high school friends, my college friends, my family and my work friends.
The algorithm I used above (JUNG's VoltageClusterer) separates nodes into single clusters. But I want an algorithm that can assign nodes multiple clusters (e.g. a friend of mine can be both my high school friend and college friend).
How do I do this? It would be nice if I can have this algorithm work for weighted graphs too instead of just unweighted ones.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
Palla 等人在《自然》杂志上发表了一篇关于检测重叠社区的精彩论文:
http://www.nature.com/nature/journal/v435 /n7043/full/nature03607.html
他们展示了它在从社交到蛋白质相互作用的不同类型网络中的成功。
该算法称为 k-clique 渗滤。它在他们的 C-finder 程序中实现:
http://www.cfinder.org/
Palla et al have a nice Nature paper on detecting overlapping communities:
http://www.nature.com/nature/journal/v435/n7043/full/nature03607.html
They demonstrate its success in different types of networks, from social to protein interaction.
The algorithm is called k-clique percolation. It's implemented in their C-finder program:
http://www.cfinder.org/
回答我自己的问题,我找到了一篇不错的论文: http://www.springerlink.com/content/y44484587755k478 /
任何其他论文/方法都会有帮助。
Answering my own question, I found a decent paper: http://www.springerlink.com/content/y44484587755k478/
Any other papers/approaches would be helpful.
您可以尝试模糊 c 均值,它与旧的备用 k 均值非常相似,但允许重叠集群。有一个合理的介绍(包括一个小演示):
聚类教程算法:模糊 c 均值
You might try fuzzy c-means, which is much like the old standby, k-means, but permits overlapping clusters. There is a reasonable introduction (including a small demonstration) at:
A Tutorial on Clustering Algorithms: Fuzzy c-Means