news 2026/6/8 23:50:12

9.1 聚类算法全览:K-means、层次聚类、DBSCAN与谱聚类

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
9.1 聚类算法全览:K-means、层次聚类、DBSCAN与谱聚类

9.1 聚类算法全览:K-means、层次聚类、DBSCAN与谱聚类

聚类是无监督学习中最核心的任务之一,其目标是在没有先验标签的情况下,根据数据的内在相似性将样本划分成若干个簇,使得同一簇内的样本尽可能相似,不同簇间的样本尽可能不同。聚类分析被广泛应用于客户细分、图像分割、异常检测和生物信息学等领域。不同的聚类算法基于不同的数据相似性度量和簇结构假设。本节将系统阐述四种最具代表性的聚类算法:基于原型的K-means、基于层次的层次聚类、基于密度的DBSCAN以及基于图论的谱聚类,分析其核心原理、算法流程、关键参数与各自适用的场景。

9.1.1 K-means 聚类

K-means 是基于原型的聚类算法的典范,它假设每个簇可以由一个中心点(质心)来代表,并通过最小化样本到其所属簇质心的距离平方和来进行划分。

9.1.1.1 算法原理与目标

给定样本集D = { x 1 , x 2 , . . . , x n } , x i ∈ R d D = \{\mathbf{x}_1, \mathbf{x}_2, ..., \mathbf{x}_n\}, \mathbf{x}_i \in \mathbb{R}^dD={x1,x2,...,xn},xiRd,K-means 的目标是将n nn个样本划分到k kk个互斥的簇{ C 1 , C 2 , . . . , C k } \{C_1, C_2, ..., C_k\}{C1,C2,...,Ck}中,以最小化簇内平方误差
J = ∑ j = 1 k ∑ x ∈ C j ∥ x − μ j ∥ 2 J = \sum_{j=1}^{k} \sum_{\mathbf{x} \in C_j} \|\mathbf{x} - \boldsymbol{\mu}_j \|^2J=j=1kxCjxμj2
其中μ j = 1 ∣ C j ∣ ∑ x ∈ C j x \boldsymbol{\mu}_j = \frac{1}{|C_j|} \sum_{\mathbf{x} \in C_j} \mathbf{x}μj=Cj1xCjx是簇C j C_jCj的质心向量。最小化J JJ是一个 NP 难问题,因此 K-means 采用了一种启发式的迭代优化算法(Lloyd算法)。

9.1.1.2 算法流程
  1. 初始化:随机选择k kk个样本作为初始质心{ μ 1 ( 0 ) , . . . , μ k ( 0 ) } \{\boldsymbol{\mu}_1^{(0)}, ..., \boldsymbol{\mu}_k^{(0)}\}{μ1(0),...,μk(0)}
  2. 迭代直至收敛
    a.分配步骤:对于每个样本x i \mathbf{x}_ixi,计算其到所有质心的距离(通常为欧氏距离),将其分配到距离最近的质心所对应的簇中。
    C j ( t ) = { x i : ∥ x i − μ j ( t ) ∥ 2 ≤ ∥ x i − μ l ( t ) ∥ 2 ,   ∀ l , 1 ≤ l ≤ k } C_j^{(t)} = \{ \mathbf{x}_i : \| \mathbf{x}_i - \boldsymbol{\mu}_j^{(t)} \|^2 \le \| \mathbf{x}_i - \boldsymbol{\mu}_l^{(t)} \|^2, \ \forall l, 1 \le l \le k \}<
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/3 23:34:36

Langchain-Chatchat向量检索性能优化:GPU加速与embedding模型选择

Langchain-Chatchat向量检索性能优化&#xff1a;GPU加速与embedding模型选择 在企业构建智能知识库系统的过程中&#xff0c;一个常见的挑战是&#xff1a;如何让大语言模型既能准确理解内部文档的复杂语义&#xff0c;又能在海量数据中实现“秒回”级别的响应&#xff1f;尤其…

作者头像 李华
网站建设 2026/6/2 21:19:50

Kotaemon日志轮转与存储优化技巧

Kotaemon日志轮转与存储优化技巧在工业物联网设备长期运行的实践中&#xff0c;一个看似不起眼的设计细节——日志管理&#xff0c;往往成为决定系统稳定性的关键因素。我们曾遇到某款边缘网关上线半年后频繁宕机&#xff0c;排查发现并非软件缺陷&#xff0c;而是SD卡因持续高…

作者头像 李华
网站建设 2026/6/1 23:20:37

Kotaemon后端API设计规范:RESTful风格清晰易用

Kotaemon后端API设计规范&#xff1a;RESTful风格清晰易用在现代软件开发中&#xff0c;一个系统能否高效协作、快速迭代&#xff0c;往往不取决于其功能有多强大&#xff0c;而在于它的接口是否“好懂”。尤其是在微服务架构和前后端分离日益普及的今天&#xff0c;API 已经不…

作者头像 李华
网站建设 2026/6/5 23:16:35

Kotaemon能否用于剧本杀剧情设计?团队共创

剧本杀创作困局&#xff1a;当AI遇上团队共创&#xff0c;Kotaemon能带来什么新可能&#xff1f;你有没有经历过这样的剧本杀创作场景&#xff1f;一群人围坐&#xff0c;脑暴三小时&#xff0c;白板上画满了线索关系图&#xff0c;却还是卡在“动机不够强”或“反转太生硬”的…

作者头像 李华
网站建设 2026/6/5 15:18:37

Java计算机毕设之基于springboot+vue的大学生就业招聘系统的设计与实现基于SpringBoot的校园招聘信息管理系统的设计与实现(完整前后端代码+说明文档+LW,调试定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/6/7 22:49:03

FaceFusion如何优化戴太阳镜时的眼部区域融合?

FaceFusion如何优化戴太阳镜时的眼部区域融合&#xff1f; 在数字人、虚拟主播和影视特效日益普及的今天&#xff0c;人脸替换技术已不再局限于简单的“换脸”娱乐。以 FaceFusion 为代表的高保真人脸融合系统&#xff0c;正逐步成为专业内容创作的核心工具。然而&#xff0c;一…

作者头像 李华