跳到主要内容

凝聚层次聚类

分层聚类

从每个房源各自成叶开始,按连接规则不断合并最近的两簇,用树状图决定切在哪一层,再读各类占用人数。

更新日期 2026-08-29 机器学习

这篇能回答什么

分层聚类回答的是「这些对象会按距离一层层并到一起,树在哪一高度切开更说得通」。它是凝聚式无监督过程:开始时每个有效行是一片叶子,每一步把当前距离最近的两簇合成新枝,直到只剩树根。你事后在树上选一个切分高度(或等价地选保留几枝),得到类别 A / B / C 的簇占用,而不是事先把 K 写进目标函数里去优化中心。

适合:想看见合并顺序的中小样本探索——营养表、量表条目、一小批房源或产品。本页用综合评价表的面积(平米)、楼层、总楼层、单价(元/平米)、总价(万元) 五列定量特征;切成三枝后,教学占用是 A 52、B 51、C 109,合计 212 套进入完整距离矩阵的行。

什么时候不该用

已经有金标准标签(学区房 / 改善型、病型、年级)时,主分析应是线性判别或监督分类,而不是再长一棵无监督树。只要综合排序不要分群,用TOPSIS。数千行仍要看完整树,计算与阅读都会崩;应改K-Means 聚类分析或二阶聚类。房源ID、小区名称、城市、区域不是欧氏坐标,不要当距离特征。

如何选择方法

先问你要不要看见合并路径。要树、要事后切、样本量以百计 → 分层聚类。已经决定球形、规模相近、只要中心画像 → K-Means。怀疑弯月形口袋或明显离群点 → 密度聚类。定量和房屋类型、装修情况混在一张表、还想让信息准则建议簇数 → 二阶聚类。

  • 分层聚类:≥2 个定量特征;输出树状图与切分后各类频数、占比。

  • K-Means:预先指定 K,迭代中心,适合较大 n、近似球形簇。

  • 密度聚类:用邻域半径成簇,可把稀疏点标成噪声。

  • 二阶聚类:先预簇再层次合并,可吃混合类型。

输入、输出与限制

输入

聚类特征必须是定量。连接方法(Ward、组平均、完全、单连接)与切分枝数是超参数,不是数据列。列表删除后,参与距离矩阵的行数必须大于拟保留的枝数。

  • 聚类特征:最少 2 个,最多 50 个定量变量。

  • 切分枝数:整数,常见 2–20;本教学切成 3 枝以对照占用表。

输出

教学结果表只有四列:项目、类别、统计量、取值。类别 A / B / C 是切树之后的簇占用(频数与占比),合计行是有效 N。工作台同时给出树状图;特征均值画像若出现,属于另一张表,不要自行往本表加「中心」列。

产品限制

  • 完整 n×n 距离矩阵随行数平方膨胀;行太多时树叶会挤成一条黑带,应以占用表为准。

  • 拟合前通常做 Z-score,否则总价(万元)会压过楼层。

  • Ward 默认按欧氏距离理解;换连接方法等于换一棵树,占用可以整枝改写。

  • 房源ID、小区名称会被拒绝或应被你主动排除。

  • 这些上限来自 StatsX 工作台,不是 SPSS「系统聚类」默认的未标准化设定。

案例

研究问题。 综合评价教学表想先看住房在户型与价格空间里会怎样一层层并起来,再决定切三枝是否站得住,而不是一上来把 K 写死成 3 去跑快速聚类。

教学表示例工作表为「Sheet1」。进入距离矩阵的完整个案 212。切成三枝后占用:A 52 套(24.53%),B 51 套(24.06%),C 109 套(51.42%)。A 与 B 几乎对等,C 独自超过一半。下载后:聚类特征勾选面积(平米)、楼层、总楼层、单价(元/平米)、总价(万元);不要勾选房源ID、城市、区域、小区名称、房屋类型。

下载教学示例表(综合评价)

在 StatsX 中操作

  1. 步骤 1 · 上传表格

    打开工作台,将 Excel / CSV / JSON 拖入上传区。本案例使用综合评价 xlsx,确认工作表为「Sheet1」。单文件不超过 20 MB。

  2. 步骤 2 · 查看画像与质量

    在列画像里确认面积(平米)、楼层、总楼层、单价(元/平米)、总价(万元) 为定量;建筑年份可选用。房源ID、小区名称是标识,城市、区域、房屋类型、装修情况是定类,全部不要拖进本过程的距离特征。

  3. 步骤 3 · 选择「分层聚类」

    在算法目录搜索「分层」或「层次聚类」,点选分层聚类。适合/可用标记只是提示。

  4. 步骤 4 · 指定特征并切树

    聚类特征勾选上述五列定量(至少两列)。连接方法可先用 Ward。切分枝数取 3,以便和本页占用表对照。点击运行分析。

  5. 步骤 5 · 阅读结果

    先核合计 N 是否为完整个案,再读 A / B / C 频数。然后看树:长枝是否对应人数最多的 C,短枝是否对应几乎等大的 A 与 B。图上叶子挤在一起时,引用表里的人数,不要数像素。

StatsX 工作台上传综合评价表
将教学示例表拖入工作台上传区。
列画像确认住房定量列
核对面积、楼层、总楼层、单价、总价为定量。
在目录中选择分层聚类
在算法目录中选定「分层聚类」。
为分层聚类指定五列住房定量特征
勾选面积、楼层、总楼层、单价与总价后运行。

如何阅读输出

下表是切成三枝后的簇占用,不是簇中心。合计 N=212:类别 A 52(24.53%),类别 B 51(24.06%),类别 C 109(51.42%)。A 与 B 只差 1 套,说明树上有两枝几乎对称的小合并;C 占 51.42%,是最先吞掉大量叶子的大枝。表里没有面积或单价列,不要把占用误写成「C 一定是高总价」。

分层聚类结果表
项目类别统计量取值
分层聚类类别 A频数52
分层聚类类别 B频数51
分层聚类类别 C频数109
分层聚类合计有效样本 N212
分层聚类类别 A占比(%)24.53
分层聚类类别 B占比(%)24.06
分层聚类类别 C占比(%)51.42

左右滑动可查看完整表格

教学示例表在 StatsX 工作台中的计算结果口径。

分层聚类占用结果表
工作台分层聚类表,三类人数应与上表一致。
分层聚类树状图
树状图展示合并顺序;切分高度改变时,占用表的 A/B/C 会整枝改写。
分层聚类切分后的簇占用图
占用图的人数应与结果表频数列一致;完整数字以表为准。

本切面有效行是 212,不是综合评价全表约六百套。列表删除会丢掉任一特征缺失的房源,占比也会被改写。C 大并不自动等于「业务上最重要的客群」,只说明在当前连接规则下,这枝吃进了更多叶子。

阅读顺序:完整个案 N → 三枝占用是否极端失衡 → 回到树上看切分高度是落在长枝还是短枝 → 换 Ward / 组平均做稳健性,看 A/B 是否对调、C 是否仍过半。树只能告诉你合并史,不能告诉你因果。写论文时同时报告连接方法、是否标准化、切了几枝,以及这张占用表。

理论与公式

对每个定量特征做标准化后,凝聚算法维护当前簇集合。每一步选择使连接距离最小的一对 (U,V) 合并。Ward 连接最小化合并导致的组内平方和增量:

组平均连接改用两簇点对距离的平均;完全连接用最远点对;单连接用最近点对。切分高度 h 把所有在 h 之下已经合并、在 h 之上尚未合并的分枝标成一类。本教学把树切成三枝,于是占用满足

本例 N=212,(52,51,109)。不同连接给出不同的 Δ,因而同一 h 切出来的占用可以完全改写。树状图的纵轴是合并距离,不是 K-Means 的迭代轮次;横轴叶子顺序只为少交叉,没有时间含义。

注意事项

  • 切几枝是事后决定。换高度等于换占用,不要把本页的 3 枝写成唯一自然分类。

  • 未标准化时总价量纲会主导 Ward 增量;写方法时必须说明是否 Z-score。

  • C 占 51.42% 时,后续若拿簇标签做方差分析,功效和解释都会被大枝带走。

  • 单连接容易拖成链条,树看起来「很深」但业务上可能只是噪声桥。

  • 城市、区域、房屋类型没有欧氏含义,不要为了「信息更多」硬塞进距离。

  • 全表行数与本表 N 不一致时,以完整个案为准,并在论文里写删除规则。

常见问题

参考文献

  • Ward, J. H. Hierarchical grouping to optimize an objective function[J]. Journal of the American Statistical Association, 1963, 58(301): 236–244.

  • Murtagh, F., Contreras, P. Algorithms for hierarchical clustering: an overview[J]. Wiley Interdisciplinary Reviews: Data Mining and Knowledge Discovery, 2012, 2(1): 86–97.

  • 周志华. 机器学习[M]. 北京: 清华大学出版社, 2016.

  • 张文彤, 董伟. SPSS统计分析高级教程[M]. 高等教育出版社.