数据工程观察 · 2026年09月13日
五条数据工程动态:递归训练坍缩是 checkpoint 自带属性、TransClean 给 LLM 翻译输出建立噪声基准、满文 OCR 量出合成数据的天花板、非语言数据只能部分顶替语言数据、263 个 checkpoint 的遗忘审计揭示批归一化统计量会挪动结论
今天这五条讲的都是同一件事的另一面:数据动作的收益,往往不取决于动作本身,而取决于它落在哪个对象上。同一份被自己的输出污染的语料,13 个 checkpoint 走完五代,有的还在写通顺段落,有的只剩碎片和循环;同一批合成数据,放进 VLM 是补药,放进 CRNN 几乎没用;同一套遗忘流程,换个 checkpoint 重拟合一遍批归一化统计量,结论就翻了。
递归训练里,脆不脆弱是 checkpoint 自带的属性
事件概述
模型生成的文本正在回流进训练语料,反复在自家输出上训练会压垮输出多样性,这一点已有不少证据。过去的研究集中在「哪些协议、哪些混合比例会导致坍缩」,却很少问:同样的协议下,不同模型的差异有多大。这篇论文把协议固定住,让 13 个公开 checkpoint 组成一个共用语料池的生态,迭代五代,结果分成了一条五倍宽的谱带。
技术细节
衡量指标是 u4(unique 4-gram 占比,越低越重复)。13 个模型跑在同一套生成、混合、微调协议下,第五代的 u4 三次种子均值仍从 0.187 铺到 0.940,中位数 0.509;跨模型标准差从第 0 代的 0.018 涨到第五代的 0.249。脆弱端是 StableLM、SmolLM、Minitron、Granite,稳健端同样混着几个系列,读不出「家族效应」。换成 self-BLEU 或困惑度排序,与 u4 排序的相关分别是 0.995 和 0.81;把 u4 分母钉死在每模型 2 万个 4-gram,相关性仍在 0.995 以上,没有模型移动超过一位。
作者另外搭了六个替代环境(主导成员分别换成 SmolLM2-1.7B、phi-2、Qwen3-1.7B,各自占 28%;全均匀份额;混入 25% 或 50% 人类文本,各跑三颗种子),与主生态的排序 Spearman 在 0.91 到 0.97 之间。更省事的筛查是「自环」:单个模型只吃自己的输出,两代读数与生态最终排序相关 0.599(p=0.035),三代升到 0.676(p=0.014),五代到 0.797 和 0.852。自环有明确的失效模式——Qwen2.5-1.5B 和 SmolLM3-3B 是「晚起步」型,多样性断崖发生在第二代之后,固定两代的读数会刚好停在断崖之前。
干预手段分两类,效果差得很远。生成端收紧采样:Minitron-4B-Base 基线(top-p 0.95)到第三代只剩 u4 0.111,top-p 收到 0.8 变成 0.978,温度降到 0.7 是 0.930,top-p 放开到 1.0 只剩 0.009;温度升到 1.3 时,六个覆盖谱带的模型全部快速坍缩,第三代 u4 落在 0.003 到 0.231。数据端做过滤,只是把下落变慢,停不住。
对大模型数据工作的影响
选 base checkpoint 时,多了一个此前没人报的维度:抗递归污染能力。它不随参数规模单调变化(同系列三档尺寸不构成单调阶梯),静态指标也预测不了,但两到三代自环就能廉价地排个序。更实际的提示在采样端——语料里混进多少自家生成内容,很大程度上由生成时的 top-p 和温度决定,与其事后过滤,不如在生成的那一刻把低概率尾巴切掉。
相关链接
TransClean:给 LLM 翻译输出定一份「噪声」清单
事件概述
用 LLM 做机器翻译越来越普遍,但输出里常夹带译文之外的东西——语言标签、解释说明、双语重复。作者把这叫 translation noise,目前既没有专门基准,也缺系统研究。这篇 WMT26 论文分析了 12 个 LLM 在 22 个语言对上的 79.2 万条输出,归纳出 12 种反复出现的噪声模式,并建了 TransClean 基准。
技术细节
噪声率用一个轻量规则检测器估算,覆盖解释性文本(正则匹配元语言标记)和目标语言错误(fastText 语言识别,置信度阈值 60%)两类。模型之间差异极大:gemma-3-27b-it 的噪声率最高到 99.73%,人工检查确认它频繁在译文旁附带解释。
基准含 9900 对「噪声—干净」译文,其中 8800 条合成生成、1100 条人工筛选的真实噪声。评测两条抽取路线:一是基于 span 的抽取(用翻译质量估计模型定位 span),二是提示 LLM 直接隔离译文。检测结果接近饱和,多数方法在两类子集上都在 96% 以上,规则检测器在人工子集上拿到 98.27%。抽取难得多:最好的 Qwen extractor 在合成子集上 54.07%、人工子集上 52.18%(严格精确匹配)。按噪声类别拆开更直观——格式化类噪声 Qwen 抽对 89.91%,内容类掉到 17.68%,组合类 14.95%。Aya extractor 表现反常,在人工子集上反而更高,原因查出来了:它对已经干净的译文有约 40%(892/2200)会做改写,精确匹配下自然算错,clean 分块准确率只有 59.91%。
对大模型数据工作的影响
用 LLM 批量产平行语料或指令数据时,「检测有没有脏」基本已解决,「把干净部分挖出来」远没解决——过半数的脏输出抽不回来。按类别的准确率差距说明,格式化噪声可以靠规则兜住,内容类噪声(改写、加解释、夹带原文)需要更强的抽取器。还有一条隐性的:抽取器本身可能擅改原文,Aya 那种 40% 的改写率如果进到数据流水线,等于在清洗环节引入新噪声。
相关链接
合成数据补不上的那一截:满文 OCR 的四组对照
事件概述
满文是清代主要语言之一,档案正在数字化,但大规模检索仍然困难。此前工作表明,只在合成满文词图上训练的视觉语言模型能在真实清档上做到 87.4% 词准确率,合成到真实之间留着明显缺口。这篇论文用 6 万张合成图与 20,306 张真实历史词图,把四个识别器、四种训练制度排成 16 个配置,量这个缺口有多大、怎么补。
技术细节
四个识别器是 LLaMA-3.2-11B-Vision-Instruct、Pixtral-12B-2409、Qwen3-VL-8B-Instruct(统一用 Unsloth + LoRA,视觉与语言模块一起调)和一个 CRNN(9 层 CNN + 4 层双向 LSTM + CTC)。四种制度是纯合成(SYN)、纯真实(REAL)、混合(JOINT)、先合成后真实(SEQ)。测试集 ARCH-test 沿用既有 753 张图基准,像素哈希确认与训练集无重复图;词汇层面 SYN 只覆盖 40.4%,真实训练集覆盖 75.7%,两者合起来 83.3%。
ARCH-test 词准确率(%)按 SYN / REAL / JOINT / SEQ 排下来:LLaMA 是 87.92 / 91.24 / 95.09 / 96.28,Pixtral 是 81.94 / 89.11 / 95.09 / 95.75,Qwen 是 62.42 / 70.92 / 85.39 / 86.99,CRNN 是 64.28 / 95.88 / 95.48 / 95.75。(Qwen 在统一微调配方下训练,而非其专用配方,读数偏低有一部分来自这里。)
没有任何 SYN 配置超过 87.92%,七个用到真实图的配置落在 95.09% 到 96.28%。合成数据对三个 VLM 都是明显加分,对 CRNN 的边际作用却取决于训练目标。SEQ 相对 JOINT 的点估计高出 0.27(CRNN)到 1.59(Qwen)个百分点,但配对的 95% 置信区间全部包含零,不构成稳定优势。四个识别器错误互补,投票把准确率推到 98.27%,不需要额外训练;十八世纪满文词典被用来裁决分歧。
对大模型数据工作的影响
合成数据的天花板在这组数字里很直白:加再多合成图也过不了 88%,两万张真实图把三个 VLM 一起抬到 95% 以上。真实数据的价值还体现在词汇覆盖上——40.4% 对 75.7%,这个差距是合成流程按固定词表生成的直接后果。另一条值得带走的是 SYN→SEQ 的路径对紧凑模型同样有效:CRNN 一旦拿到真实图就进入领先区间,说明在真实数据充足的场景里,模型规模不是识别精度的决定因素。
相关链接
非语言数据能顶多少语言数据:BabyLM 给的答案是「一半」
事件概述
这篇 EMNLP 2026 的 BabyLM 论文问的是:先在非语言数据上训练,能不能诱导出对自然语言有用的先验,从而省下一部分语言数据。答案只有一半是肯定的——非语言数据可以在下一 token 预测这个训练目标上部分替代语言数据,撑不起更广的语言学泛化。
技术细节
做法是把符号数据当权重初始化,从三个维度评估:多语言语料上的下一 token 预测损失、训练过程中的权重位移、下游语言学基准。
损失这一维上结论偏正面。每个条件都不劣于「不训任何结构」的基线,收益最清晰的是 Music、两种合成文法 PCFG-uni 与 PCFG-Zipf、以及元胞自动机 CA-16;PCFG-uni 与 PCFG-Zipf 的曲线重叠,说明给词频加 Zipf 分布并没有比均匀分布更利于迁移。CA-256 早期有优势,到 2.2 亿 token 处收敛回基线,更嘈杂的动力学没能带来同样有用的初始化。权重位移分析给了机制上的线索:结构化预训练后,后续语言训练的自注意力矩阵位移更小,模型被放到了参数空间里更有利的位置。
限制写在对照里。一个只用三语言语料中某一种语言追加英文维基数据的基线,把所有这些符号数据远远甩在后面——非语言迁移拿到的损失改善,抵不过「再喂一点真语言」。下游语言学基准上,更低的损失也没有稳定地换成更好的表现。
对大模型数据工作的影响
对「高质量文本不够了」这个焦虑,这篇给出的是个冷静的边界:符号数据能把损失曲线往下压,但压出来的那部分不等于能力。它也许能作为预训练早期的一段 curriculum,用来改善初始化;指望用音乐、文法或元胞自动机去补语言数据的缺口,目前没有证据支持。对照基线的设计也值得学——评估任何替代数据源时,都应该拿「再加一点同类真数据」做上限参照。
相关链接
遗忘审计里动的还有批归一化:263 个已发布 checkpoint 的复查
事件概述
机器遗忘是否成功,靠审计判定:把遗忘后的 checkpoint 和一个不含被删数据的重训参照物放在一起,比较被删数据、保留数据、留出测试集三项准确率,套一个通过/不通过标准。这篇论文指出,比较的两只胳膊在一件事上并不对等——批归一化层随模型一起发布的 running mean 与 running variance,是由数据拟合出来的、没有任何梯度步写入、也没有任何发布记录说明它是怎么算的。
技术细节
审计的做法是:权重一个字节都不动,只把这部分状态在「该发布自己保留的数据」上重拟合,再重算它公布的数值与结论。规模是 263 个已发布的带 BN 的 checkpoint。结果显示,221 个已发布 checkpoint 里有 47 个被推过了该发布自身种子所展示的波动范围,其中几个落在「方法均值没动」的方法里——动的是 checkpoint 的属性,不是方法的属性。
作者接着排除了一个直觉解释。在一个固定拟合池里把保留记录换成被删记录,已发布的那个格子几乎不动;真正与之相关的是该 checkpoint 发布的状态离任何一次重拟合有多远。落到已发布的判定上,影响真实但有限:12 个判定发生翻转,4 个超出实测的重校准预算,2 个在所有重复上都超出;一个作者自己训练并摆在自身判据附近的群体,一个都没超。方法层面做了功效检验——把每个家族的真实位移居中到真均值为零,再植入 0.0 或 3.0 个百分点,估计器在全部十八条臂上都准确还原了植入值,neggrad 与 random-label 的零结果是有功效的零,bad-teaching 在三个变体簇上则两种植入都无法分辨。
对大模型数据工作的影响
数据删除的可验证性比通常认为的更依赖发布规范。合规口径的「已删除」要能被第三方复核,光发权重不够,还得说明随模型一起发布的那些拟合统计量是按什么索引集、什么变换、什么累积规则算出来的。权重一模一样、只改这部分状态就能让近五分之一的 checkpoint 越过自身噪声带,意味着跨论文比较遗忘数字时,必须先对齐拟合约定。对做数据溯源和成员推断的人来说,这也是一条提醒:BN 统计量本身携带训练集信息,发布时它与权重一样属于需要审视的面。
相关链接