《菜菜的机器学习sklearn课堂,细谈分布式事务的前世今生

本文详细介绍了KMeans聚类算法,包括质心的计算、算法流程以及停止条件。KMeans旨在找到使簇内差异小、簇外差异大的最优聚类,其中簇内差异通过簇内误差平方和(Inertia)衡量。文章讨论了Inertia作为损失函数的性质,并指出其在评估聚类效果时的局限性,同时提供了聚类效果的其他评估方法。此外,还提及了sklearn库中的KMeans实现及其参数设置。
摘要由CSDN通过智能技术生成

簇中所有数据的均值 μ \mu μ通常被称为这个簇的质心(centroids)。在一个二维平面中,一簇数据点的质心的横坐标就是这一簇数据点的横坐标的均值,质心的纵坐标就是这一簇数据点的纵坐标的均值。同理可推广至高维空间。


在KMeans算法中,簇的个数K是一个超参数,需要我们人为输入来确定。KMeans的核心任务就是根据我们设定好的K,找出K个最优的质心,并将离这些质心最近的数据分别分配到这些质心代表的簇中去。具体过程可以总结如下:

| 顺序 | 过程 |

| — | — |

| 1 | 随机抽取K个样本作为最初的质心 |

| 2 | 开始循环: |

| 2.1 | 将每个样本点分配到离他们最近的质心,生成K个簇 |

| 2.2 | 对于每个簇,计算所有被分到该簇的样本点的平均值作为新的质心 |

| 3 | 当质心的位置不再发生变化,迭代停止,聚类完成 |

什么情况下,质心的位置会不再变化呢?

  • 当我们找到一个质心,在每次迭代中被分配到这个质心上的样本都是一致的,即每次新生成的簇都是一致的,所有的样本点都不会再从一个簇转移到另一个簇,质心就不会变化了。

这个过程在可以由下图来显示,我们规定将数据分为4(K=4),其中白色X代表质心的位置:

在这里插入图片描述

在这里插入图片描述

可以看见,第六次迭代之后,基本上质心的位置就不再改变了,生成的簇也变得稳定。此时我们的聚类就完成了,我们可以明显看出,KMeans按照数据的分布,将数据聚集成了我们规定的4类,接下来我们就可以按照我们的业务需求或者算法需求,对这四类数据进行不同的处理。

[](

)簇内误差平方和的定义和解惑


聚类算法聚出的类有什么含义呢?这些类有什么样的性质?

我们认为,被分在同一个簇中的数据是有相似性的,而不同簇中的数据是不同的,当聚类完毕之后,我们就要分别去研究每个簇中的样本都有什么样的性质,从而根据业务需求制定不同的商业或者科技策略。

这个听上去和评分卡案例中讲解的“分箱”概念有些类似,即我们分箱的目的是希望:一个箱内的人有着相似的信用风险,而不同箱的人的信用风险差异巨大,以此来区别不同信用度的人,因此我们追求“组内差异小,组间差异大”。

聚类算法也是同样的目的,我们追求“簇内差异小,簇外差异大”。而这个“差异“,由样本点到其所在簇的质心的距离来衡量。

对于一个簇来说,所有样本点到质心的距离之和越小,我们就认为这个簇中的样本越相似,簇内差异就越小。而距离的衡量方法有多种,

  • 令 x x x表示簇中的一个样本点

  • μ \mu μ表示该簇中的质心

  • n表示每个样本点中的特征数目

  • i表示组成点 x x x的每个特征

则该样本点到质心的距离可以由以下距离来度量:

  • 欧几里得距离 : d ( x , μ ) = ∑ i = 1 n ( x i − x μ ) 2 d(x, \mu) = \sqrt{\sum_{i=1} ^n (x_i - x_\mu)^2} d(x,μ)=i=1∑n​(xi​−xμ​)2 ​

  • 曼哈顿距离: d ( x , μ ) = ∑ i = 1 n ( ∣ x i − μ ∣ ) d(x, \mu) = \sum_{i=1}^{n}(|x_i - \mu|) d(x,μ)=i=1∑n​(∣xi​−μ∣)

  • 余弦距离: c o s θ = ∑ 1 n ( x i ∗ μ ) ∑ 1 n ( x i ) 2 ∗ ∑ 1 n ( μ ) 2 cos\theta = \frac { \sum _1^n(x_i * \mu)} {\sqrt {\sum_1n(x_i)2} * \sqrt{\sum_1n(\mu)2}} cosθ=∑1n​(xi​)2 ​∗∑1n​(μ)2 ​∑1n​(xi​∗μ)​

如我们采用欧几里得距离,则一个簇中所有样本点到质心的距离的平方和为:

在这里插入图片描述

其中&#

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值