基于密度的聚类与代表聚类

时间:2016-01-12 20:35:41

标签: cluster-analysis dbscan elki mean-shift

我正在寻找一种执行基于密度的聚类的方法。生成的集群应具有与DBSCAN不同的代表。 Mean-Shift似乎符合这些需求,但不足以满足我的需求。我已经研究了一些子空间聚类算法,并且只使用代表找到了CLIQUE,但这部分没有在 Elki 中实现。

2 个答案:

答案 0 :(得分:2)

正如我在上一次问题的评论中所指出的那样, https://stackoverflow.com/questions/34720959/dbscan-java-library-with-corepoints

基于密度的聚类确实不假设有中心或代表性

考虑以下示例image from Wikipedia user Chire(BY-CC-SA 3.0):

enter image description here

哪个对象应该是红色群集的代表?

基于密度的聚类是关于发现"任意形状的"集群。这些没有有意义的单一代表性对象。他们并不打算"压缩"您的数据 - 这不是vector quantization方法,而是结构发现。但是,这种复杂结构的本质是它不能简化为单一的代表。 此类群集的正确表示是群集中所有点的集合。对于2D中的几何理解,您还可以计算凸包,例如,获取该图片中的区域。 / p>

选择代表性对象是一项不同的任务。这不是发现这种结构所必需的,因此这些算法不会计算代表性对象 - 它会浪费CPU。

答案 1 :(得分:2)

您可以选择密度最高的对象作为群集的代表。

对DBSCAN来说,存储每个对象的邻居数是一个相当容易的修改。

但正如Anony-Mousse所说,对象可能是一个相当糟糕的选择。基于密度的聚类不是为了产生代表性对象而设计的。

您可以尝试AffinityPropagation,但它也不会很好地扩展。