聚类

层次聚类:无需预设组数的自底向上数据分组方法 | Lattice

层次聚类是一种将相似数据点逐步合并的分析方法。当你希望探索数据内部结构,却不确定应该分成几类时,它能构建出一棵清晰的合并树。通过这棵树,你可以根据业务需求灵活选择切割位置,从而识别出数据中潜在的群体或模式。

发现数据的层级结构

不同于一次性将样本划入指定组别的算法,层次聚类通过“聚合”策略,逐一合并最相似的数据对。这种方式不仅能完成分组任务,还能完整保留样本间的距离演变过程。这对于需要理解数据“演变路径”或观察细微类群划分的场景非常有价值。

在 Lattice 中,该工具会自动处理标准化步骤,确保不同度量单位的列能在统一尺度下进行比较。你只需关注生成的合并矩阵,即可获得关于样本归组逻辑的直观证据。

灵活选择聚类颗粒度

层次聚类的核心优势在于其结果的“可切分性”。一旦计算完成,你可以指定想要的分组数量,或者通过设定距离阈值来动态切断合并路径。这意味着在面对业务调整时,你无需重新运行全部计算,只需根据合并树调整切分标准即可快速获得新的细分结论。

这种方式在处理复杂的数据表型分群或工艺模式识别时尤为有效,它允许你在“粗粒度概览”与“细粒度挖掘”之间随时切换。

针对不同场景的度量选择

层次聚类支持多种合并准则(如 Ward 最小方差法、单链接、全链接等)以及距离度量(欧几里得距离或曼哈顿距离)。Ward 法擅长发现形状均衡的簇,而曼哈顿距离则在处理含有序等级的数据时表现得更加稳健。

Lattice 会根据你选择的度量标准自动校验有效性,确保生成的合并树在逻辑上是严谨的。通过复用统一的 silhouette 指标,你可以随时评估当前配置下聚类结构的质量,避免误入数据噪声陷阱。

1 · Intent → method

An LLM picks cluster_hierarchical from a fixed catalog.

2 · Method → numbers

Deterministic Python engine runs the math. Same input → same output.

3 · Numbers → plain language

A second LLM translates the result into your domain’s vocabulary.

  • 为什么层次聚类不需要像 K-means 那样预先输入组数?

    层次聚类采用自底向上的合并方式,会生成一棵完整的合并树(合并矩阵)。你可以在分析完成后,通过查看这棵树的结构来决定在哪个距离点或组数位置进行切分,这样能更灵活地探索不同粒度下的数据分布。

  • 如何判断层次聚类分出的结果好不好?

    你可以关注输出的轮廓系数(silhouette score),该指标反映了簇的紧凑度和分离度。此外,观察合并树(dendrogram)的形状也很重要,如果合并过程中的距离变化呈现合理的阶梯状,通常说明该方法在当前数据下表现良好。

Tool 输入字段

Schema for cluster_hierarchical not exported yet (run pnpm export:registry).