机器学习系列——(十九)层次聚类

news/2024/5/20 7:54:19 标签: 机器学习, 聚类, 人工智能

引言

机器学习和数据挖掘领域,聚类算法是一种重要的无监督学习方法,它试图将数据集中的样本分组,使得同一组内的样本相似度高,不同组间的样本相似度低。层次聚类(Hierarchical Clustering)是聚类算法中的一种,以其独特的层次分解方式,在各种应用场景中得到广泛应用,如生物信息学、图像分析、社交网络分析等。

一、概述

层次聚类算法主要分为两大类:凝聚的层次聚类(Agglomerative Hierarchical Clustering)和分裂的层次聚类(Divisive Hierarchical Clustering)。凝聚的层次聚类从每个数据点作为单独的簇开始,逐渐合并为更大的簇;而分裂的层次聚类则是从一个包含所有数据点的单一簇开始,逐步细分为更小的簇。这两种方法都会形成一个树形结构,称为层次聚类树或者聚类树(Dendrogram),通过这个树形结构,我们可以清晰地看到数据点是如何逐步聚合或分裂的。

二、算法

1. 凝聚的层次聚类

凝聚的层次聚类是最常用的层次聚类方法。它的基本步骤如下:

  1. 初始化:将每个数据点视为一个单独的簇。
  2. 寻找最近的簇:计算所有可能的簇对之间的距离,找出距离最近的一对簇。
  3. 合并簇:将最近的簇合并成一个新的簇。
  4. 更新距离:重新计算新形成的簇与其他簇之间的距离。
  5. 重复步骤2-4,直到所有数据点都聚合成一个簇,或达到预定的簇数量。

在这个过程中,簇之间的距离可以通过不同的方法来定义,常见的有:

  • 单链接(Single Linkage):簇间距离定义为两个簇中最近两个点的距离。
  • 完全链接(Complete Linkage):簇间距离定义为两个簇中最远两个点的距离。
  • 平均链接(Average Linkage):簇间距离定义为两个簇中所有点对的平均距离。
  • 质心链接(Centroid Linkage):簇间距离定义为两个簇质心之间的距离。

2. 分裂的层次聚类

分裂的层次聚类与凝聚的层次聚类相反,它从一个包含所有数据点的单一簇开始,通过迭代地将簇分裂成更小的簇,直到每个簇只包含一个数据点,或达到预定的簇数量为止。分裂的层次聚类较少使用,因为其实现较为复杂,计算成本也较高。

3. 聚类树(Dendrogram)

无论是凝聚还是分裂的层次聚类,最终都可以生成一个聚类树,即Dendrogram。Dendrogram是一种树形图,用于展示数据点是如何步骤聚合或分裂的。通过观察Dendrogram,我们不仅可以了解聚类的层次结构,还可以根据需要选择不同级别的聚类划分。

三、层次聚类的优缺点

优点:

  • 不需要预先指定簇的数量。
  • 能够生成任意形状的簇。
  • 生成的Dendrogram提供了丰富的信息,有助于理解数据结构。

缺点:

  • 对于大规模数据集,计算成本较高,尤其是在计算簇间距离时。
  • 簇的合并或分裂决策是顺序进行的,一旦完成就不能更改,这可能导致不理想的聚类结果。

四、应用实例

层次聚类在许多领域都有广泛的应用。例如,在生物信息学中,层次聚类被用来分析和分类基因表达数据;在客户细分中,帮助企业理解不同类型的客户群体;在文本分析中,用于文档或文章的分类等。

五、结语

层次聚类是一种强大而灵活的聚类方法,能够揭示数据的内在结构和层次关系。虽然它在处理大规模数据集时存在一定的局限性,但通过采用适当的优化和启发式方法,仍然可以有效应用于各种实际问题中。理解层次聚类的原理和方法,能够帮助我们更好地利用这一技术,发掘数据中隐藏的模式和知识。


http://www.niftyadmin.cn/n/5372216.html

相关文章

【国产MCU】-CH32V307-模拟/数字转换器(ADC)

模拟/数字转换器(ADC) 文章目录 模拟/数字转换器(ADC)1、ADC介绍2、ADC驱动API介绍3、ADC使用实例3.1轮询方式采样3.2 中断方式采样3.3 DMA方式读取数据3.4 读取温度传感器值CH32V307内嵌2个12位的模拟/数字转换器(ADC),共用多达16 个外部通道和2 个内部通道采样,可编程的通道…

基金分类

一、按基金运作方式分类 (一)封闭式基金 是基金份额总额在期限内固定不变,在期限内不可申购和赎回。 (二)开放式基金 是基金份额总额不固定,在期限内可以申购和赎回。 这里的开放式基金特指传统的开放式基…

Linux 命令行的世界 :2.文件系统中跳转

我们需要学习的第一件事(除了打字之外)是如何在 Linux 文件系统中跳转。在这一章节中,我们将介绍以下命令:pwd 打印出当前工作目录名 cd 更改目录 ls 列出目录内容 Linux以分层目录结构来组织所有文件。这就意味着所有文件…

烟雨要饭网带后台,附带搭建教程

直接上传访问即可,有安装向导,php环境不得低于7.0 后台地址/Admin,默认账号admin 默认密码123456 自带乞讨音乐,增加樱花特效

[office] excel2003进行可视性加密的方法 #媒体#其他#知识分享

excel2003进行可视性加密的方法 Excel如何对重要文件进行可视性的加密处理呢?下面是小编带来的关于excel2003进行可视性加密的方法,希望阅读过后对你有所启发! excel2003进行可视性加密的方法: 可视性加密步骤1:打开你要加密的excel2003文档…

算法练习-二叉搜索树中的搜索(思路+流程图+代码)

难度参考 难度:中等 分类:二叉树 难度与分类由我所参与的培训课程提供,但需要注意的是,难度与分类仅供参考。且所在课程未提供测试平台,故实现代码主要为自行测试的那种,以下内容均为个人笔记,旨…

设计模式(行为型模式)中介者模式

目录 一、简介二、中介者模式2.1、中介者接口2.2、具体中介者2.3、同事对象2.4、使用 三、优点与缺点 一、简介 中介者模式(Mediator Pattern)是一种行为设计模式,旨在减少对象之间的直接通信,通过引入一个中介对象(中…

力扣231. 2 的幂(数学,二分查找,位运算)

Problem: 231. 2 的幂 文章目录 题目描述思路即解法复杂度Code 题目描述 思路即解法 思路1:位运算 1.易验证2的幂为正数; 2.易得2的幂用二进制表示只能有一个位为数字1 3.即将其转换为二进制统计其二进制1的个数 思路2:数学 当给定数n大于1时…