第一代模型从真实资料里学习,第二代大量学第一代生成的内容,第三代再学第二代。这样层层替代下去,数据里少见的部分会先消失,后面的分布越来越窄。研究者把这个退化过程叫作模型坍缩。
2024 年发表在 Nature 的论文分析了高斯混合模型、变分自编码器和语言模型。研究里的关键条件是递归训练,下一代学到的主要是前一代生成数据。作者观察到真实分布的尾部先消失,经过多代后,学到的行为向方差很小的点收缩。
坍缩说的是递归训练
一批合成数据不会自动毁掉模型。合成数据可以用来补样本、制造特定边界情况,也可以在老师模型带着验证时训练小模型。模型坍缩研究针对的是生成数据不断取代原始分布的特定过程。把结论简化成“AI 写的都不能用”,就丢掉了实验条件。
模型坍缩也容易和生成对抗网络里的模式坍缩混在一起。后者常指一个生成器在一次训练中只会产出少数模式。这里讨论的是多代模型递归学习以后逐步忘掉原始分布。名字接近,发生的时间尺度和数据过程不同。
原论文也做了不同的保留试验。完全不保留原始训练数据的设置中,五轮后的困惑度从 20 退化到 28。另一个设置在每一代随机保留 10% 原始数据,训练十轮后仍有退化,程度小得多。这个对比说明数据来源和保留方式会改变结果。
“必然坍缩”也说得太满
后续研究区分了替换和累积。每一代用新合成数据替换旧数据,实验依然趋向坍缩。原始真实数据持续保留,各代合成数据逐步累积时,该研究在多种模型规模与架构上避免了同样的坍缩趋势。这还不是所有训练的保证,但它提醒我们不能只看数据是否由 AI 生成。
尾部消失会先伤到平均数不容易照顾的内容。训练集里一种罕见写法原本只有很少样本,生成模型抽样时可能一次也没产出。下一代看不到它,后来再让模型生成数据,这部分就更难回来。模型输出看上去依旧流畅,少见情况的覆盖已经变窄。
数据标记因此要做到样本级。只在整个文件夹上写“部分来自 AI”,排查时分不出哪一代生成、使用了什么筛选,也无法确认原始样本有没有被替换。保留清楚来源还有一个好处,某个生成模型被发现有系统偏差时,可以定位受影响的训练批次。
团队若要把合成数据放进训练集,至少要保留来源、生成模型、筛选规则和数据代次。低频类别、少数方言、罕见故障与异常样本要单独检查,因为它们正是容易在平均指标里消失的尾部。新数据进来以后,用一份始终由真实样本组成的独立测试集复核,才能看见罕见情况有没有被淹没。
总准确率还不够。测试结果要按这些低频分组拆开,记录每次训练前后的变化。常见样本涨了一点,罕见样本掉了一大截,平均分仍可能看起来不错。模型坍缩最早丢掉的内容,正需要单独一行指标才能被看见。