Vince Jiang

CSCI3230 / 课程伴读 · 本站更新

CSCI3230 L05 · Part 5/5 Summary

课程:CSCI3230 (ESTR3108) Fundamentals of Artificial Intelligence · 2026T1 本讲:L05,第 5 部分 / 共 5 部分 · 原件 L05-Clustering-2026T1.pdf(本地课件) p.78–80 定位:用输出形状和超参数比较三种方法。 前后:上一份 Agglomerative hierarchical clustering

回到选择问题

三种聚类各在固定什么(p.78–80)

p.78 是分节页;p.79 回顾三类算法;p.80 提供课件阅读入口及 ESL 第 14.3 节。第一次学完不需要立刻追所有扩展。先用同一组小数据,检查自己能否说清每种方法做什么。

p.79 Clustering is hard to evaluate, and highly application dependent.

这里的困难不是“不能评价”,而是没有一个对所有用途都正确的分组标准。先定义样本是什么、哪些特征应相似,再决定希望得到几个代表中心、密集团加噪声,还是一棵不同尺度的关系树。

p.79的原小结还有两层背景:聚类是历史悠久、仍在研究的无监督学习方向;它依据相似性归组,因此评价高度依赖应用。p.80列三项继续阅读:Carnegie Mellon University的clustering课件、Data Clustering Algorithms综合网站,以及Trevor Hastie、Robert Tibshirani、Jerome Friedman所著《The Elements of Statistical Learning》第2版第14.3节“Cluster Analysis”。本篇保留原阅读清单,但没有把未访问的外部材料当作本次核验依据。

同一组点,三个不同问题

补充自取例:数轴上五点为 0、1、2、8、9。以下数字只是帮助比较,不是讲义另给的一道题。

K-Means:先说要两簇,设初中心为 0 和 8。逐点到最近中心后,0、1、2 为一簇,8、9 为另一簇;更新中心为 1、8.5。再分配,成员不变。这里我们固定了“两个中心”这个任务;输出除了成员还包括中心。某点即使很远,也必须归给某个中心,算法本身没有噪声这一输出身份。

DBSCAN:不输入两簇,改设半径 1、MinPts=3,含自身。点 1 的邻域是 0、1、2,故为核心;0、2 被接纳为边界。8、9 各只有两点邻域,没有核心,二者都算噪声。人眼觉得右边两个点是一小团,仍不能无视门槛擅自判成密度簇。若把 MinPts 降到 2,右边才会形成另一簇。这不是两种算法谁算错,而是回答的问题不同。

Single-link 凝聚层次:每点先独立。距离 1 的边包括 0–1、1–2、8–9,按固定平局规则逐步合并后,在距离 1 这个尺度得到 {0,1,2} 与 {8,9};两组最近原点是 2、8,距离 6,最后在 6 合成整体。完整输出记录这些事件;需要两簇时,可以在 1 与 6 之间切树。它本身也没有 DBSCAN 的噪声身份。

三张纸上应写不同内容

方法 先决定 手算时每一步写什么 如何检查
K-Means K、初中心、距离、停止规则 点到中心的距离表 → 全部分配 → 均值 成员覆盖全部点,更新中心是成员平均
DBSCAN 半径、MinPts、距离、共享边界约定 邻域表 → 核心 → 核心连通 → 边界与噪声 自身计入,边界不能继续扩张
凝聚层次 距离、linkage、平局规则 当前最近两簇 → 新距离表 → 记录合并 每步少一簇,更新符合 linkage,树标距离

注意,表中“距离”不是可以最后才决定的装饰。若特征尺度变了,所有邻近关系都可能改变。首先回到基础篇确认输入表示,而不是只换一个算法名称。

怎样安排第二遍学习

如果距离公式仍抽象,先用两个二维点把 L1、L2、最大差、余弦分别算出来,并说清哪一种越大越相似。如果会公式却不会完整跑算法,选 K-Means 六点例从旧初值开始;不要跳到最终中心。如果 DBSCAN 总是把稀疏链连起来,回到十三点例问每个箭头的出发点是否核心。如果层次题算完却画不出树,先把四次合并事件列成表,再画包含关系。

这些是不同卡点,不应都用“再背一遍算法步骤”处理。

小检查:不要用结论替代任务

  1. K-Means 多给几个簇使 SSE 变小,是否说明结果更有用?
  2. DBSCAN 没输入簇数,为何仍需调参?
  3. 凝聚树的两片叶子画得近,能否直接断言它们距离近?
参考答案
  1. 不一定。更多簇允许把组拆细,极端每点一簇使 SSE 为零,却可能失去概括作用。需要任务和复杂度判断。
  2. 半径决定局部范围,MinPts 决定密度门槛,二者会改变核心与连通结构。
  3. 不能。子树可以左右交换。要看两点首次共享合并结点的距离,并先确认图上哪条轴是距离。

完成检查后,如果能解释“为什么这一步合法、换参数会怎样、结果没有保证什么”,比只记住最终簇成员更扎实。

补充 · 没有标签时,怎样知道自己做了有效比较(通识讲解;演示数据不属于原题)。

先固定比较对象:同一批样本、同一特征与预处理。再分别记录方法实际追求的结构:K-Means 的中心平方误差、DBSCAN 的密度连通及噪声、层次聚类的连接规则与截断位置。一个方法的内部得分不是其他方法自动共同优化的目标,不能拿 K-Means 的 SSE 排名证明所有形状上它都最佳。

还要分开“稳定”和“有用”。换初始化后分组一致,可以支持结果对这项扰动稳定;能帮助理解、检索或后续预测,才是应用层面的用途。稳定地按无关的编号把样本分开仍然可能没有价值。若有外部标签可用于评价,应说明它们只用于评估还是参与选参数,避免把无监督训练与有标签选择混成一件事。

补充:簇的编号不是分类标签,也不是稳定身份

自编结果A把点0、1归簇0,把8、9归簇1;结果B把0、1归簇1,把8、9归簇0。两次编号全部相反,但任意两点是否同簇的关系完全一致,实际分区没有变。若直接逐行比较编号,会错误地报告0%一致。

核对聚类应先比较成员集合,或比较每对点是否同组;若需要一一对齐编号,再做簇之间的匹配。还有一个不同问题:结果C把0、1、8、9全放一簇,它与A的同簇关系确实改变。不能把真实合并变化也解释成“只是换编号”。

当另有真实类别时,聚类簇也未必一一对应类别:一个类别可分成多个外观子群,一簇也可能混有多个类别。先说明希望聚类保留哪种相似性,再选择评价方式。无监督算法不直接使用标签,不等于人拿到标签后随意给编号配名就能得到可靠分类器。

本讲核心考点

  • 三种方法采用不同的分组准则,不能互借更新步骤(p.79)。
  • 距离、尺度、参数和任务共同决定结果,没有脱离应用的唯一最佳划分(p.79)。
  • 通过小例重跑算法,并逐步解释合法条件;不把本节当考试范围承诺。

附录

先完成正文的小检查;无需借助额外考试题才能理解本节。

来源与证据

  • 原件:L05-Clustering-2026T1.pdf(本地课件);对应页区间见文件头及各节标题。本页正文按 PDF 实际页号阅读;L05 当前文件共 80 页。
  • 数字演示凡非课件原例均明确标为“补充自取”;这些例子用于理解,不是教师布置的作业。
  • 附录中的历史题面保留其文件名、年份和题号,与当前作业区分;它们不能证明本学期考试范围。正文的学习检查是通识练习,不作出题预测。