聚类分析
在没有类别标签时,按相似性把样本分成若干组:组内尽量像,组间尽量不像。聚类是无监督学习,结果是一种关于数据几何结构的假设,必须用业务含义、稳定性和内/外部指标共同检验,而不能把算法输出的簇编号直接当成“发现的真理”。
可以把它想成“先画群像,再起名字”。例如:
- 没有既定等级时,把客户按消费与活跃模式分成若干群体;
- 把地区按产业结构与发展水平划分类型,便于分类施策;
- 在传感器或行为序列中发现几种典型工况/模式,并标出噪声点。
建模竞赛里,聚类题的核心不是把某个内部指标调到极值,而是:距离定义是否合理、簇是否稳定可复现、每一类能否用少量特征讲清剖面。没有放之四海都最优的聚类法。
一、这一门类解决什么问题
当题目要求“客户分群”“地区类型划分”“行为模式发现”,却没有金标准标签(或标签仅用于事后对照)时,就用聚类。典型信号:
- 输出是簇标签或隶属度,而不是预定义类别的预测准确率;
- 需要剖面图、雷达图、箱线图解释每类在原始指标上的高低模式;
- 可能存在噪声点、不规则形状簇、层次结构或软边界;
- 题目强调“发现结构/分型”,而不是“学习已有标注”。
先定义相似性(欧氏距离、曼哈顿、余弦、马氏距离、核/密度可达等),再选算法。量纲不统一时先标准化或稳健缩放;高维稀疏时要重新考虑距离是否还有意义。
本门类方法大致沿四条主线展开:
- 原型划分:K-means / K-means++ / K-medoids;
- 层次结构:系统(层次)聚类与树状图;
- 软分配与概率模型:模糊 C-均值、高斯混合 + EM;
- 图与密度:谱聚类、DBSCAN、OPTICS。
二、如何选择方法
| 问题信号 | 优先考虑 | 所在位置 |
|---|---|---|
| 球状簇、需指定 、样本量中等偏大、要快 | K-means / K-means++ | K-means、K-means++ |
| 中心必须是真实样本、对离群点更稳健 | K-medoids | K-medoids |
| 要层次与树状图、样本量不太大、需多粒度 | 系统(层次)聚类 | 系统聚类(层次聚类) |
| 边界模糊、样本可属于多类、需隶属度 | 模糊 C-均值 | 模糊C-均值聚类 |
| 软分配、椭圆簇、要概率模型与协方差结构 | 高斯混合 + EM | 高斯混合模型与EM算法 |
| 非凸形状、适合相似度图/流形结构 | 谱聚类 | 谱聚类 |
| 任意形状、要自动识别噪声/离群 | DBSCAN | 密度聚类/DBSCAN |
| 密度不均、要考察可达距离与簇层级 | OPTICS | 密度聚类/OPTICS |
这张表用于快速定位。最终选择还要看:簇形状是否近似球状、是否必须指定 、有无噪声、样本量和可解释性要求。能用 K-means 讲清结构时,不必先上谱聚类或复杂密度方法。
三、方法选择的决策逻辑
是否必须输出硬标签 + 指定 K 的球状分群?
├─ 是,速度优先 → K-means++(多初值)
├─ 是,中心须为真实点/有离群 → K-medoids
├─ 要隶属度/软边界 → FCM 或 GMM
├─ 要树状合并过程 → 层次聚类
├─ 簇非凸、有相似图 → 谱聚类
└─ 任意形状 + 噪声点 → DBSCAN;密度不均再看 OPTICS
的选择不要只看肘部法拐点:联合轮廓系数、CH、DB 指数、间隙统计,并强制用“每类能否用 3–5 个特征讲清”做业务裁决。多个 下排序都稳定的结构,比单一最优 更可信。
四、统一的建模工作流
- 认数:变量类型、量纲、异常值、是否混入类别变量(需编码或 Gower 等距离);
- 预处理:缺失处理、标准化/稳健缩放;参数与规则写清,保证可复现;
- 降维探路(可选):PCA/可视化只用于理解,不自动等于“先降维再聚类一定更好”;
- 定距与算法:明确距离/核/密度参数,选定算法族;
- 定 或密度参数:多指标 + 稳定性(bootstrap 或多随机种子);
- 拟合与诊断:簇大小是否极端、轮廓是否整体偏低、是否对初值过敏;
- 剖面解释:各类中心/中位数、雷达图、相对全局的高低模式,给出克制的命名;
- 对照:若事后有弱标签或业务分群,做外部一致性(ARI/NMI 等)但勿循环论证;
- 灵敏度:去掉可疑变量、改距离、改 ,看主结构是否还在。
五、评价指标:内部指标不是终点
常用内部指标(无标签时):
- 轮廓系数:靠近 1 表示匹配本簇且远离他簇;整体偏低要怀疑 或距离;
- 肘部法(SSE/):找降速拐点,但拐点常不唯一;
- Davies–Bouldin / Calinski–Harabasz:辅助比较不同 ;
- 稳定性:对重采样或扰动后的标签一致性。
有外部参照标签时可用 ARI、NMI 等,但建模题里“参照”若来自同一批主观划分,解释要谨慎。
补充原则:
- 内部指标最优 ≠ 业务上最好用;
- 簇数过多会导致“过解释”,过少会抹平差异;
- 密度聚类的噪声点比例本身就是结果的一部分,应报告而非强行全部分完。
六、与各子目录/方法的对应关系
| 子目录或篇章 | 核心任务 | 典型出口 |
|---|---|---|
| K-means / K-means++ | 球状簇的快速划分 | 簇标签与中心 |
| K-medoids | 以真实样本为中心的稳健划分 | 中心样本与簇 |
| 系统聚类(层次聚类) | 多层次合并/分裂结构 | 树状图与切割方案 |
| 模糊C-均值聚类 | 软隶属度分群 | 隶属度矩阵 |
| 高斯混合模型与EM算法 | 概率混合与椭圆簇 | 成分参数与职责 |
| 谱聚类 | 相似度图上的划分 | 非凸簇标签 |
| 密度聚类 | 密度可达与噪声识别 | 任意形状簇 + 噪声点 |
聚类与 05 分类与判别 的分界:训练阶段有没有标签。与 01 数据预处理 中降维的关系:PCA 可用于可视化或去共线,但“方差最大方向”不一定是“分簇方向”。与 07 综合评价 的衔接:有时可先聚类分型,再在类型内做排序评价,避免把异质样本硬塞进同一套权重。
七、使用提醒与常见陷阱
- 不标准化就欧氏聚类:量纲大的变量会劫持距离;
- 把 当调参游戏:只报轮廓最高的 ,不给剖面与稳定性;
- 单次随机初值:K-means 对初始化敏感,应多初值或 K-means++ 并报告波动;
- 高维距离失效:维度很高时欧氏邻域变得均匀,需降维、换度量或特征筛选;
- 强制解释因果:簇标签命名要克制,聚类不证明“因为属于某群所以导致某结果”;
- 类别变量当连续:乱编码后直接 K-means,结构可能是假的;
- DBSCAN 参数拍脑袋:
eps与minPts不结合 k-距离图或领域尺度时,要么全是噪声要么并成一块。
八、推荐学习顺序
- 先读本导读,建立“距离 → 算法 → 验证 → 剖面命名”的闭环;
- 基础:标准化、距离、轮廓系数与 的多指标选择;
- 原型法:K-means / K-means++ / K-medoids;
- 层次聚类:树状图与连接准则(单连接/全连接/平均/Ward);
- 软聚类:模糊 C-均值、GMM+EM;
- 进阶结构:谱聚类、DBSCAN、OPTICS。
进入具体方法页后,按「直观理解 → 适用场景 → 原理 → 关键决策 → MATLAB → 解释 → 误区 → 小结」阅读并复现。最终写进论文的,应是可复现的分群方案 + 稳定性证据 + 可叙述的类剖面,而不是一张仅含簇编号的散点图。