机器学习之聚类

K-均值是一种常见的无监督学习聚类算法,用于对未标记数据进行分类。它通过迭代过程找到数据的最佳分组,每次迭代中更新聚类中心以接近其所属点的均值。肘部法则通常用于确定最佳聚类数,但并非总能得到清晰的肘部点。在实际应用中,聚类数的选择常依赖于具体业务需求,例如在产品分类或集群设计中。K-均值的一个挑战是可能陷入局部最优解,需要多次运行并选择最小失真代价函数的结果。
摘要由CSDN通过智能技术生成

聚类

属于无监督学习,将一组没有标签的自变量分类

K-means

最普及的聚类算法

是一个迭代算法

算法流程

假设将数据分为k组:

  1. 初始化:随机选择k个点作为聚类中心
  2. 打标记:将所有数据点按照到每个聚类中心的距离远近,打上距离最近的那个聚类中心的标记
  3. 移动聚类中心:以标记为1为例:将所有标记1的点计算出一个均值,将聚类中心移动到那个均值点上(如果有一个聚类中心没有点,则删除那个聚类中心,再随机选取一个)

重复步骤2,3,直至中心点不再变化

优化目标

又称失真代价函数

在这里插入图片描述

回顾算法,选择最近的点分配是为了减小 C i C_i Ci引起的误差,调整聚类中心是为了修正 μ i μ_i μi(均值不等式)

注意在算法的迭代过程中J一定是递减的

初始化

随机选择K个样本作为起始的聚类中心

不过K-均值聚类的问题是一般只指向局部最优解

所以需要多次运行该算法,然后选取代价函数最小的结果

选择聚类数

因为数据没有标签,很难通过一个精准的算法去选择聚类数

一般是两种思路

  1. 肘部法则

在这里插入图片描述

画出这样的曲线,K为横坐标,J为纵坐标,有时会出现类似肘部的拐点,如左图,我们就选择那个拐点的K值作为聚类数

而更多时候图像如右图所示,肘部法则便很难适用

  1. 和实际应用结合

    一般执行K聚类的结果后,都会有更具体的应用,比如设计产品尺码,设计计算机集群等等,我们可以和这些应用结合来确定我们的K值。

    比如衣服分:s,m,l三类,那么便可确定K聚类的K值为3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值