机器学习实战——层次聚类算法

本文介绍了层次聚类的基本概念,包括凝聚层次聚类和分裂层次聚类,并重点讲解了常用的凝聚层次聚类算法AGNES。AGNES算法通过不断合并最近的簇直至达到预设簇数或所有样本归为一类。此外,文章还提到了计算簇间距离的三种方法,并概述了在sklearn库中使用层次聚类的主要参数,如n_clusters、affinity和linkage。最后,提及了如何利用seaborn绘制层次聚类的树状热图。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

机器学习实战——层次聚类算法

1 层次聚类概述

层次聚类试图在不同层次对数据集进行划分,从而形成树形的聚类结构。 数据集的划分可采用"自底向上"的聚合策略,也可采用"自顶向下" 的分拆策略。层次聚类可以分为凝聚层次聚类和分裂层次聚类。分裂层次聚类采用的就是"自顶而下"的思想,先将所有的样本都看作是同一个簇,然后通过迭代将簇划分为更小的簇,直到每个簇中只有一个样本为止。凝聚层次聚类采用的是"自底向上"的思想,先将每一个样本都看成是一个不同的簇,通过重复将最近的一对簇进行合并,直到最后所有的样本都属于同一个簇为止。目前,比较常用的层次聚类算法是"自底向上"的凝聚层次聚类,比较流行的算法有 BIRCH、AGNES,BIRCH 的算法可以参考文章1文章2。本文主要介绍 AGNES 算法,其算法思想描述如下:

  • 1 将每个样本当成一个初始簇;
  • 2 根据两个簇中样本点的最近距离找到相近的两个簇;
  • 3 合并两个簇,生成新的簇的集合;
  • 4 跳转到 2、3 步,直到达到定义的簇数目(若未定义簇数目,则将全部样本聚成一类为止)。

关于两个簇最近距离的计算有:最短距离、最长距离、平均距离三种常见的方法。设定 C i , C j C_i,C_j Ci,Cj

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值