一句话定义:表示坍缩(Representation Collapse)指模型学到的表示空间退化:语义上差别很大的输入,被映射到几乎相同的向量上,或者全都挤进一个很低的子空间,导致模型看上去什么都能应付,实际上已经分不开了。
打个比方:一座图书馆。理想情况下,每本书有唯一索书号,讲烘焙的挨在一起,讲历史的在另一头。坍缩就是管理员偷懒,把所有书都堆到同一个角落,索书号一律写成"A001"。你问"找本讲烘焙的",他随手抽一本给你,好像也能答上;但你要找"那本讲欧包发酵的",他挑不出来。检索、去重、聚类、推荐这些靠"向量距离"吃饭的功能,会一起悄悄失效。
两种常见形态:
- 完全坍缩(total collapse):所有输入输出同一个向量,编码器退化成常数函数。
- 维度坍缩(dimensional collapse):向量没有完全一样,但都躺在一个很低的子空间里——比如 768 维里只有几维在动。看起来多样,实际自由度极低。
为什么会发生:
- 目标太"宽容"。自监督对比学习里,如果只有"拉近正样本"、没有"推开负样本",模型会发现"全部输出同一个向量"是最省力的解,损失直接降到最低。这是经典的捷径解(shortcut solution),所以才有 stop-gradient、方差-协方差正则、白化(whitening)这些补丁。
- 训练信号太稀疏。推荐系统、多任务模型里,长尾用户和长尾任务样本极少,梯度推不动它们各自的向量,最后大家一起滑向"平均值"。
- 可更新方向太少。小数据微调,或者用低秩适配(如 LoRA 一类方法)只更新少量参数时,模型倾向用少数几个方向解释所有输入,区分度被压扁。
和相邻概念的区别:
| 概念 | 说的是什么 | 典型表现 |
|---|---|---|
| 表示坍缩 | 表示空间退化,不同输入挤成一点 | 检索、聚类、区分能力下降,但训练损失可能很漂亮 |
| 过拟合 | 记住了训练集的细节和噪声 | 训练集好、测试集差 |
| AI 词典:灾难性遗忘">灾难性遗忘 | 学新任务时丢掉旧任务的能力 | 旧任务指标断崖式下跌 |
| 过度平滑 | 图神经网络深层节点特征趋同 | 节点难以区分,层数越深越明显 |
坍缩最迷惑人的地方就在表格第一行:它不报错、不告警,只是默默把模型的"分辨率"调低了。
对从业者的意义:别只盯 loss 和准确率。抽一批样本的向量,算算平均余弦相似度、看看有效秩(effective rank)、画个降维图看是否糊成一团。经验上,如果两个八竿子打不着的样本相似度都在 0.9 以上,基本可以怀疑坍缩了。做 RAG、向量检索、推荐的团队尤其要盯这个指标——向量全挤在一起,召回率会莫名偏低,而日志里什么异常都没有。
对普通职场人:如果你在用向量库做语义搜索或内容去重,发现"搜什么都是差不多那几条",除了怀疑数据脏,也值得怀疑是嵌入模型塌了。换模型前建议先在小样本上验证一下,具体选型以官方页面为准。
