本教程将使用 K-Means 聚类算法将以下 5 个样本数据点聚类为两类,距离度量使用曼哈顿距离:

(0,2), (0,0), (1,0), (5,0), (-1,-1)

K-Means 聚类算法

K-Means 算法是一种无监督学习算法,它将数据点划分为 k 个不同的簇,其中每个簇都由其中心点(也称为质心)表示。算法的基本步骤如下:

  1. 随机选择 k 个中心点作为初始簇中心。
  2. 计算每个数据点到所有簇中心的距离,并将其分配给距离最小的簇。
  3. 重新计算每个簇的中心点,即所有分配给该簇的数据点的平均值。
  4. 重复步骤 2 和 3,直到簇中心不再发生显著变化。

我们的例子

首先,我们需要选择两个初始簇中心。我们将选择 (0,0) 和 (2,0) 作为初始中心点。

第一次迭代

  • 聚类中心 1: (0,0)

    • (0,2) 到聚类中心 1 的距离为 2
    • (0,0) 到聚类中心 1 的距离为 0
    • (1,0) 到聚类中心 1 的距离为 1
    • (5,0) 到聚类中心 1 的距离为 5
    • (-1,-1) 到聚类中心 1 的距离为 2
    • 将 (0,2), (1,0), (-1,-1) 分配到聚类 1 中,将 (0,0), (5,0) 分配到聚类 2 中。
  • 聚类中心 2: (2,0)

    • (0,2) 到聚类中心 2 的距离为 2
    • (0,0) 到聚类中心 2 的距离为 2
    • (1,0) 到聚类中心 2 的距离为 1
    • (5,0) 到聚类中心 2 的距离为 3
    • (-1,-1) 到聚类中心 2 的距离为 3
    • 将 (0,2), (1,0), (-1,-1) 分配到聚类 1 中,将 (0,0), (5,0) 分配到聚类 2 中。

第二次迭代

  • 聚类中心 1: (-0.33,0.33) ( (0,2) + (1,0) + (-1,-1) 的平均值 )

    • (0,2) 到聚类中心 1 的距离为 2.33
    • (0,0) 到聚类中心 1 的距离为 0.94
    • (1,0) 到聚类中心 1 的距离为 0.67
    • (-1,-1) 到聚类中心 1 的距离为 0.67
    • (5,0) 到聚类中心 1 的距离为 5.33
    • 将 (0,2), (1,0), (-1,-1) 分配到聚类 1 中,将 (0,0), (5,0) 分配到聚类 2 中。
  • 聚类中心 2: (2.5,0) ( (0,0) + (5,0) 的平均值 )

    • (0,2) 到聚类中心 2 的距离为 2
    • (0,0) 到聚类中心 2 的距离为 2.5
    • (1,0) 到聚类中心 2 的距离为 1.5
    • (-1,-1) 到聚类中心 2 的距离为 3.5
    • (5,0) 到聚类中心 2 的距离为 2.5
    • 将 (0,2), (1,0), (-1,-1) 分配到聚类 1 中,将 (0,0), (5,0) 分配到聚类 2 中。

结果

经过第二次迭代后,聚类中心不再发生变化,聚类完成。聚类结果为:

  • 聚类 1: {(0,2), (1,0), (-1,-1)}
  • 聚类 2: {(0,0), (5,0)}

总结

K-Means 算法是一种简单但有效的聚类算法,它在数据挖掘和机器学习中有着广泛的应用。本教程演示了如何使用 K-Means 算法对简单的样本数据进行聚类分析。希望本教程对您理解 K-Means 算法有所帮助。

K-Means 聚类算法实战:5个样本的聚类分析

原文地址: https://www.cveoy.top/t/topic/ogFC 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录