关于噪声数据与 LLM 预训练损失发散的实证研究
An Empirical Study on Noisy Data and LLM Pretraining Loss Divergence
作者向干净语料注入均匀随机噪声,称其类型、比例和模型深度会改变损失发散概率。
- 大规模预训练语料含噪声。作者称预训练者常推测噪声导致不稳定乃至损失发散,但该现象仍不清楚。做法是向干净数据注入受控均匀随机噪声,看它是否以及如何造成损失发散。
- 从Llama 4混合子集Dc按比例α注入受限词表上的均匀随机噪声,方式为插入或覆盖。用20个种子估计发散率:损失超最小值0.5 nats/token且连续600步。以step 1000的最大注意力logit区分高学习率发散。
- 作者称更小噪声词表与更深模型更易发散。作者报告35层2.5B在5%噪声下有15%运行发散;540M在噪声比30%时20个种子不发散,70%时全部发散。噪声与高学习率的注意力logit阈值分别约为1800和4000。
- 论文未设局限专节。Conclusion希望后续理解并应对数据质量导致不稳定的机制。实验覆盖约480M至5.2B稠密模型与active参数匹配的MoE,每配置20个种子;部分学习率日程截断在2e4步。论文未报告显著性检验。
- 被测模型
- 480M dense model540M dense model1.1B dense model1.3B dense model1.5B dense model2.0B dense model2.2B dense model2.5B dense model2.8B dense model3.4B dense model5.2B dense model472M active-parameter MoE1.3B active-parameter MoE2.8B active-parameter MoE
- 基准
- Llama 4 pretraining data mixture 的子集 Dc
- 指标
- 发散率训练损失maximum attention logit
一项实证研究显示,向干净数据集注入受控的合成均匀随机噪声会引发 LLM 预训练损失发散。研究在 480M 到 5.2B 参数规模的模型上分析训练动态,发现发散概率强烈依赖噪声类型、噪声量和模型规模。论文还发现噪声引发的发散在激活模式上不同于高学习率引发的发散,并给出区分这两种失败模式的诊断方法。
深度解读
这篇论文试图解决什么问题?
作者用受控均匀随机噪声,研究其是否以及如何导致预训练损失发散。
受控均匀随机噪声是否以及如何导致大语言模型预训练损失发散。
- 场景:作者称网页规模语料因不受监管的内容或数据固有随机性含大量噪声;预训练者常推测这类噪声造成不稳定,最坏时损失发散,但该现象仍不清楚。作者同时称大规模预训练昂贵,且并非每次运行都成功。
- 现有不足:作者称与本文最接近的 Ru et al. (2025) 认为噪声对训练动态影响有限,只报告适度损失上升,没有训练 spike 或发散;其噪声是从完整 tokenizer 词表采样后再注入干净文本。
- 核心观察:作者称噪声类型重要,限制在词表子集上的某些随机噪声会提高损失发散概率。作者关注持续的损失发散,不把很快恢复、损失继续下降的 spike 算作发散。
- 作者的做法:向原本干净的数据注入受控合成均匀随机噪声,在 480M 到 5.2B 参数上比较训练动态,并给出区分噪声发散与高学习率发散的诊断;再比较稠密模型与 active 参数匹配的 MoE。
有哪些相关研究?
相关工作涉及训练不稳定、数据质量与噪声标签;作者称噪声类型会改变稳定性结论。
预训练不稳定
- 改架构或损失:QK-layer normalization(Dehghani et al., 2023)、z-loss regularization(Chowdhery et al., 2023)和 weight decay(Loshchilov and Hutter, 2017)通过改模型或损失来缓解异常激活与参数行为。作者称这类工作相对多,较少工作追问训练配方如何首先产生这些病理。
- 精度与量化:Micikevicius et al. (2017)、Fishman et al. (2024)、Peng et al. (2023)。作者称降低精度可诱导病理性激活与梯度行为。
- 学习率:Wortsman et al. (2023)。作者称过高学习率会造成异常激活与参数增长,并在小语言模型上导致损失发散。作者明确把本文与之区分:噪声诱导的失败在激活和参数模式上不同,并据此做诊断。
预训练数据质量
- Ru et al. (2025):认为噪声数据对训练动态影响有限,只报告适度损失上升,没有 spike 或发散。作者批评该设置窄,即用完整词表采样 token 注入干净文本;并称限制在词表子集时,发散概率会提高。
LLM 之前的噪声标签
- 监督学习中的噪声标签:Zhang and Sabuncu (2018)、Chen et al. (2019)、Ghosh et al. (2017)、Sukhbaatar et al. (2014)、Chen et al. (2023)、Zhou et al. (2019)、Rolnick et al. (2017)、Patrini et al. (2017)、Natarajan et al. (2013)。这些工作多在小模型、小数据上研究性能、泛化与过拟合。作者称本文的不稳定在更大规模上更突出,对小模型稳定的配置放到本文规模后不一定仍稳定,并称诊断针对 transformer。
基线与数据
- 对照:干净语料 Dc、干净数据上的高学习率、稠密模型相对 active-parameter 匹配的 MoE、有无 router z-loss、有无 QK-layernorm。语料是 Llama 4 预训练混合的子集,论文未另给公开评测基准名称。
作者把数据质量写成与学习率、数值精度正交的训练配方选择,并把与 Ru et al. 的差别放在噪声类型、噪声比例和模型规模的系统变化上。
论文如何解决这个问题?
在干净语料中注入均匀随机噪声,并用量化和激活统计区分发散来源。
作者在干净语料上注入受控均匀随机噪声,用 20 个随机种子估计损失发散概率,再用注意力 logit 和参数范数把噪声发散与高学习率发散分开。
噪声如何生成
- 干净语料:Dc 是 Llama 4 预训练数据混合的子集。V 为 tokenizer 词表,α∈(0,1) 是人工噪声 token 所占比例。
- 采样:每个噪声 token 从 VN⊆V 上独立均匀抽取。作者使用受限词表,因为称真实噪声通常只占词表的一小部分,例如数字与小写字母组成的 hash-like 字符串。VN 的具体选择放到 §4.1。
- 两种注入:插入是在文档的采样位置之间放入噪声 token,位置有放回,因此可以连续;抽取文本里采样个数的分式不完整,只保留了与 n、α 和 1−α 有关的写法。覆盖是每个 token 以概率 α 被噪声 token 替换。
- 为何用合成噪声:作者称从网页爬取足够大的真实随机噪声在计算上不可行,因此在受控设置里模拟。
模型与优化
- 稠密模型:decoder-only,下一 token 预测。架构跟随 Llama 3:Pre-LN、默认不用 QK-layernorm、无 bias、输入输出 embedding 不绑定、RoPE、GQA。共享超参见 Table 1,包括序列长度 8192、head 维 128、8 个 key/value head、SwiGLU、词表 200,000、RoPE 的 θ=500,000;FFN 维为模型维的 4 倍。
- 规模:改层数和模型维,并一起放大模型维与 query head 数。参数量含输入输出 embedding。Table 2 给出只加深度、只加宽度、两者同加的配置。
- MoE:dropless MoE,16 个 FFN 专家,token-choice top-2。与稠密模型按 active 参数匹配时,把 FFN 维乘 0.5。负载均衡用 loss-free balancing,expert-bias 系数为 1e−3;部分实验另加 router z-loss,辅助损失系数 1e−3。
- 优化:AdamW,β1=0.9,β2=0.95,ε=1e−8,全局梯度裁剪 1.0,weight decay 1e−4。默认学习率是 2000 步线性 warmup 后 cosine 衰减,最低学习率比为 0.1,共 2e4 步;峰值学习率 1.85e−2,batch 为 2.6e5 token,全部实验不足一个 epoch。用 Maximal Update Parametrization,base width 256,以便跨规模迁移超参。训练用 16 到 64 张 H100 和 PyTorch FSDP2。
稳定性如何度量
- 判定:若损失比迄今观察到的最小值高出 0.5 nats/token,并连续至少 600 步,则记为发散。很快恢复并继续下降的 spike 记为稳定。只统计 2e4 步以内的发散。
- 概率:每个设置重复 20 个随机种子,报告发散运行的百分比。图中阴影表示标准误。
- 干净对照:作者称在所研究的全部规模上,同一训练设置下 Dc 的 20 个种子都不发散。
- 另一套学习率日程:§4.1 与 §4.2 改用面向 15 万亿 token 的日程(跟随 Dubey et al., 2024),因计算约束截断在 2e4 步。论文未写出这套日程的峰值学习率。
诊断与干预
- 注意力 logit:在 self-attention 中由 query 与 key 的内积再除以 head 维的平方根得到。作者引用 Dehghani et al.:最大注意力 logit 过大时 softmax 会趋向 one-hot。检查点取 step 1000,因为最早的发散出现在此时。
- 对照设置:噪声运行固定学习率 1.85×10^−2,α 在 30% 到 70%;高学习率运行在干净 Dc 上,学习率在 3.25×10^−2 到 5.25×10^−2。两边的范围被选成发散概率接近。阈值按配置解释:超过阈值则该配置不稳定,即 20 个种子里至少有一个发散。
- 其他统计:比较参数 RMS norm;附录还画了层输入激活、pre-residual 的 FFN 与 attention 输出、梯度 RMS。
- 干预:在 540M 上比较清洗数据与加上 QK-layernorm。默认架构不用 QK-layernorm。
论文做了哪些实验?
作者称小噪声词表与更深模型更易发散,且两类发散的logit阈值不同。
实验设置
- 被测模型:自训练的 Llama 3 式稠密模型与 active 参数匹配的 MoE。Table 2 的稠密规模包括 480M、540M、1.1B、1.3B、1.5B、2.0B、2.2B、2.5B、2.8B、3.4B、5.2B。Figure 5 把 1024 维、5 层写成 472M,Table 2 对同一档写 480M。宽度缩放正文写 542M 到 3.4B,Table 2 对应最小档为 540M。MoE 在 Figure 10 为 472M、1.3B、2.8B;附录 B 的 1.3B active MoE 总参数为 3.7B。
- 数据与噪声:Dc 为 Llama 4 预训练混合的子集。§4.1 固定 α=55%、540M(1024 维、10 层)。其后实验使用 §4.1 中最易失稳的设置:从大小为 5 的词表插入噪声。
- 对照:干净 Dc;干净数据上的高学习率;插入相对覆盖;稠密相对 MoE;有无 router z-loss;有无 QK-layernorm。
- 指标与重复:发散率是 20 个种子中满足 §3.5 判定的百分比。另报告训练损失、step 1000 的最大注意力 logit 和参数 RMS。没有 LLM 评审。论文未报告显著性检验,阴影为标准误。
- 日程:§4.1、§4.2 用截断到 2e4 步的 15 万亿 token 学习率日程。§4.3 写明噪声运行的学习率为 1.85×10^−2。§4.5 未再次写明学习率。
- 种子差异:Figure 1 用同一 1.3B 架构和 15% 噪声、只改种子的四次运行举例:左侧两次发散,右侧两次稳定;第三次因 spike 很快恢复而记为稳定。图注未写词表大小或插入/覆盖。
主结果
条件 结果 出处 各研究规模、干净语料 Dc 20 个种子均不发散 §3.5 540M 稠密、噪声比 30% 20 个种子均不发散 §4.4 540M 稠密、噪声比 70% 20 个种子全部发散 §4.4 35 层 2.5B、噪声比 5%、词表大小 5 的插入 15% 运行发散 Figure 6 540M、词表大小 5,token 内容扫描 Pearson 相关 0.125 Figure 3 - 词表:作者称注入噪声可以造成损失发散,缩小噪声词表会提高发散概率(Figure 2);作者称具体 token 内容影响很小(Figure 3)。内容扫描的平均频率从每个 token 约出现 1200 万次,到在 Dc 中从未出现。
- 注入方式与规模:作者称插入比覆盖带来更高的发散概率(Figure 4,词表取 tokenizer 前五个 token)。作者称固定噪声比时更大模型更常发散,提高噪声比在各规模都提高发散率(Figure 5)。
- 深度与宽度:作者称加宽时发散率更接近,加深则更常发散(Figure 6)。宽度从 1024 到 4096、深度固定 10 层;深度从 5 到 35、宽度固定 2048。
高学习率发散与噪声发散
- 测了什么:540M 上比较干净数据的高学习率与固定较小学习率下的不同噪声比,范围选成两边发散概率接近。step 1000 的最大注意力 logit 分发散运行与稳定运行报告;缺柱表示该配置没有该类运行。Figure 7 图注写 lr=0.03 的 20 个种子都未发散。
- 结果:作者称高学习率配置在最大注意力 logit 超过约 4000 后出现非零发散概率;噪声配置的对应阈值约 1800。即便在噪声运行全部发散的最高噪声比下,其最大注意力 logit 也不超过 4000。作者称同一对数值阈值在其他规模和 MoE 上仍成立;附录 B 的对应图为 1.5B、2.8B 稠密和 1.3B active MoE。
- 作者的解读:若一次运行发散,未超过约 4000 但超过约 1800,作者认为更可能来自噪声而不是过高学习率。Figure 8 中,噪声诱导发散的参数范数更小;提高学习率会增大参数范数,提高噪声比则不会。作者称这里的 4000 低于 Wortsman et al. 在 step 2000 报告的 10^4,因为 warmup 更短、总步数更少,测量更早。
干预与干净 token 上的损失
- 测了什么:540M、噪声比 30%–70%。Figure 9 只对未发散种子、且只在干净 token 上平均损失;正文展示 α=0%、35%、55%,作者称趋势在全部噪声比上一致。论文未给出具体损失值。
- 结果:作者称提高噪声比会持续变差干净 token 上的表现,干净数据的损失最好。QK-layernorm 降低全部噪声运行的最大注意力 logit(Figure 24),并在全部噪声比、全部种子上消除发散,包括原本全部发散的 70% 噪声。
- 作者的解读:作者称最有效的是清洗数据;做不到时用 QK-layernorm。作者还称在噪声数据上,QK-layernorm 的训练损失略低于不用它的稳定运行。Figure 23 的图注称,最大注意力 logit 增长来自 Q、K 范数增长,而不是 query 与 key 余弦相似度增长。
稠密模型与 MoE
- 测了什么:472M、1.3B、2.8B 三档,MoE 与稠密模型 active 参数匹配,并比较有无 router z-loss(Figure 10)。另在 1.3B active MoE、35% 噪声的一次发散运行上看专家路由(Figure 11,十层)。
- 结果:作者称各档 MoE 的发散率与稠密模型相近。论文未给出 Figure 10 的逐点百分比。Figure 11 中,专家 batch 里的噪声 token 比例与 FFN 输出激活绝对值均值的层平均 Pearson 相关为 −0.009。
- 作者的解读:作者称 MoE 并不比稠密模型对噪声数据更敏感,路由没有引入额外敏感性。附录 D 的四个种子(Figure 25:两个发散、两个稳定,仅种子不同,并使用 router z-loss)里,作者称该相关仍接近零。
其他消融与分析
- 词表大小 k 取 5、50、500、5000、50000 和全词表 200,000,540M、α=55%、插入:作者称更小词表提高发散概率;正文未给各 k 的百分比(Figure 2)。
- 插入相对覆盖、前五个 token:作者称插入的发散概率更高;正文未给百分比(Figure 4)。
- 只加宽度(10 层,1024 到 4096,正文写 542M 到 3.4B):作者称发散率更接近(Figure 6 左)。
- 只加深度(宽 2048,5 到 35 层,1.1B 到 2.5B):作者称发散更多(Figure 6 右)。
- 联合缩放,model dim 与层数之比保持 204.8,从 1024 维 5 层到 4096 维 20 层:作者称更大模型更敏感、更高噪声比带来更多发散(Figure 5);正文未给逐点百分比。
- 附录 B 重复参数与激活图,作者称 §4.3 的结论在 540M 到 2.8B 稠密模型及 1.3B active MoE 上一致;除注意力 logit 阈值外,正文未给这些图的数值。
有什么可以进一步探索的点?
论文未专列局限;Conclusion 希望后续研究数据质量导致不稳定的机制。
作者指出的局限与后续方向
- 论文未专门讨论局限:没有 Limitations、Discussion 或 Future Work 专节,正文也没有把某项设计明确写成研究局限。
- 后续方向:Conclusion 写,希望这些结果促使后续研究更好地理解并应对数据质量导致训练不稳定的机制。
实验覆盖范围
- 模型:自训练 decoder-only 稠密模型,Table 2 从 480M 到 5.2B;Figure 5 对 1024 维、5 层同时使用 472M 这一写法。MoE 为 16 专家、top-2、FFN 维乘 0.5,Figure 10 报告 472M、1.3B、2.8B 三档,并含有无 router z-loss。
- 重复与判定:每个配置 20 个随机种子。发散指损失超过迄今最小值 0.5 nats/token 且连续至少 600 步,只计 2e4 步以内(§3.5)。干净 Dc 上各研究规模的 20 个种子均不发散。
- 噪声:合成均匀随机噪声。§3.1 写从网页爬取足够大的真实随机噪声在计算上不可行。§4.1 在 540M、α=55% 上比较词表大小、词表内容和插入/覆盖;其后实验固定为词表大小 5 的插入。
- 训练长度:默认峰值学习率 1.85e−2、batch 2.6e5 token、不足一个 epoch。§4.1 与 §4.2 改用面向 15 万亿 token 的学习率日程,并截断在 2e4 步;论文未写出该日程的峰值。
- 诊断与未报告的数:step 1000 比较最大注意力 logit 与参数范数;干预为 540M 上的 QK-layernorm。论文未报告统计显著性检验,也未报告 Figure 2、4、5、10 的逐点发散百分比和 Figure 9 的损失数值。
总结一下论文的主要内容
作者称均匀随机噪声可导致预训练损失发散,且能与高学习率发散区分。
这是一项关于均匀随机噪声与预训练损失发散的受控经验研究。作者要回答的是:干净语料中的合成噪声会不会把训练推进到持续发散,以及这和过高学习率造成的发散是否同一类失败。
做法是从 Llama 4 混合的子集 Dc 出发,按比例 α 从受限词表均匀采样,用插入或覆盖注入噪声。模型是 Llama 3 式 decoder-only 稠密网络和 active 参数匹配的 MoE,规模约 480M 到 5.2B。每个设置 20 个种子;损失比已见最小值高出 0.5 nats/token 并连续 600 步,才记为发散。
作者报告的主要结果是:
- 噪声可以造成发散。更小的噪声词表更不稳定;词表内容与发散率的 Pearson 相关为 0.125(Figure 3)。插入比覆盖更易发散。
- 噪声比更高、模型更大时发散更常见,加深比加宽更明显。35 层、2.5B、5% 噪声、词表大小 5 的插入设置下,15% 的运行发散(Figure 6)。
- 540M 在噪声比 30% 时 20 个种子都不发散,70% 时全部发散。step 1000 的最大注意力 logit 阈值,噪声发散约 1800,高学习率发散约 4000(Figure 7)。
- 作者称清洗数据最有效;做不到时,QK-layernorm 可消除这些噪声比上的全部分散。稠密与 MoE 的发散率相近;1.3B MoE 上噪声占比与激活幅度的层平均相关为 −0.009(Figure 11)。
作者的结论是:发散概率取决于噪声类型、噪声量和模型规模,尤其深度;两类失败的激活与参数模式不同,因此可以判断何时更该清洗数据。作者希望后续工作继续追究数据质量导致不稳定的机制。