欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 养生 > 【第二章:机器学习与神经网络概述】01.聚类算法理论与实践-(2)层次聚类算法(Hierarchical Clustering)

【第二章:机器学习与神经网络概述】01.聚类算法理论与实践-(2)层次聚类算法(Hierarchical Clustering)

2025/6/19 20:23:40 来源:https://blog.csdn.net/IT_ORACLE/article/details/148741494  浏览:    关键词:【第二章:机器学习与神经网络概述】01.聚类算法理论与实践-(2)层次聚类算法(Hierarchical Clustering)

第二章: 机器学习与神经网络概述

第一部分:聚类算法理论与实践

第二节:层次聚类算法

内容:聚合方法、切分方法、相似度计算


层次聚类是一种无需预先指定类别数的聚类方法,它通过构建嵌套的聚类结构(层次树)来揭示数据的多层次结构。可分为:

  • 聚合型(Agglomerative)

  • 切分型(Divisive)

【漫话机器学习系列】003.Agglomerative聚类_agglomerativeclustering-CSDN博客


一、基本概念

层次聚类的结果通常表示为一棵树状图(Dendrogram),每个叶节点表示一个样本,分支表示聚类过程。


二、两种聚类方式
1. 聚合型(自底向上)

每个样本初始为一个独立簇,迭代将最相似的两个簇合并,直到只剩一个簇或达到指定阈值。

2. 切分型(自顶向下)

从整体样本开始,每次将某个簇拆分为两个,直到满足终止条件。较少使用,计算复杂度高。


三、簇间相似度的计算方法(Linkage)

聚合型层次聚类的核心在于簇间距离(相似度)计算方式

方法描述特点
单链接法(Single Linkage)两簇中距离最近的两个样本之间的距离易形成链状结构(“链现象”)
完全链接法(Complete Linkage)两簇中距离最远的两个样本之间的距离结果紧凑,不易受离群点影响
平均链接法(Average Linkage)两簇中所有样本两两之间距离的平均值折中方案
重心法(Centroid Linkage)使用簇中所有样本的质心间距离可用于欧氏空间
Ward法合并后平方误差最小化(最小化方差增加)通常效果较好,但要求欧式距离空间

四、常用相似度度量方式
度量方式公式说明适用场景
欧氏距离d(x, y) = \sqrt{ \sum_{i=1}^{n} (x_i - y_i)^2 }连续型数值数据
曼哈顿距离d(x, y) = \sum_{i=1}^{n} |x_i - y_i|x₁ − y₁
余弦相似度\text{sim}(x, y) = \frac{x \cdot y}{\|x\| \cdot \|y\|} = \frac{ \sum_{i=1}^{n} x_i y_i }{ \sqrt{ \sum x_i^2 } \cdot \sqrt{ \sum y_i^2 } }文本向量、用户行为
杰卡德相似度交集 / 并集二元/集合型数据
汉明距离不同位数的个数分类变量(编码)

五、层次聚类过程示意(以聚合为例)
  1. 初始化:每个样本为一个簇。

  2. 计算所有簇间的距离矩阵。

  3. 找到最近的两个簇进行合并。

  4. 更新距离矩阵。

  5. 重复步骤2~4,直到达到停止条件(如簇数、距离阈值等)。

  6. 通过树状图截取合适层级确定簇划分。


六、Python示例(使用 Scipy)
from scipy.cluster.hierarchy import dendrogram, linkage
from matplotlib import pyplot as plt
import numpy as np# 示例数据
X = np.array([[1, 2], [2, 1], [5, 6], [6, 5]])# 层次聚类
Z = linkage(X, method='ward')  # linkage 方法可以是 'single', 'complete', 'average', 'ward'# 绘制树状图
plt.figure(figsize=(8, 4))
dendrogram(Z)
plt.title("Dendrogram - Hierarchical Clustering")
plt.xlabel("Sample index")
plt.ylabel("Distance")
plt.show()


七、优缺点总结
优点缺点
不需要预设K值对噪声与异常值敏感
提供多层次结构一旦合并或切分,无法回溯
可用于非球状簇的识别大规模数据计算成本高

总结
  • 层次聚类构建数据的嵌套结构图谱,常用于基因分析、市场细分等领域。

  • 聚合型算法在实践中更常见,可配合树状图裁剪层级确定最终分簇数。

  • linkage策略和距离度量方式影响最终聚类结果,应结合具体任务选择。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词