监督学习依赖明确标签,而真实业务中很多数据一开始并没有标签。用户行为、交易流水、设备日志、文本集合、图像特征,往往只是大量样本和特征。无监督学习的价值,就是在没有人工答案的情况下,尝试发现数据内部结构。
无监督学习并不直接回答“对不对”,它更像一种探索工具:把相似样本放在一起,把异常样本分出来,把高维结构投影到低维空间,让人能看见数据中原本隐藏的模式。
一、无监督学习适合什么问题
常见场景包括:
| 场景 | 目标 |
|---|---|
| 用户分群 | 按行为、价值、偏好划分人群 |
| 商品分组 | 发现商品风格、价格带或需求层次 |
| 日志分析 | 识别常见运行模式和异常模式 |
| 文档聚类 | 把相似主题文章归为一类 |
| 特征探索 | 辅助理解数据结构和后续建模 |
这类任务的重点不是追求一个唯一正确答案,而是得到业务可解释、可行动、可复用的分组。
二、聚类不是直接套算法
聚类之前,要先处理数据表示。距离度量对聚类结果影响极大。数值特征如果没有缩放,金额、次数、时长等不同量纲会互相压制。类别特征如果编码不当,也可能制造不存在的距离关系。
一个基本流程是:
- 明确样本粒度,例如用户、订单、会话或商品。
- 选择能表达差异的特征。
- 处理缺失值、异常值和极端值。
- 做标准化、归一化或向量化。
- 选择聚类算法。
- 结合指标和业务解释评估结果。
聚类结果一定要回到业务语境中解释。一个算法分出的簇,如果不能解释、不能运营、不能验证,价值就很有限。
三、K-Means:最常用的聚类基线
K-Means 的思想很直接:预先指定簇数 K,不断把样本分配给最近的簇中心,再更新簇中心,直到收敛。
优点:
- 简单高效,适合大规模数据。
- 结果容易理解。
- 可以作为聚类任务的第一版基线。
局限:
- 需要提前指定
K。 - 假设簇近似球形。
- 对异常值敏感。
- 不适合复杂形状的数据分布。
工程上常用肘部法、轮廓系数和业务可解释性一起选择 K。不要只看某一个指标,因为聚类本身没有绝对标签。
四、DBSCAN:按密度发现簇和噪声
DBSCAN 不需要指定簇数,而是根据密度连接样本。它有两个关键参数:邻域半径 eps 和最少样本数 min_samples。
适合场景:
- 簇形状不规则。
- 需要识别噪声点。
- 数据分布存在明显密度区域。
局限:
- 参数敏感。
- 不适合不同密度差异很大的数据。
- 高维空间中距离度量容易失效。
DBSCAN 常用于地理位置、异常轨迹、设备状态和空间分布类任务。
五、高斯混合模型:软聚类思想
K-Means 会把每个样本硬分配到某个簇,而高斯混合模型会输出样本属于每个簇的概率。这种软聚类在业务中很有用,因为用户或商品不一定只属于一个群体。
例如一个用户可能同时具备“价格敏感”和“高频活跃”两种特征。概率输出可以用于后续规则、推荐或运营策略。
六、如何评估聚类结果
常见指标包括:
| 指标 | 含义 |
|---|---|
| Inertia | K-Means 内部距离和,越小越紧凑 |
| Silhouette Score | 衡量簇内紧密和簇间分离 |
| Davies-Bouldin | 衡量簇间相似度,越低越好 |
| Calinski-Harabasz | 衡量分离度和紧凑度 |
如果有少量人工标签或业务标签,也可以用 NMI、ARI 等外部指标。但更重要的是业务验证:不同簇在留存、购买、风险、活跃度等指标上是否真的不同。
七、落地建议
无监督学习最容易犯的错误,是把聚类结果当成事实。聚类只是从某种特征视角出发得到的一种划分方式。换一组特征、换一种距离、换一个时间窗口,结果可能完全不同。
更稳的做法是:先用聚类做探索,再用业务指标解释簇,最后把有价值的分群沉淀为可复现的数据标签或特征。这样无监督学习才会从一次性分析变成长期可用的数据资产。