K-means聚类是一种常用的无监督学习算法,用于将数据集划分为不同的簇。在本篇文章中,我们将详细介绍K-means聚类算法的原理,并给出相应的MATLAB源代码示例。
K-means聚类算法的原理:
- 初始化:选择要划分的簇的数量K,并随机选择K个数据点作为初始质心。
- 分配:对于每个数据点,计算其与各个质心之间的距离,并将其分配到距离最近的质心所代表的簇中。
- 更新:对于每个簇,计算其所有数据点的平均值,并将该平均值作为新的质心。
- 重复步骤2和步骤3,直到质心不再发生显著变化或达到最大迭代次数。
下面是一个使用MATLAB实现K-means聚类算法的示例:
% 生成示例数据
data = [randn(100,