【问题标题】:Clustering K-means algorithm for elongated data set用于细长数据集的聚类 K-means 算法
【发布时间】:2017-04-01 23:00:04
【问题描述】:

我在 Matlab 中编程 K-means 算法时遇到了问题。为什么 K-means 算法不适用于细长数据集的分类?

【问题讨论】:

标签: machine-learning cluster-analysis k-means


【解决方案1】:

排序时,在纸上画一些粗线。你真的可以用一个点来代表每个人吗?单点如何提供有关方向的信息?

K-means 将每个数据点分配给每个 最近 质心。也就是说,对于每个质心c,它们与c 的距离较小(与所有其他质心相比)的所有点都将分配给c。而且,由于(超)球体的表面实际上是距离中心小于或等于某个值的所有点,我认为很容易看出结果簇如何趋向于球形。 (准确地说,kmeans 实际上是在向量空间中创建了一个 Voronoi 图

然而,细长​​的集群不一定满足所有点都更接近“质心”而不是其他集群的中心的要求。

【讨论】:

    【解决方案2】:

    在拉长的数据集中选择一个初始化聚类中心点是困难的,但它对结果的影响很大。选择不同的点可能会得到不同的结果。

    在这种情况下,当您选择 3 个初始点时,您只会得到一个结果:

    但在拉长的数据集中就不一样了。

    【讨论】:

    • 在拉长的数据上选择初始点并不难。
    猜你喜欢
    • 2020-03-10
    • 2014-02-02
    • 1970-01-01
    • 2018-04-22
    • 2020-09-19
    • 2013-02-07
    • 2011-10-15
    • 2018-02-13
    • 1970-01-01
    相关资源
    最近更新 更多