自学内容网 自学内容网

[Python]什么是K-Means均值聚类算法?

        K-Means均值聚类分析是一种无监督学习算法,用于将数据集分成k个簇(cluster),其中每个簇的成员在某种意义上是相似的。算法的目标是找到质心(centroid),使得每个点到其最近质心的距离之和最小。通俗讲法就是:给定一组数据,如何对这些数据进行分类,分几类是最恰当的。以下是进行k均值聚类分析的一般步骤:

K-Means算法将数据分为2类,质心分别如上

  1. 选择k值:首先确定要划分的簇的数量k。这通常基于先验知识或通过肘部法则等方法确定。
  2. 初始化质心:随机选择k个数据点作为初始质心。
  3. 分配数据点:对于每个数据点,计算其到每个质心的距离,并将其分配到最近的质心所在的簇。
  4. 更新质心:重新计算每个簇的质心,即该簇内所有数据点的均值。
  5. 重复步骤3和4:重复分配数据点和更新质心的步骤,直到质心不再显著变化或达到预设的迭代次数。

对于如下数据,我们可以使用Python的机器学习库,如scikit-learn,来进行k均值聚类分析。首先,我们需要将数据转换为适合分析的格式,然后选择合适的k值,并应用k均值聚类算法

聚类结果如下:可以看出分为2类,其质心分别为如下:

质心分别为:


原文地址:https://blog.csdn.net/weixin_45933029/article/details/142599729

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!