- 1
- 0
- 约4.67千字
- 约 19页
- 2026-02-03 发布于四川
- 举报
层次聚类分析法
目录1层次聚类简介概念定义与基本策略2算法原理与类型凝聚法与分裂法的工作原理3距离度量与联结方法不同距离计算方法及其影响4实践应用Stata与Python中的实现方法5案例分析与总结
第一章层次聚类简介
什么是层次聚类?层次聚类是一种无监督学习方法,旨在发现数据中潜在的层次结构,无需预先指定类别数量。其核心思想是通过逐步合并或拆分样本,形成一个完整的嵌套聚类树(也称为树状图或系统发生树)。这种方法特别适合于探索性数据分析,帮助研究者理解数据的内在分组关系和结构特征。自动发现数据结构无需预先假设数据分布形式,能够自然呈现数据的层次关系可视化层次关系通过树状图直观展示样本间的相似性和聚类过程灵活的聚类粒度
层次聚类的两种基本策略凝聚法(Agglomerative)自底向上策略初始时将每个样本视为独立的类计算类间距离,合并最相似的两类不断迭代合并直到所有样本归为一类最常用的层次聚类方法分裂法(Divisive)自顶向下策略初始时将所有样本视为一个类寻找最佳分裂点,将类分为两个子类递归分裂直到每个样本成为独立的类计算复杂度高,应用较少两种方法理论上可以生成完全相同的层次结构,但实际应用中由于算法实现和计算复杂度的差异,凝聚法更为常用。
层次聚类流程示意凝聚法:从单个样本出发,逐步合并最相似的类合并过程形成一个树状的层次结构可以通过水平切割树状图获得不同数量的聚类分裂法:从整体样本出发,递归地分裂为子类寻找最优分裂点,使子类内部相似度最高计算复杂度为O(2^n),实际应用受限
第二章算法原理与距离度量深入理解层次聚类的核心机制
凝聚法算法步骤初始化将每个样本视为单独的簇,N个样本形成N个簇计算所有样本对之间的距离矩阵D找出最近簇对在距离矩阵D中找出距离最小的两个簇i和j将i和j记录为合并对象合并簇将簇i和簇j合并成新的簇k更新簇的数量N=N-1更新距离矩阵计算新簇k与所有其他簇的距离更新距离矩阵D,删除i和j的行列,添加k的行列迭代直到完成重复步骤2-4,直到所有样本归为一类或达到预设的簇数量阈值整个过程可以用树状图(Dendrogram)直观地表示,展示样本间的层次合并关系。
分裂法算法步骤初始化将所有N个样本视为一个大簇计算簇内所有样本对之间的距离矩阵寻找分裂点找出簇内距离最远的两个样本,作为两个新簇的初始中心这一步通常采用某种聚类算法(如K-means)来实现最优分裂分配样本将其余样本分配到距离最近的中心,形成两个子簇更新簇的数量N=N+1递归分裂对每个子簇重复步骤2-3进行递归分裂直到满足停止条件(如达到预设的簇数量或每个簇只包含一个样本)分裂法的计算复杂度随样本数量呈指数增长,因此在大规模数据集上应用受限,但它在某些特定问题上可能提供更好的结果。
常用距离度量方法在层次聚类中,如何计算两个簇之间的距离是算法的核心问题。不同的距离度量方法会产生不同的聚类结果,适用于不同的数据特性。选择合适的距离度量方法对聚类结果有决定性影响,应根据数据特性和分析目标来选择。最小距离法SingleLinkage两个簇中最近的两个点之间的距离倾向于形成链状或细长的簇最大距离法CompleteLinkage两个簇中最远的两个点之间的距离倾向于形成紧凑的球状簇平均距离法AverageLinkage两个簇所有点对之间距离的平均值介于最小和最大距离法之间的折中方案Ward法WardsMethod最小化合并后类内方差增量倾向于形成大小相近的簇
不同联结方法的聚类效果比较单联结(最小距离)优点:能够识别非球形簇缺点:对噪声和离群点敏感,容易形成链状效应适用:不规则形状的数据簇全联结(最大距离)优点:对噪声和离群点不敏感缺点:偏向于形成大小相等的簇,可能拆分大簇适用:紧凑型数据簇均值联结(平均距离)优点:折中的方案,适应性较强缺点:计算复杂度较高适用:一般数据集的首选方法Ward联结法优点:倾向于形成紧凑且大小相等的簇缺点:偏向于球形簇,不适合非欧氏距离适用:希望得到大小相近的簇
第三章Stata中的层次聚类操作实用工具与操作流程
Stata层次聚类基本命令1聚类命令结构clusterlinkage[变量列表],linkage(方法)直接对变量进行聚类分析,支持多种联结方法single-最小距离法complete-最大距离法average-平均距离法ward-Ward最小方差法2距离矩阵聚类clustermatlinkage矩阵名,linkage(方法)对预先计算好的距离矩阵进行聚类适用于自定义距离度量或非数值变量的情况3树状图生成clusterdendrogram可选参数:labels(变量)-指定样本标签cutnumber(n)-指定切割数量horizontal-水平显示showcou
原创力文档

文档评论(0)