很多工程师用UMAP或t-SNE把高维向量压到二维,看到清晰的团簇便以为发现了业务分类规律。这往往是算法的近邻聚集特性制造的人工孤岛。高维聚类绝不能基于二维投影。
在做用户画像分群、大模型文本嵌入(Embedding)分析或者生物信息学分析时,很多团队都有过这样的体验:把成百上千维的高维向量丢进 UMAP 或 t-SNE,降到二维平面画个散点图。屏幕上立刻浮现出几块边界分明的「数据孤岛」。
团队兴奋地给每个团簇打上标签,甚至直接在二维坐标上跑 K-Means,以为发现了绝妙的细分市场或潜在模式。
停下来,冷静一下。这些看起来泾渭分明的聚类,很可能是算法凭空捏造出来的数学幻觉。

上图对比了不同降维算法处理相同数据时的表现:
同一个数据集,为什么会有截然相反的视觉呈现?
因为它们的目标函数从底层就完全不同。
这就带来了一个残酷的事实:UMAP 和 t-SNE 最擅长保留「谁是你的邻居」,但在保留「你离别人到底有多远」上表现极差。
即使你的高维数据原本是连续均匀分布的流形,只要局部密度有微弱扰动,UMAP 就会像切蛋糕一样把它撕开,在二维画布上拼凑出若干个看起来毫不相干的独立团块。
许多人看降维图时常犯一个直觉错误:不仅看点与点是否聚在一簇,还拿尺子去量簇与簇之间的间距。
「看,簇 A 和簇 B 离得很近,说明这两个品类的用户心智相似;簇 C 飘在十万八千里外,说明是极端异构群体。」
这种推论在数学上完全站不住脚。在 UMAP 和 t-SNE 的投影机制下:
你在图上看到的距离和面积,很大程度上只是优化求解器在低维空间摆放拓扑图时的排版结果,与真实语义相似度无关。
机器学习工作流中最忌讳的动作,就是把经过 UMAP/t-SNE 压缩后的二维坐标,作为后续聚类算法(如 K-Means 或 DBSCAN)的输入特征。
把高维嵌入压成 2D 已经丢失了绝大部分维度的几何信息,并引入了非线性的局部撕裂。如果你直接对 2D 坐标聚类,实际上是在让算法对「降维算法产生的投影畸变」进行聚类,而不是对原始数据聚类。
这种操作纯粹是在给算法伪影发合格证。
处理高维嵌入向量时,正确的工程实践应当遵循以下原则:
聚类永远在高维原生空间完成
要做用户聚类、文档去重或意图识别,直接在原生的 512 维或 768 维空间跑聚类。高维下欧氏距离容易退化,可以选用余弦相似度搭配层次聚类、高斯混合模型,或者针对高维向量索引的专门图聚类算法(如 Leiden / Louvain)。
UMAP 仅用于视觉展示与辅助排查
将聚类完成后的「类别标签」作为颜色,映射回 UMAP 的二维图里去观察。如果原本高维聚好的一类在 UMAP 里被撕成两半,不要慌张,先回头去算高维层面的类内距离分布,别被二维画布牵着鼻子走。
多算法交叉校验
在做探索性数据分析(EDA)时,不要只看一张 UMAP 图。同时画出 PCA 前两个主成分散点图。如果 PCA 上呈现的是一整片连续渐变,而 UMAP 呈现出断裂孤岛,就必须警惕:你很可能把一段连续变化的特征谱,误判成了若干离散分类。
免费获取企业 AI 成熟度诊断报告,发现转型机会
关注公众号

扫码关注,获取最新 AI 资讯
3 步完成企业诊断,获取专属转型建议
已有 200+ 企业完成诊断