K-Means 算法是一种经典的聚类算法,它通过迭代的方式将数据集分成 K 个簇,使得每个簇内的数据点尽可能接近,而不同簇之间的数据点尽可能远。

算法步骤

  1. 选择 K 个中心点:随机选择 K 个数据点作为初始中心点。
  2. 分配数据点:将每个数据点分配到最近的中心点所在的簇中。
  3. 更新中心点:计算每个簇中所有数据点的均值,并将中心点更新为均值。
  4. 重复步骤 2 和 3:重复步骤 2 和 3,直到中心点不再变化或达到预设的迭代次数。

优势

  • 简单易实现:K-Means 算法原理简单,易于实现。
  • 效率高:K-Means 算法计算速度快,适合处理大规模数据集。

应用场景

  • 市场细分:根据消费者的购买行为进行市场细分。
  • 图像识别:将图像数据聚类,用于图像分类。
  • 文本聚类:将文本数据聚类,用于主题建模。

代码示例

以下是一个使用 Python 实现 K-Means 算法的简单示例:

from sklearn.cluster import KMeans

# 创建 KMeans 对象
kmeans = KMeans(n_clusters=3)

# 拟合数据
kmeans.fit(X)

# 预测
y_pred = kmeans.predict(X)

相关链接

更多关于 K-Means 算法的知识,可以参考以下链接:

图片

中心点:

中心点

数据点:

数据点

簇:

簇