news 2026/1/18 3:17:03

机器学习中的聚类算法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
机器学习中的聚类算法

摘要:本文概述了聚类算法这一无监督机器学习方法。文章首先介绍了聚类的基本概念和作用,然后详细阐述了五种主要的聚类形成方法:基于密度、层级、划分、网格等方法。重点分析了11种常用聚类算法(如K-means、DBSCAN、HDBSCAN等)的原理和特点。随后探讨了三种评估聚类质量的指标:轮廓分析、戴维斯-布尔丁指数和邓恩指数。最后列举了聚类在数据压缩、客户细分、生物数据分析等领域的广泛应用。全文系统性地呈现了聚类算法的技术体系和应用价值。

目录

星团形成方法

基于密度

基于层级的

划分

网格

机器学习中的聚类算法

K-表示聚类

K-中矩子聚类

均值移聚类

DBSCAN聚类

光学聚类

HDBSCAN聚类

BIRCH算法

亲和传播聚类

聚集聚类

高斯混合模型

衡量聚类模型性能

1. 轮廓分析

轮廓系数分析

2. 戴维斯 - 布尔丁指数

3. 邓恩指数

聚类的应用


聚类算法是最有用的无监督机器学习方法之一。这些方法用于寻找数据样本之间的相似性及关系模式,然后根据特征将样本分组到具有相似性的组别中。

聚类很重要,因为它决定了当前未标记数据的内在分组。它们基本上对数据点做出一些假设,以构成它们的相似性。每个假设都会构建不同但同样有效的聚类。

例如,下图显示了将相似类型的数据分组到不同聚类中的聚类系统 −

星团形成方法

星团不一定会以球形形式形成。以下是一些其他星团形成方法−

基于密度

在这些方法中,聚类被形成为稠密区域。这些方法的优点在于它们具有良好的准确性,并且能够很好地合并两个聚类。例如:基于密度的空间聚类应用(DBSCAN)、聚类结构识别排序点(OPTICS)等。

基于层级的

在这些方法中,聚类基于层级形成树状结构。它们分为两类,即聚合(自下而上方法)和除法(自上而下方法)。例如:使用代表法聚类(CURE)、平衡迭代式层级缩减聚类(BIRCH)等。

划分

在这些方法中,群集是通过将对象分割成k个簇来形成的。群集数量将等于分区的数量。例如:k-means,基于随机搜索的大型应用聚类(CLARANS)。

网格

在这些方法中,聚类被形成类似网格的结构。这些方法的优点是所有聚类作都快速且不受数据对象数量影响。例如统计信息网格(STING)、Quest聚类(CLIQUE)。

机器学习中的聚类算法

以下是最重要且最有用的机器学习聚类算法——

  • K-Means Clustering—— K 均值聚类
  • K-Medoids Clustering—— K 中心聚类
  • Mean-Shift Clustering—— 均值漂移聚类
  • DBSCAN Clustering—— 基于密度的带噪声应用空间聚类注:DBSCAN 是Density-Based Spatial Clustering of Applications with Noise的缩写
  • OPTICS Clustering—— 排序点以识别聚类结构算法注:OPTICS 是Ordering Points To Identify the Clustering Structure的缩写
  • HDBSCAN Clustering—— 层次密度聚类注:HDBSCAN 是Hierarchical Density-Based Spatial Clustering of Applications with Noise的缩写
  • BIRCH algorithm—— 平衡迭代规约与聚类层次算法注:BIRCH 是Balanced Iterative Reducing and Clustering using Hierarchies的缩写
  • Affinity Propagation Clustering—— 亲和传播聚类
  • Agglomerative Clustering—— 层次凝聚聚类
  • Gaussian Mixture Model—— 高斯混合模型

K 均值聚类

K 均值聚类算法计算重心并迭代,直到找到最优重心。它假设聚类数量已知。它也称为平坦聚类算法。算法从数据中识别的聚类数量在K均值中表示。

K 中心聚类

K 中心聚类是 K-均值聚类算法的改进版。工作原理如下

  • 从数据集中随机选择k个初始中枢。
  • 将每个数据点分配给最近的 Medoid。
  • 对于每个簇,选择使该簇中其他数据点距离之和最小的数据点,并将其设为新的中枢。
  • 重复第2和第3步,直到收敛或达到最大迭代次数。

均值漂移聚类

均值漂移聚类它是另一种强大的聚类算法,用于无监督学习。与K均值聚类不同,它不做任何假设,因此是一种非参数算法。

DBSCAN聚类

DBSCAN(基于密度的噪声应用空间聚类)算法是最常见的基于密度的聚类算法之一。DBSCAN算法需要两个参数:最小邻居数(minPts)和核心数据点之间的最大距离(eps)。

OPTICS聚类

OPTICS(Ordering Points to Identify the Clustering Structure)类似于DBSCAN,另一种流行的基于密度的聚类算法。然而,OPTICS相较于DBSCAN有若干优势,包括识别不同密度的簇、处理噪声的能力,以及能够生成层级聚类结构。

HDBSCAN聚类

HDBSCAN(基于密度的层级噪声空间聚类应用)是一种基于密度聚类的聚类算法。这是一种较新的算法,基于流行的DBSCAN算法,具有多项优势,比如更好地处理不同密度的簇,以及检测不同形状和大小的簇的能力。

BIRCH算法

BIRCH(平衡迭代、减少和聚类层级)是一种分层聚类算法,旨在高效处理大型数据集。该算法通过递归将数据划分为子簇,直到满足一个终止标准,构建了树状的簇结构。

亲和传播聚类

亲和传播是一种聚类算法,用于识别数据集中的“范例”,并将每个数据点分配给其中一个范例。这是一种不需要预先设定聚类数量的聚类算法,因此是探索性数据分析的有用工具。亲和传播由Frey和Dueck于2007年提出,此后广泛应用于生物学、计算机视觉和社交网络分析等多个领域。

层次凝聚聚类

层次凝聚是一种分层聚类算法,从每个数据点作为独立的聚类开始,并反复合并最近的聚类,直到达到一个终止准则。这是一种自下而上的方法,生成树状图,显示簇之间的层级关系。该算法可以通过 Python 中的 scikit-learn 库实现。

高斯混合模型

高斯混合模型(GMM)是一种机器学习中流行的聚类算法,假设数据是由多个高斯分布的混合生成的。换句话说,GMM试图将一组高斯分布拟合到数据中,每个高斯分布代表数据中的一个簇。

衡量聚类模型性能

在机器学习模型的相关考量中,评估模型性能(或称模型质量)是至关重要的一环。对于监督学习算法而言,评估模型质量的工作较为简单,因为我们已经掌握了每个样本对应的标签。

与之相对,无监督学习算法的情况则没有这么便利,因为这类算法处理的是无标签数据。即便如此,我们依然拥有一些评估指标,能够帮助技术人员基于所选用的算法,洞悉聚类结果的变化情况。

在深入探讨这类指标之前,我们必须明确一点:这些指标仅用于评估不同模型之间的相对性能,而非衡量模型预测结果的有效性。以下是几种可用于评估聚类算法模型质量的指标:

  1. 轮廓分析
  2. 戴维斯 - 布尔丁指数
  3. 邓恩指数

1. 轮廓分析

轮廓分析通过测量簇与簇之间的距离来检验聚类模型的质量。该方法本质上为我们提供了一种借助轮廓系数来评估聚类数量等参数的途径。轮廓系数用于衡量同一簇内的每个样本点与相邻簇中样本点的接近程度。

轮廓系数分析

轮廓系数(Silhouette score)的取值范围是 [-1, 1],其含义分析如下:

  • 系数为 + 1:轮廓系数趋近 + 1 时,表明该样本距离相邻簇的样本较远,聚类效果极佳。
  • 系数为 0:轮廓系数为 0 时,表明该样本处于两个相邻簇的决策边界上,或距离边界非常近。
  • 系数为 - 1:轮廓系数趋近 - 1 时,表明该样本被错误划分到了非归属的簇中,聚类效果极差。

轮廓系数的计算可通过以下公式实现:

其中,

b = 样本到最近相邻簇中所有样本的平均距离

a = 样本到所在簇内所有样本的平均距离

2.戴维斯 - 布尔丁指数

数据库指数是分析聚类算法的另一个良好指标。借助数据库索引,我们可以理解关于聚类模型 − 的以下要点

  • 各个簇之间的分隔度是否良好?
  • 各个簇的紧凑程度有多高?

我们可以利用以下公式 − 计算 DB 指数

这里,= 簇数

σi= 星团中所有点距离星团质心的平均距离。

数据库索引越少,聚类模型越好。

3. 邓恩指数

它的工作原理与数据库指数相同,但存在以下两者不同的点——

  • 邓恩指数只考虑最坏情况,即聚集得较近的簇,而DB指数则考虑聚类模型中所有簇的分散和分离情况。

  • 邓恩指数随着性能提升而增加,而数据库指数在集群间距宽且密集时会更好。

我们可以利用以下公式 − 计算 Dunn 指数

这里,,,= 每个簇的指标

= 星系团间距离

q = 星系团内距离

聚类的应用

我们可以在以下领域发现聚类很有用——

数据汇总与压缩− 聚类在需要数据汇总、压缩和缩减的领域被广泛使用。例如图像处理和矢量化。

协作系统与客户细分——由于集群可用于寻找相似产品或同类用户,因此它可以应用于协作系统和客户细分领域。

作为其他数据挖掘任务的关键中间步骤—— 聚类分析可以生成简明的数据摘要,用于分类、检验和假设生成;因此,它也作为其他数据挖掘任务的关键中间步骤。

动态数据中的趋势检测− 聚类也可以通过制作多个相似趋势的聚类来进行动态数据的趋势检测。

社会网络分析− 聚类可以在社会网络分析中使用。例如生成图像、视频或音频序列。

生物数据分析− 聚类也可用于生成图像聚类、视频,因此它可以成功应用于生物数据分析。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/16 18:48:21

如何快速成为Galgame社区高手:5个终极技巧让你玩转游戏平台

如何快速成为Galgame社区高手:5个终极技巧让你玩转游戏平台 【免费下载链接】kun-touchgal-next TouchGAL是立足于分享快乐的一站式Galgame文化社区, 为Gal爱好者提供一片净土! 项目地址: https://gitcode.com/gh_mirrors/ku/kun-touchgal-next 作为Galgame爱…

作者头像 李华
网站建设 2026/1/7 0:46:47

博德之门3模组管理新体验:从入门到精通的完整指南

博德之门3模组管理新体验:从入门到精通的完整指南 【免费下载链接】BG3ModManager A mod manager for Baldurs Gate 3. 项目地址: https://gitcode.com/gh_mirrors/bg/BG3ModManager 想象一下,当你精心下载的模组在游戏中完美运行时的那种成就感。…

作者头像 李华
网站建设 2026/1/6 19:53:15

救命神器10个AI论文网站,专科生毕业论文救星!

救命神器10个AI论文网站,专科生毕业论文救星! AI 工具如何成为论文写作的“救命稻草” 对于专科生来说,毕业论文不仅是一项重要的学术任务,更是一次对综合能力的全面考验。然而,面对繁重的写作任务、复杂的格式要求以及…

作者头像 李华
网站建设 2026/1/17 19:59:46

Windows电脑安装APK终极指南:3分钟搞定安卓应用

Windows电脑安装APK终极指南:3分钟搞定安卓应用 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 还在为无法在Windows电脑上运行Android应用而烦恼吗&#x…

作者头像 李华
网站建设 2026/1/5 13:41:01

Dify + Next.js 版本兼容性深度剖析(附12个真实项目案例)

第一章:Dify与Next.js版本兼容性概述在构建现代AI驱动的Web应用时,Dify与Next.js的集成成为关键的技术组合。然而,两者的版本匹配直接影响开发效率与部署稳定性。Dify作为低代码AI工作流平台,依赖于前端框架的API路由、服务端渲染…

作者头像 李华
网站建设 2026/1/5 13:41:01

同花顺自动交易完全指南:5步搭建你的程序化交易系统

想要在同花顺上实现自动化交易,摆脱手动操作的繁琐吗?jqktrader作为一款基于Python的开源同花顺自动交易工具,让你轻松搭建程序化交易系统。这个项目通过模拟真实的键盘和鼠标操作,实现了对同花顺客户端的完全控制,为投…

作者头像 李华