我在玩自然语言处理,并试图对新闻文章标题进行聚类。我将标题转换为矢量,但它们几乎均匀分布。有2-3个新闻文章的小集群,但大多数新闻文章应该在他们自己的集群。几乎均匀分布的数据的高效聚类算法
我试过使用k-means,但文章很少改变集群,因为数据是相当统一的。最初的随机簇最终成为最后的簇。
我尝试了凝聚式集群,它对于一个小数据集(几百篇文章)非常适用。然而,它需要很长时间,因为它至少是O(n^2)。
是否有任何有效的算法来聚类几乎均匀分布的数据?
例如,如果我的数据是一个实数集,它可能是这样的:
1 2 3 4 4.1 5 6
在这种情况下,该簇应该是:(1) ,(2),(3),(4,4.1),(5),(6)。 有没有更好的方法来做到这一点比凝聚聚类?
与群集统一数据不矛盾吗? –
如果你的数据“几乎一致”,那么i)没有聚类,和ii)你在预处理时做了错误。文本不应该是统一的,而是Zipf分发的。 k-means对于这样的数据也是一个非常糟糕的选择 - 它不允许噪音(没有群集中的文章)。 –
我几乎统一的意思是没有明显的分区可以分割所有的数据。由于k-means被用来分割数据,所以在我的数据上效果不好。有明显的<5个节点的小群集,但应该有比O(n^2)更好的找到这些群集的东西。 –