当前位置: 首页 > news >正文

聚类(Clustering)详解:让机器自己发现数据结构

文章目录

    • 一、什么是聚类
    • 二、聚类的核心思想
    • 三、常见的聚类算法
      • 1. K-Means 聚类
      • 2. 层次聚类(Hierarchical Clustering)
      • 3. DBSCAN(Density-Based Spatial Clustering of Applications with Noise)
      • 4. 高斯混合模型(GMM)
    • 四、聚类与分类的区别
    • 五、聚类的应用场景
    • 六、聚类的评价指标
    • 七、总结

在数据科学和机器学习的众多任务中,聚类(Clustering) 是最具探索性的一类。与分类不同,聚类不依赖人工标注的数据,而是让算法自主地从数据中发现规律和分组。本文将系统介绍聚类的核心思想、常见算法、优缺点及应用场景。


一、什么是聚类

聚类是指:将一组对象按照相似性划分为若干个簇(Cluster),同一簇内的对象彼此相似,而不同簇之间的对象差异较大。

更通俗地说,聚类的目标是:

让机器自动找出“哪些样本更像彼此”,并据此形成群体。

例如,在用户行为数据中,聚类可以帮助我们发现“夜猫子用户”“高频购买者”“新手用户”等不同群体;在图像处理中,可以用来区分图像特征相似的区域。

在这里插入图片描述


二、聚类的核心思想

聚类的基本思想有两个:

  1. 簇内相似度高(Intra-cluster similarity):同一簇中的样本尽量接近;

  2. 簇间差异大(Inter-cluster difference):不同簇之间的样本尽量远离。

这种“相似性”通常通过距离度量来衡量,例如:

  • 欧几里得距离(Euclidean Distance)

  • 曼哈顿距离(Manhattan Distance)

  • 余弦相似度(Cosine Similarity)

不同的距离度量方式会导致不同的聚类结果,因此在实际任务中,选择合适的相似度函数非常关键。


三、常见的聚类算法

1. K-Means 聚类

K-Means 是最经典的聚类算法之一,其思想简单高效。
算法流程如下:

  1. 选择簇的数量 K;

  2. 随机初始化 K 个簇中心;

  3. 将每个样本分配到最近的簇;

  4. 更新每个簇的中心为该簇样本的均值;

  5. 重复步骤 3 和 4,直到簇中心收敛。

优点:

  • 简单直观,计算速度快;

  • 适用于大规模数据。

缺点:

  • 需要预先指定 K;

  • 对异常值敏感;

  • 假设簇为球状,不适合复杂形状的分布。


2. 层次聚类(Hierarchical Clustering)

层次聚类通过逐步合并或拆分的方式形成一棵聚类树(dendrogram)。
有两种主要方式:

  • 自底向上(凝聚式,Agglomerative)

  • 自顶向下(分裂式,Divisive)

在可视化上,层次聚类的结果可以画成一棵“树”,研究者可以通过切割树的不同层次来选择聚类的粒度。

优点:

  • 不需要预先指定簇数;

  • 结果可视化、解释性强。

缺点:

  • 计算复杂度较高;

  • 对噪声敏感。


3. DBSCAN(Density-Based Spatial Clustering of Applications with Noise)

DBSCAN 是一种基于密度的聚类算法。
它的思想是:密集的点属于同一簇,而稀疏区域被视为噪声

核心参数包括:

  • eps:邻域半径;

  • minPts:一个簇内最少点数。

优点:

  • 不需要指定簇数;

  • 能发现任意形状的簇;

  • 能有效识别噪声点。

缺点:

  • 参数敏感;

  • 对不同密度的数据效果不佳。


4. 高斯混合模型(GMM)

GMM 假设数据来自若干个高斯分布(即正态分布)的混合体,通过期望最大化(EM)算法估计每个分布的参数。

与 K-Means 不同,GMM 提供了“软聚类”结果——每个样本属于不同簇的概率,而非固定划分。

优点:

  • 聚类结果更灵活;

  • 适合概率建模任务。

缺点:

  • 对初始值敏感;

  • 容易陷入局部最优。


四、聚类与分类的区别

对比项聚类分类
学习类型无监督学习监督学习
是否有标签
目标发现数据结构预测标签
输出簇编号或概率分布类别标签
示例用户分群、文本主题发现垃圾邮件识别、图像分类

五、聚类的应用场景

  1. 用户画像与市场细分
    通过用户行为聚类,发现不同消费群体,为精准营销提供支持。

  2. 推荐系统
    将兴趣相似的用户或物品聚为一类,提高推荐效果。

  3. 文本主题分析
    对新闻、评论、文档进行聚类,自动发现主题。

  4. 图像分割
    按照像素特征聚类,实现自动图像区域划分。

  5. 异常检测
    将聚类中距离中心较远的样本视为潜在异常。


六、聚类的评价指标

由于聚类是无监督的,评价其结果较为复杂。常见指标包括:

  • 内部指标(无需真实标签):

    • 轮廓系数(Silhouette Coefficient)

    • Davies–Bouldin Index

  • 外部指标(有真实标签时):

    • Rand Index

    • Adjusted Mutual Information (AMI)

这些指标从不同角度衡量聚类的紧密性与分离度。


七、总结

聚类是数据分析中一种重要的探索性工具。
它能帮助我们:

  • 发现数据的潜在结构;

  • 理解不同样本间的相似性;

  • 为后续建模或决策提供依据。

然而,聚类并不是“找出真相”的算法,而是一种“发现模式”的方法。不同算法、参数、距离度量都会影响结果,因此在使用时要结合业务背景、数据特点与解释需求。

http://www.dtcms.com/a/566083.html

相关文章:

  • cglib动态代理之MethodProxy
  • 网站公网安备链接怎么做网站建设需要多少资金
  • 重点专业建设网站网上接效果图平台
  • 海北网站建设队徽logo设计
  • 北京专业网站建设网站水头网站建设
  • Git hook pre-commit
  • 展示系统 网站模板广西新闻
  • Java基础语言进阶学习——2,对象创建机制与内存布局
  • 网站seo啥意思怎么做罗田县建设局网站
  • 基于yolov8的果蔬识别检测系统python源码+onnx模型+数据集+精美GUI界面
  • 网站建设合同电子版苏州网页制作报价
  • 廊坊网站建设方案策划民治做网站
  • 走路摆臂幅度大给人影响差-----坏习惯
  • TRO重磅消息 野生动物插画师Roger Hall跨境维权风暴来袭
  • ABB焊接机器人节气装置
  • Linux 孤儿进程和僵尸进程详解
  • jsp做网站用什么封装字符串餐饮加盟什么网站建设
  • 做网站挂谷歌广告赚钱吗电子商务网站模板html
  • 基于 OpenVINO 实现 SpeechT5 语音合成模型本地部署加速
  • 北京市建设工程审核在哪个网站打车软件app开发
  • 怎么做站旅游网站上泡到妞主流网站宽度
  • 【底层机制】解析Espresso测试框架的核心原理
  • 网站如何做中英文效果wordpress主题开发培训
  • PostIn零基础学习 - 快速对接口进行调试
  • 网站建设沛宣北京vi设计公司哪
  • 高明网站建设报价品牌网站建设创意新颖
  • HTML DOM outerHTML 属性
  • SpringBoot 登录验证码
  • Spring Al Alibaba
  • 陕西民盛建设有限公司网站pageadmin的最新版本