---
layout: post.njk
source: https://blog.qiaomu.ai/2026-06-03-mxfbl1
speaker: 向阳乔木
title: 垃圾数据喂出来的大模型，可能比精筛数据更强 · 乔木博客
date: '2026-06-03'
summary: 斯坦福大学研究表明，在大规模计算条件下，未经任何过滤的原始网络爬虫数据训练大模型，效果优于经过精心过滤的数据。研究解释了垃圾数据与有效任务在大模型内部的隔离机制，指出数据过滤在更大规模训练中可能不再必要，强调了计算扩展能力的潜力。
area: tech-engineering
category: ai-ml
tags:
  - data-scaling
  - training-data
  - scaling-laws
  - data-filtering
  - data-quality
people: []
companies_orgs:
  - stanford-university
products_models:
  - common-crawl
  - dclm-baseline
  - refinedweb
media_books: []
draft: true
status: evergreen
---

乔木博客

全部

AI工具

AI教程

AI生成

AI资讯

健脑房

播客解读

论文学习

# 垃圾数据喂出来的大模型，可能比精筛数据更强

论文学习

·

2026年6月3日

·

134 次阅读

·

约 9 分钟

斯坦福大学的研究团队做了一件反直觉的事：他们把未经任何过滤的原始网络爬虫数据直接喂给大模型，结果发现，在足够大的计算量下，不过滤数据的效果反而优于所有精心设计的过滤方案。

> https://arxiv.org/pdf/2605.19407

这个结论和整个行业的直觉相悖。

过去几年，数据质量被视为训练大模型的核心变量之一，DCLM-Baseline 这类数据集会把 Common Crawl 原始数据过滤掉 99%，只保留约 1% 的"高质量"内容。

但这篇来自斯坦福的论文给出了一个让人不安的答案：那被丢掉的 99%，可能正是你需要的。

## 过滤数据的代价，比你想的更高

Common Crawl（CC）是目前最大的公开网络爬虫数据集，包含 2023 年以前约 240 万亿个 token。

问题在于，主流的数据过滤流程会把这个数字砍得很小。

以 DCLM-Baseline 为例，经过英语过滤、重复内容过滤、停用词过滤、RefinedWeb 清洗、再加上 fastText 质量分类器，最终只保留约 3.8 万亿个 token，大约是原始数据的 2.1%。

3.8 万亿听起来很多，但对于一个万亿参数量级的模型来说，按照 Chinchilla 最优的 token 预算，这个量仍然不够。

而且当前的训练趋势是刻意超过 Chinchilla 最优，用更多数据换来更小的模型，因为小模型推理成本更低，实际部署才划算。

这就产生了一个矛盾：过滤数据是为了提高质量，但过滤本身减少了数据量，而数据量不足又会限制模型性能的上限。

## 实验设计：把问题问到极端

研究团队没有选择在常规规模上做对比，而是把问题推到极限：如果给模型足够大的参数量和足够长的训练时间，不过滤数据能不能赢过精筛数据？

他们从 CC 中随机采样了约 6.7 亿 token 的子集，然后对这个子集分别应用五种过滤方案：

英语过滤（保留 28.2%）

重复内容过滤（保留 45.3%）

停用词过滤（保留 50.4%）

RefinedWeb（保留 13%）

DCLM-Baseline（保留 2.1%）

模型规模从 1500 万参数到 10 亿参数，训练步数也大幅变化，通过多轮 epoch 来榨干每个数据集的信息。

在 15M 小模型上，过滤数据全面领先，未过滤的 CC 是最差的。但当模型规模达到 330M 和 1B 时，情况完全反转，未过滤的 CC 在充分训练后超越了所有过滤版本，最终达到最低损失 3.37。

从计算量的角度看，随着算力增加，CC 原始数据从最差变成最优。

这个转变不是渐进的，而是有一个明显的交叉点，过了这个点，过滤数据就再也追不上了。

## 把随机字符串塞进训练集，大模型照样扛住了

为了进一步测试模型的鲁棒性，研究团队做了一个更极端的实验：向训练集里注入明显的垃圾数据。

两种垃圾数据的构造方式：

随机字符串：从 10,000 个随机生成的英文词汇中均匀采样，拼接成文档。这些词没有任何语义，也不遵循任何语言规律。

打乱词序的文档：从 CC 中取出额外的文档，随机打乱每篇文档内所有词的顺序。这些文档保留了原始词汇分布（unigram 分布），但句子结构完全被破坏。

注入比例从 +20% 到 +800% 不等，最极端的情况下，打乱词序的文档占训练数据的 80%，原始 CC 文档只剩约 10%。

结果：

在 15M 小模型上，注入垃圾数据会明显拉低性能，且注入比例越高，损失越大。

在 330M 和 1B 模型上，即便注入了 400% 的打乱词序文档，最终性能仍然超过了干净的 CC 基线。

随机字符串的影响更小，因为模型更容易识别它们来自不同分布，直接忽略。

打乱词序的文档之所以反而有帮助，研究团队的解释是：词序虽然打乱了，但词汇共现关系还在。

比如把"The capital of France is Paris"打乱后，"France"和"Paris"仍然出现在同一篇文档里，模型依然能从中学到两者之间存在某种关联。

## 240 万亿 token 的 CC 什么时候能成为最优选择

上面的实验用的是 6.7 亿 token 的子集，距离完整的 240 万亿 token CC 还差了好几个数量级。

研究团队进一步扩展了实验，把数据池从 6.7 亿扩展到 100 亿 token，同时变化模型规模，观察 CC 原始数据超越 RefinedWeb 所需的训练步数。

关键发现是：数据池越大，CC 赢过 RefinedWeb 所需的 epoch 数增长是超线性的。

6.7 亿 token 池大约需要 1 个 epoch，20 亿 token 池需要约 3 个 epoch，100 亿 token 池则需要约 10 个 epoch。

基于这个规律，研究团队拟合了两条 scaling law，分别基于 token 与参数比（600:1，参考 DeepSeek V4）和 epoch 约束（4 epoch，参考 Muennighoff 等人的工作）。

两条曲线的 (R^2) 均超过 0.99，给出的预测结果高度一致：

完整的 240 万亿 token CC 数据集成为最优选择，大约需要 (10^{30}) FLOPs 的计算量。

这个数字很大。目前前沿模型的预训练算力估计在 (5 \times 10^{26}) FLOPs 左右（来自 xAI 的 Grok 4 数据）。但根据现有预测，到 2030 年，(10^{29}) FLOPs 量级的训练运行是可以预期的。

从 (10^{29}) 到 (10^{30})，也就是再往前走一步的事。

## 什么样的数据才真正有害

既然垃圾数据都能被大模型消化，那有没有真正会拖后腿的数据？

研究团队的假设是：语言模型对协变量偏移（covariate shift）有很强的抵抗力，真正有害的是条件分布发生偏移的数据，也就是"标签错误"的数据。最典型的例子：如果训练集里有大量"法国的首都是哥本哈根"这类错误事实，模型就会学错。

为了验证 CC 里有多少这类内容，他们用 GPT-5 mini 对 CC 中与 MMLU 题目相关的文档进行分类，判断每篇文档是支持、反驳、相关还是无关。结果（表 1）显示：支持正确答案的文档数量比反驳正确答案的文档多至少一个数量级。

这说明 CC 里虽然有阴谋论和错误信息，但它们的绝对数量相对于正确内容来说很少，不足以系统性地污染模型的学习。

还有一个有趣的边界情况：打乱词序的文档会改变文档开头 token 的分布。

对于预测第一个 token 的任务，模型无法通过上下文判断这篇文档是否被打乱，因此会受到影响。但研究团队认为，实际使用中极少有只看第一个 token 的场景，这个退化不构成实质问题。

## 理论上为什么会这样

研究团队用低秩矩阵分解给出了一个简洁的理论解释。

把预训练看成一个多任务学习问题，不同的数据来源对应不同的任务。

如果模型的秩（参数量）足够大，它可以为每个任务分配独立的表示空间，不同任务之间互不干扰。

垃圾数据只是增加了任务数量，只要模型够大，就能把它们隔离开来，不影响其他任务的学习。

如果模型太小，秩不够，不同任务会争抢同一批参数，互相干扰，垃圾数据就真的会拖累性能。

这个理论预测和实验结果完全吻合：小模型怕垃圾数据，大模型不怕。

## 数据过滤的苦涩教训

Rich Sutton 在 2019 年写过一篇著名的《苦涩教训》，核心论点是：在 AI 历史上，依赖人类先验知识设计的方法，最终都会被更简单、更能随计算量扩展的方法所取代。

这篇论文的标题直接引用了这个概念。

数据过滤正在重演同样的故事：精心设计的过滤规则在小规模下确实有效，但随着计算量的增加，它们的优势逐渐消失，最终被"什么都不过滤"所超越。

对于当下的实践者，结论是清晰的：如果你的计算预算有限，数据过滤仍然值得做；如果你在规划未来几年的大规模训练，现在就应该开始认真考虑如何保留更多原始数据，而不是继续优化过滤流程。

过滤掉的那 99%，可能正是下一代模型需要的东西。

© 2026

·

向阳乔木