【算法解析3/5】聚类任务深度解析:常用算法、评估指标及主流算法 | K均值聚类、层次聚类、密度聚类、高斯混合模型 | 轮廓系数、Calinski-Harabasz、Davies-Bouldin指数

注:本系列将有五部分,分别对应五大机器学习任务类型,包括:
1. 分类(Classification)、2. 回归(Regression)、3. 聚类(Clustering)、4. 降维(Dimensionality Reduction)以及 5. 强化学习(Reinforcement Learning)
此文含大量干货,建议收藏方便以后再读!

大家好,我是爱酱。继前两篇我们系统梳理了分类与回归任务的评估与算法,本篇我们将进入五大机器学习任务的第三类——聚类任务(Clustering)。聚类是无监督学习(Unsupervised Learning)的典型代表,广泛应用于客户分群、图像分割、异常检测等场景。本文将系统讲解聚类任务的定义、主流算法、常用评估指标、实际应用与常见问题,帮助你建立清晰的聚类知识体系。

注:本文章颇长近2500字,建议先收藏再慢慢观看。新频道发展不易,你们的每个赞、收藏跟转发都是我继续分享的动力!另外,此片虽然内容比较短,算法也比较少(比较前两篇),但实际原理其实更难用文字解释。因此,有兴趣的同学可以告诉我那个算法或原理想我单独介绍,我会一步步仔细讲述他们运用的步骤!


一、什么是聚类任务?

我们在开始前,要先明白聚类任务的定义。

聚类任务的目标是将数据集中的样本根据相似性自动分为若干组(簇),每一组内部样本相似度高,不同组之间差异大。聚类属于无监督学习,不依赖于人工标签,而是通过数据本身的结构和分布来发现潜在模式。

  • 硬聚类(Hard Clustering):每个样本只属于一个簇。

  • 软聚类(Soft Clustering):每个样本可以以不同概率属于多个簇(如高斯混合模型)。

  • 层次聚类(Hierarchical Clustering):形成树状的分组结构,支持多层次分析。


二、主流聚类算法及原理简介

1. K均值聚类(K-Means Clustering)

原理:
K均值通过迭代优化,将样本分为 $K$ 个簇,使簇内样本到中心的距离平方和最小。

目标函数:

\min_{C} \sum_{k=1}^{K} \sum_{x_i \in C_k} \|x_i - \mu_k\|^2

其中 $C_k$ 为第 $k$个簇,$\mu_k$ 为该簇的中心。

算法流程:

  • 随机初始化 $K$个中心

  • 分配样本到最近中心

  • 更新每个簇的中心为其成员均值

  • 重复分配与更新,直到收敛

优缺点:

  • 优点:高效、易实现,适合大数据集

  • 缺点:对初值敏感,需预先指定 $K$,不适合非球状簇和异常值多的数据


2. 层次聚类(Hierarchical Clustering)

原理:
通过计算样本间距离,逐步合并(自底向上)或分裂(自顶向下)簇,最终形成树状结构(dendrogram)。这部分其实已经够复杂可以单独出一片文章了。有兴趣的可以留言告诉我!

常见距离度量方法:

  • 单链法(Single Linkage):两个簇之间最近点的距离

    d(A, B) = \min_{x \in A, y \in B} \|x - y\|
  • 全链法(Complete Linkage):两个簇之间最远点的距离

    d_{\text{complete}}(A, B) = \max_{x \in A, y \in B} \|x - y\|
  • 平均法(Average Linkage):两个簇所有点对的平均距离

    d_{\text{average}}(A, B) = \frac{1}{|A||B|} \sum_{x \in A} \sum_{y \in B} \|x - y\|
  • 中间法(Centroid Linkage):两个簇中心点之间的距离

    d_{\text{centroid}}(A, B) = \|\mu_A - \mu_B\|

    其中 $\mu_A$$\mu_B$ 分别为簇 $A$ 和 $B$ 的均值。

优缺点:

  • 优点:无需预先指定簇数,能反映多层次结构

  • 缺点:计算复杂度高,难以扩展到大数据集


3. 密度聚类(DBSCAN)

原理:
基于密度的聚类方法,核心思想是:簇内样本密度高,簇间样本密度低。可识别任意形状簇并自动检测异常点。

参数:

  • $\varepsilon$(半径):邻域范围

  • $MinPts$:最小邻域点数

核心定义:

N_\varepsilon(x) = \{y \mid \|x - y\| \leq \varepsilon\}

$x$ 是核心点当且仅当 $|N_\varepsilon(x)| \geq MinPts$

优缺点:

  • 优点:能发现任意形状簇,自动排除噪声

  • 缺点:参数敏感,难以处理高维数据


4. 高斯混合模型(GMM, Gaussian Mixture Model)

原理:
假设数据由多个高斯分布混合生成,使用EM算法估计每个样本属于各个簇的概率,实现软聚类。

概率模型:

p(x) = \sum_{k=1}^{K} \pi_k \mathcal{N}(x | \mu_k, \Sigma_k)

其中 $\pi_k$ 为第 $k$ 个簇的权重,$\mu_k$$\Sigma_k$ 为均值和协方差。

优缺点:

  • 优点:可建模椭球形簇,支持软分配

  • 缺点:对初值和分布假设敏感,参数较多


三、聚类评估指标

聚类属于无监督学习,评估标准与有标签任务不同。常用指标如下:

1. 轮廓系数(Silhouette Coefficient)

定义:

s(i) = \frac{b(i) - a(i)}{\max\{a(i), b(i)\}}

其中 $a(i)$ 为样本 $i$ 到同簇其他样本的平均距离,$b(i)$ 为其到最近其他簇的平均距离。$s(i)$ 越接近1,聚类效果越好


2. Calinski-Harabasz指数

定义:

CH = \frac{\text{Tr}(B_k) / (k-1)}{\text{Tr}(W_k) / (n-k)}

$B_k$ 为簇间离差矩阵,$W_k$ 为簇内离差矩阵,$k$ 为簇数,$n$ 为样本数。$CH$ 越大聚类效果越好。


3. Davies-Bouldin指数

定义:

DB = \frac{1}{k} \sum_{i=1}^{k} \max_{j \neq i} \left( \frac{\sigma_i + \sigma_j}{d_{ij}} \right)

$\sigma_i$ 为第 $i$ 个簇内样本到中心的平均距离,$d_{ij}$ 为簇间中心距离。$DB$ 越小越好。


四、聚类任务的实际应用场景

  • 客户分群:根据消费行为、兴趣等特征将用户分为不同群体,实现精准营销。

  • 图像分割:将图像像素自动分为不同区域,辅助医学影像分析、目标检测等。

  • 异常检测:识别与大多数样本差异显著的异常点,用于金融风控、网络安全等。

  • 文本主题发现:将文档聚为不同主题,提升信息检索与推荐效果。

  • 生物信息学:基因表达数据聚类,辅助疾病亚型划分与药物研发。


五、聚类模型实战建议与常见问题

  1. 如何选择聚类算法?

    K均值适合球状簇和大数据,DBSCAN适合有噪声和任意形状簇,GMM适合软分配和椭球形簇,层次聚类适合多层次结构。
     
  2. 如何确定簇数K?

    可结合轮廓系数、Calinski-Harabasz指数、肘部法则等方法自动评估。
     
  3. 高维数据如何聚类?

    建议先降维(如PCA、t-SNE),再聚类,提升效果和可视化能力。
     
  4. 聚类结果如何解释?

    可结合特征均值、可视化、与业务专家沟通等方式,理解每个簇的代表性和业务意义。

六、总结

聚类任务是无监督学习的核心应用之一,能帮助我们从无标签数据中发现潜在结构和模式。理解主流算法的原理、评估指标和实际应用,有助于你在数据分析和智能决策中发挥更大价值。下期我们将继续探讨降维任务与实战,敬请期待!


如需某一算法的详细推导、代码实现或实际案例,欢迎留言交流!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值