代码之家  ›  专栏  ›  技术社区  ›  winwaed

用平滑器和L方法确定K-均值聚类数

  •  16
  • winwaed  · 技术社区  · 14 年前

    在应用L-方法确定数据集中k-均值聚类的数量之前,是否有人试图对计算度量应用更平滑的方法?如果是的话,它是否改善了结果?或者允许较少的k-means试验,从而大大提高速度?您使用了哪种平滑算法/方法?

    “L法”详见: Determining the Number of Clusters/Segments in Hierarchical Clustering/Segmentation Algorithms , Salvador & Chan

    这将计算不同试用群集计数范围的评估度量。然后,为了找到膝关节(发生在最佳簇数下),使用线性回归拟合两条直线。一个简单的迭代过程被应用来改善膝关节拟合-这使用了现有的评估度量计算,并且不需要k-均值的任何重新运行。

    对于评估指标,我使用的是Dunns索引简化版本的倒数。简化了速度(基本上我的直径和簇间计算都简化了)。倒数是指指数的方向是正确的(即通常越低越好)。

    K-means是一种随机算法,因此通常它会运行多次并选择最佳拟合。这工作得很好,但是当你为1..N个集群执行此操作时,时间很快就会累积起来。所以我有兴趣控制跑步次数。总的处理时间可能决定我的实现是否实用——如果我不能加快速度,我可能会放弃这个功能。

    1 回复  |  直到 13 年前
        1
  •  6
  •   Community CDub    8 年前

    我问过 similar question 在过去这里就这样。我的问题是找到符合你描述的L型的膝盖。所涉及的曲线表示复杂度与模型的拟合度量之间的折衷。

    这个 best solution 是找到最大距离的点 d 如图所示:

    alt text

    注意:我还没读过你链接到的报纸。。

    推荐文章