预训练数据集与处理 Pipeline 深挖(FineWeb / DCLM / The Stack / RedPajama / Dolma / Nemotron-CC / RefinedWeb / C4 / CulturaX / ROOTS)

本档案聚焦「开放预训练数据集」家族,逐个数据集抠抽取→清洗→去重→质量过滤→去毒→PII→污染检测全 pipeline,以及配比/消融/分类器阈值等一手数字。 所有数字均来自官方 arXiv 技术报告 / 官方 HF 数据集卡 / 官方 GitHub。第三方解读一律不收。 注意:这些是「数据集」而非「模型」,因此「架构/SFT/RL」字段大多不适用(数据集本身不做 RLHF)。对于配套训练的消融模型/参考模型,我把其架构与训练细节写在「消融/参考模型」字段。


家族演进脉络(2019 → 2025)

  • 2019 — C4(T5):Google 用 2019-04 Common Crawl WET 文件 + 一套朴素启发式规则(终结符标点、bad-words、langdetect≥0.99 英文、三句窗口去重)做出 ~750GB / 156B token 的 C4,奠定「Common Crawl + 规则清洗」范式,但数据未随论文发布(后由 AI2/HF 复刻)。
  • 2020 — mC4 / OSCAR / CCNet / The Pile:mT5 把 C4 扩到 101 语言(cld3 语言识别 + α=0.3 温度采样);Meta 的 CCNet(FastText langID + KenLM 困惑度分 head/middle/tail)成为后续多语数据集的清洗内核;EleutherAI 的 The Pile 确立「多来源混合」。
  • 2021–2022 — RefinedWeb / ROOTS / The Stack v1:Falcon 团队的 RefinedWeb 证明「纯网页 + 极致过滤去重」可媲美精选语料(trafilatura 抽取 + 严格 MinHash + exact-substring,~90% 文档被丢弃);BigScience 的 ROOTS(1.6TB / 59 语言)支撑 BLOOM;BigCode 的 The Stack v1(3.1TB→6.4TB / 358→384 语言代码)支撑 StarCoder。
  • 2023 — RedPajama v1 / v2 + CulturaX:Together 复刻 LLaMA 配方做出 RedPajama-V1(1.2T token),再做 RedPajama-V2(100T token 原始 + 40+ 质量信号 + MinHash/Bloom 去重标签);UONLP 的 CulturaX(6.3T token / 167 语言,mC4+OSCAR 合并 + IQR 自动阈值 + MinHashLSH)。
  • 2024 — Dolma / FineWeb / FineWeb-Edu / DCLM / The Stack v2:数据透明化与「基于模型的过滤」成主流。AI2 Dolma(3T token,开源 Rust 工具);HF FineWeb(15T token)发现逐快照 MinHash 去重反而优于全局去重,并用 Llama-3-70B 合成标注训出教育分类器做 FineWeb-Edu(1.3T token);UW/Apple 的 DCLM(240T pool)用 fastText(OH-2.5+ELI5) 分类器证明「模型过滤 >> 启发式」;BigCode The Stack v2(67.5TB / 619 语言,基于 Software Heritage 存档)。
  • 2024-末 — Nemotron-CC:NVIDIA 把「质量」与「数量」同时拉满——分类器集成 + 合成数据 rephrasing,做出 6.3T token(4.4T 真实去重 + 1.9T 合成),其 1.1T 高质量子集 MMLU 比 DCLM 高 5.6。
  • 2024-末 — FineWeb-2:HF 把 FineWeb pipeline 扩到 1800+ 语言/方言。

一句话主线:抽取从 WET→WARC+trafilatura/resiliparse;去重从 line-level→exact-substring + 全局 MinHash→(FineWeb 反转)逐快照 MinHash;过滤从纯启发式(C4/Gopher)→ fastText 模型过滤(DCLM)→ LLM 合成标注训分类器(FineWeb-Edu)→ 分类器集成 + LLM rephrasing 合成(Nemotron-CC)。


各代关键参数对比

数据集组织年份规模来源/范围抽取去重质量过滤一手报告
C4 (en)Google2019~750GB / 156B tokenCC 2019-04 单快照WET 文件三句窗口去重启发式(终结标点/bad-words/langdetect≥0.99)arXiv 1910.10683;记录: 2104.08758
mC4Google2020101 语言CC 71 快照WET跨文档行去重cld3 langID + 行长过滤 + α=0.3 采样arXiv 2010.11934
RefinedWebTII(Falcon)2023公开 600B / 全量 ~5T tokenCC 纯英文网页trafilatura(WARC)URL去重 + exact-substring + MinHash(20桶×450哈希, 5-gram)URL黑名单(4.6M域) + Gopher/重复规则arXiv 2306.01116
The Stack v1BigCode20223.1TB(许可)/6.4TB(全) / 30→384 语言GitHub(GHArchive→clone)原始文件exact + near-dedup(MinHash)许可过滤(SPDX/ScanCode) + PII + opt-outarXiv 2211.15533
The Stack v2BigCode202467.5TB全/32.1TB去重 / 619 语言Software Heritage 存档 + GitHub PR/Issue/Kaggle/Jupyter原始文件near-dedup(MinHash)许可(96.93%靠ScanCode文件级) + PII + opt-outarXiv 2402.19173
ROOTSBigScience20221.6TB / 59 语言(46自然+13代码)38%来自OSCAR + 众包目录 + 伪爬多 pipelineSimHash(6-gram,海明≤4) + exact substringnative-speaker 人工过滤规则 + PIIarXiv 2303.03915
RedPajama-V1Together AI20231.2T token复刻LLaMA(CC/C4/GitHub/Wiki/Books/ArXiv/StackEx)各源不同CCNet 分片去重Wikipedia-ref fastText 分类器 + CCNet head/middlearXiv 2411.12372
RedPajama-V2Together AI2023100T token原始(50T带信号) / 5 语言CC 84 快照(2014–2023/04)WET + CCNetMinHash签名 + Bloom(exact) 标签不过滤, 提供40+质量信号arXiv 2411.12372
CulturaXUONLP20236.3T token / 167 语言mC4 v3.1.0 + OSCAR(20.19–23.01)继承MinHashLSH 文档级IQR 自动阈值(停用词/困惑度/langID)arXiv 2309.09400
DolmaAI220243T token / 4.4亿+文档CC网页 + GitHub + Reddit + S2 + Gutenberg + WikiCCNetURL/文档/段落级 Bloom filterGopher全规则 + C4 NoPunc + Jigsaw 毒性 + PIIarXiv 2402.00159
FineWebHugging Face202415T token / 96 CC 快照CC(2013–2024) 纯英文trafilatura(WARC)逐快照 MinHash(112哈希=14桶×8, 5-gram)C4 + MassiveText + 3 条自定义过滤 + PIIarXiv 2406.17557
FineWeb-EduHugging Face20241.3T token(阈值3)FineWeb 子集继承继承Llama-3-70B 合成标注训 linear-on-arctic-embed 分类器(阈值≥3)arXiv 2406.17557
FineWeb-2Hugging Face2024-末1800+ 语言/方言CC 多语trafilatura逐语言去重逐语言 FineWeb 风格 pipelineHF 数据集卡
DCLM(-Pool/-Baseline)UW/Apple/TRI/AI2 等2024Pool 240T → Baseline 3.8T tokenCC(2008–2022) 纯英文resiliparseBloom(near-dup);MinHash备选fastText(OH-2.5+ELI5) 取top-10% + RefinedWeb启发式arXiv 2406.11794
Nemotron-CCNVIDIA2024-末6.3T token(4.4T真实+1.9T合成); 高质子集1.1TCC 99 快照jusText全局 fuzzy + exact-substring分类器集成(FineWeb-Edu类3个) + 5 桶 + LLM rephrasingarXiv 2412.02595

C4 / mC4(Google,T5/mT5)

概述

  • C4 = Colossal Clean Crawled Corpus,T5 论文(arXiv 1910.10683)首次提出;论文未直接发布数据,仅发布 TensorFlow Datasets 复现脚本,后由 AllenAI/HF 重建并发布。
  • 规模(C4.en):~750GB(T5 论文口径);AI2 记录论文(2104.08758)实测 156B token / 305GB,来自 3.65 亿个域名
  • 来源:Common Crawl 2019-04(April 2019)单一快照WET 文件(已抽好正文)。

数据处理 pipeline(C4 启发式规则,全部为规则,无模型)

  • 只保留以终结标点(. ! ?)或引号结尾的行
  • 丢弃少于 5 句的页面,只保留≥3 词的行;
  • 删除含 “List of Dirty, Naughty, Obscene or Otherwise Bad Words” 黑名单词的页面;
  • 删除含 “lorem ipsum” 占位文本、含 ”{” / javascript / “terms of use” / “cookie policy” 的行/页;
  • langdetect:仅保留判定为英文概率 ≥0.99 的页面;
  • 去重:跨整个数据集,移除重复的三句窗口(three-sentence span)

已知偏差(AI2 记录论文 2104.08758 的发现)

  • 黑名单词过滤不成比例地删除少数族裔方言(AAE)/ LGBTQ 相关文本
  • 含大量机器生成文本(最大单一来源 patents.google.com,>10% 专利来自非美国专利局,经机器翻译);
  • 含其他 NLP 评测集样本(污染)。

多语言版 mC4(mT5)

  • 101 语言,来自 CC 71 个月度快照;语言识别用 cld3(≥100 语言)。
  • 不用 C4 的「终结标点」过滤(多语不适用),改用行长过滤:页面须含 ≥3 行、每行 ≥200 字符
  • 跨文档行去重(沿用 C4)。
  • 语言采样:温度采样 exponent α=0.3(高/低资源平衡),与 XLM-R 一致。

来源


RefinedWeb(TII / Falcon,2023)

概述

  • 论文:「The RefinedWeb Dataset for Falcon LLM」(arXiv 2306.01116)。核心论点:仅靠充分过滤去重的网页数据即可训出强模型,甚至超过用精选语料训练的模型
  • 规模:可从 CC 提取约 5 万亿 token公开发布 600B token 子集 + 配套训练的 1.3B / 7.5B 参考模型。
  • 来源:纯英文,仅来自 Common Crawl(不混精选语料),从 WARC(原始 HTML)读取(不用 WET)。

数据处理 pipeline(Macrodata Refinement / MDR;最终保留约原始的 ~10%)

  • 抽取warcio 读 WARC → trafilatura 抽正文(作者发现 WET 含导航菜单等噪声)。
  • URL 过滤(清洗前先做,省算力):聚合 4.6M 域名黑名单 + 基于关键词/严重度的 URL 评分,过滤欺诈/成人站。
  • 语言识别:fastText(CCNet 的字符 n-gram 模型,文档级)。
  • 质量/重复过滤:沿用 Gopher 的重复/启发式规则,移除行/段/n-gram 过度重复的文档;经过滤后 CC 仅剩约 50% 文档。
  • 去重(极严格,exact + fuzzy 串联,合计移除约 90% 文档)
    • exact substring:后缀数组匹配最小长度子串(~50% 文档受影响);
    • fuzzy MinHash:5-gram,20 个桶 × 每桶 450 哈希(≈9000 哈希);
    • 还跨 CC 多个 dump 移除重复访问的 URL。
  • 注:作者发现直接在 RW-Filtered 上做 MinHash 移除比例较低(~10%/26%),故拆分处理。

来源


The Stack v1(BigCode,2022)

概述

  • 论文:「The Stack: 3 TB of permissively licensed source code」(arXiv 2211.15533)。是 StarCoder/StarCoderBase 的数据基础。
  • 规模3.1 TB 许可子集(permissively licensed),30 种编程语言;全量(all-license)6.4 TB / 384 语言(HF 卡口径)。
  • 来源:从 GHArchive 获取活跃 GitHub 仓库名 → 克隆,成功克隆 137.36M 仓库(克隆成功率 >62%)。

数据处理 pipeline

  • 许可检测:用 SPDX 标识 + go-license-detector;只保留 permissive 许可(MIT/Apache/BSD/Unlicense 等)做许可子集。
  • 去重:发布 near-deduplicated(MinHash)版本;论文实验证明近去重显著提升下游 HumanEval/MBPP(去重后仅用 permissive 数据即可匹配/超过 CodeParrot 等用全量数据的模型)。
  • 数据治理:提供 opt-out 流程(开发者可申请移除),关注 PII 与恶意代码

来源


The Stack v2(BigCode,2024,StarCoder2 报告)

概述

  • 论文:「StarCoder 2 and The Stack v2: The Next Generation」(arXiv 2402.19173)。
  • 规模:全量 67.5 TB,去重版 32.1 TB(HF 卡);训练子集 train(full) ~900B 唯一 token(比 The Stack v1 训练集大 4×),train(smol) 17 语言、~200B token。
  • 来源:建立在 Software Heritage(SWH)源码存档之上(覆盖 619 种编程语言),并补充 GitHub Issues、Pull Requests、Kaggle/Jupyter notebooks、代码文档、中间表示(IR)、小型数学/代码数据集
  • 透明度:发布 **SWHID(Software Heritage 持久标识符)**而非原始代码本身。

数据处理 pipeline

  • 许可检测:先从 GHArchive 取 repo 级许可;96.93% 仓库无 repo 级许可,改用 ScanCode Toolkit 做文件级检测(图 1 给出文件级许可判定逻辑:repo 许可空→文件级检测→是否全部 permissive)。
  • 去重the-stack-v2-dedup 在原始基础上做 near-deduplication(MinHash);文档站点合并前先对不同 HTML 页抽取内容近去重(MinHash LSH 阈值 0.7);Jupyter notebook 近去重后剩 4M(转脚本)/ 4.6M(结构化)。
  • 过滤:低质代码启发式过滤 + PII 编辑(redact) + 恶意代码移除 + 开发者 opt-out。
  • PR:包含 ≤100K 字符(约 25k token)的 PR;GitHub Issues 处理后约 11.4M 问题 / >10B token

配套模型 StarCoder2(3B/7B/15B)

  • 训练 3.3–4.3T token(远超 Chinchilla 计算最优,“Harm’s law”过训);上下文 4K(预训练阶段);两阶段训练。
  • StarCoder2-3B 超 StarCoderBase-15B;15B 匹配/超 CodeLlama-34B。

来源


ROOTS(BigScience,2022,BLOOM 语料)

概述

  • 论文:「The BigScience ROOTS Corpus: A 1.6TB Composite Multilingual Dataset」(arXiv 2303.03915)。用于训练 BLOOM 176B。
  • 规模1.6 TB59 语言(46 自然语言 + 13 编程语言),语言选择由众包社区驱动。
  • 来源构成38% 来自预处理网页爬取 OSCAR(由 native speaker 协助过滤);其余来自 BigScience Catalogue 众包目录(498 个构成数据集)+ 伪爬(pseudo-crawl)(192 目录条目 + 456 站点提案,去重后 614 唯一域名)+ GitHub/StackExchange 代码(BigQuery)。

数据处理 pipeline

  • 质量过滤:每语言由 native speaker 设计人工过滤规则(停用词比例、字符等),各语言移除文档比例见论文 Table 1。
  • 去重:先对 OSCAR(已 exact-dedup)用 SimHash(6-gram,海明距离阈值 4),约移除 0.7% 文档;再做 substring 精确去重;跨 pipeline 去重(移除伪爬的 Wikipedia/GitHub,保留更优版本);移除处理后 <2MB 的整个域名。
  • PII:专门的 PII 过滤初创(regex 等,论文附录 D)。
  • HTML 处理:从 DOM 移除 <script>/<style> 等子树。

来源


RedPajama-V1 & RedPajama-V2(Together AI,2023)

论文:「RedPajama: an Open Dataset for Training Large Language Models」(arXiv 2411.12372,2024 发布的正式报告,回顾 2023 发布的 v1/v2)。

RedPajama-V1(LLaMA 配方开放复刻)

  • 规模:约 1.2T token;组成(Table 2):CommonCrawl 878B + C4 175B + GitHub 59B + Books 26B + ArXiv 28B + Wikipedia 24B + StackExchange 20B
  • CommonCrawl:复刻 LLaMA 的 5 个快照(2017–2020),经 CCNet pipeline(分片去重 + 用 Wikipedia 训的 5-gram Kneser-Ney 困惑度分 head/middle/tail,只保留 head + middle)。
  • 质量分类器:下载最新英文 Wikipedia 快照 → CCNet 适度清洗 → 训 fastText unigram 分类器,过滤掉分数过低的文档(复刻 LLaMA 的 Wikipedia-reference 分类器)。
  • 衍生:SlimPajama(进一步清洗去重 v1)。
  • 已知 gap:3B 规模可比,7B 与原版 LLaMA-7B 仍有差距(作者推测部分因需用 FP16 精度训练,以及原 LLaMA 语料细节缺失)。

RedPajama-V2(纯网页、原始 + 质量信号)

  • 规模100T token 原始、几乎未过滤文本;其中 50T token 子集附带质量信号
  • 范围:CC 84 个月度快照(2014 – 2023/04)的 WET 文件,经 CCNet(保留全部困惑度桶);5 语言:英、法、德、意、西
  • 设计哲学不做强过滤,而是为每文档提供 40+ 质量信号(来自 C4、Gopher、RefinedWeb、Pretrainer’s Guide、DSIR),分为:自然语言度量、重复度、内容类(NSFW)、ML 启发式(fastText 分类器 + DSIR importance weights)、去重。
  • 去重标签:提供 MinHash 签名(不同相似度) + Bloom filter exact-dup ID(基于 .wet 文档哈希,先于质量过滤)。消融用 MinHash LSH(word 13-gram,128 哈希,9 bands × 13 rows)。
  • 消融(468M 参数模型)结论:Gopher 规则 + fuzzy(MinHash) 去重组合表现最稳

来源


CulturaX(UONLP,2023)

概述

  • 论文:「CulturaX: A Cleaned, Enormous, and Multilingual Dataset for Large Language Models in 167 Languages」(arXiv 2309.09400)。
  • 规模6.3T token,167 语言
  • 来源:合并 mC4 v3.1.0 + 全部可用 OSCAR(distributions 20.19 / 21.09 / 22.01 / 23.01)。

数据处理 pipeline(两大步:清洗 + 去重)

  • 语言识别:mC4 用 cld3(语言置信度 <0.95 的页被剔除);OSCAR 用 FastText。
  • 清洗(metric-based):用 IQR(四分位距)方法自动选阈值,针对各项度量(停用词比例、数据困惑度、语言识别分);外加 URL 过滤、document refinement。
  • 去重(关键贡献):现有 mC4/OSCAR/CC100 都缺文档级模糊去重;CulturaX 用 MinHashLSH 在文档级做 near-dedup(同语言内),消除冗余。
  • 还发布 27B token 的清洗去重子集(HF)。

来源


Dolma(AI2,2024,OLMo 语料)

概述

  • 论文:「Dolma: an Open Corpus of Three Trillion Tokens for Language Model Pretraining Research」(arXiv 2402.00159,针对 v1.6)。
  • 规模3.059T LLaMA-token / 约 4.367 亿(437M)文档 / 11.5TB UTF-8(从约 200TB 原始文本清洗到 11TB)。
  • 来源构成(Table 1,LLaMA tokenizer 计 token)
来源UTF-8 (GB)文档(百万)Llama token(十亿)
Common Crawl 网页9,8123,7342,479
GitHub 代码1,043210411
Reddit 社媒33937789
Semantic Scholar(peS2o)论文26838.870
Project Gutenberg 图书20.40.0566.0
Wikipedia/Wikibooks16.26.24.3
合计11,5194,3673,059

数据处理 pipeline

  • 抽取/语言/初步去重:网页用 CCNet(FastText langID 模型,移除语言分 ≤0.5 的内容 → 按字节移除 61.7%;CCNet 总体把 CC 从 175.1TB 过滤到 27.7TB,即过滤 84.2%)。
  • 质量过滤(启发式):保留全部 Gopher 规则(Gopher All) + C4 的单条「移除不以标点结尾段落」规则(C4 NoPunc)(而非 C4 全规则)。
  • 去毒(自训分类器):在 Jigsaw Toxic Comments 上训 两个 FastText 分类器(“hate” 与 “NSFW”),分高/低阈值版本。
  • 去重(3 阶段,Bloom filter)URL 级 → 文档级 → 段落级,全部用自实现的、与 mixer 兼容的 Bloom filter(段落定义为以 \n 结尾的文本跨度;段落级去重移除约 70% 段落)。
  • PII:聚焦 email / IP / 电话号码 三类高精度可检测 PII。文档内 ≤5 个 PII span → 用特殊 token 替换(如 |||EMAIL_ADDRESS|||,影响 0.02% 文档);PII 密度更高的文档整篇丢弃(影响 0.001%)。
  • 工具:开源高性能 Rust 工具包(dolma toolkit),内置 mixer 可一站做上/下采样、去重、去污染;复刻 C4 配方时过滤速率约 122 CPU-小时/TB

来源


FineWeb & FineWeb-Edu(Hugging Face,2024)

概述

  • 论文:「The FineWeb Datasets: Decanting the Web for the Finest Text Data at Scale」(arXiv 2406.17557)。
  • FineWeb 规模15T token,来自 96 个 Common Crawl 快照(2013–2024),纯英文。
  • FineWeb-Edu 规模1.3T token(阈值=3 的教育子集)。
  • 全开放:数据 + datatrove 处理库 + 全部消融检查点。

FineWeb 数据处理 pipeline(每步均有消融)

  • 抽取:从 WARCtrafilatura 抽正文(消融证明 trafilatura-WARC 优于 CC 的 WET 文件)。
  • 语言过滤:fastText 语言分类器,英文分数 ≥0.65 才保留。
  • 质量过滤:应用 MassiveText(Gopher)的质量与重复过滤(用原始阈值)。
  • C4 过滤:采用 C4 多数规则,但去掉「终结标点」过滤(因其会删过多数据,移除 30% token;FineWeb 改用更温和版本,仅删「以标点结尾行占比 <0.12」的文档,移除 10.14% token)。
  • 3 条自定义启发式过滤(从 50+ 候选中系统性筛选,用指标分布卡阈值):
    1. 以标点结尾行占比 < 0.12 → 删(10.14% token 被移除);
    2. 重复行中的字符占比 ≥ 0.1 → 删(12.47% token 被移除);
    3. 短于 30 字符的行占比 ≥ 0.67 → 删(3.73% token 被移除);
    • 三者合用约移除 22% token,聚合分提升约 1%。
  • 去重(核心反直觉发现):MinHash,5-gram(英文词 tokenizer)+ 共 112 个哈希函数 = 14 桶 × 每桶 8 哈希(同桶 8 哈希全同即判重,再用并查集连通)。
    • 全局去重(96 快照一起)反而更差:全局去重会上采样低质数据——某快照被全局去重后留下的 10% 数据,质量实际比被删的 90% 更差;
    • 改为逐快照独立去重(per-snapshot / individual),性能更好。这是 FineWeb 最重要的工程结论。
  • PII:用 regex 匿名化 email 与 public IP 地址

FineWeb-Edu 教育分类器(LLM 合成标注 → 训轻量分类器)

  • Llama-3-70B-Instruct460,000 个随机网页打教育价值分 0–5(prompt 聚焦小学/初中知识水平,附录 F.1)。
  • Snowflake-arctic-embed-m embedding 之上训 linear regression 分类器:用 410,000 条 Llama-3 标注微调 20 epoch,LR=3e-4(冻结 embedding),在剩余 50,000 验证集评估,输出四舍五入到 0–5 整数。
  • 阈值=3 给出最佳 性能/数据量 权衡(验证集 F1=82%),由此得 1.3T token 的 FineWeb-Edu。

FineWeb-2(多语扩展)

  • HF 后续把 FineWeb pipeline 扩到 1800+ 语言/方言(逐语言去重 + 逐语言过滤),见官方数据集卡。

来源


DataComp-LM / DCLM(UW / Apple / TRI / AI2 等,2024)

概述

  • 论文:「DataComp-LM: In search of the next generation of training sets for language models」(arXiv 2406.11794)。
  • 本质是「受控数据集实验测试平台」:标准化语料 DCLM-Pool + 统一 OpenLM 训练配方 + 53 项评测;规模档 412M / 1B / 3B / 7B(含 7B-2x)
  • DCLM-Pool240T GPT-NeoX token200B 文档 / 370TB gzip),来自 Common Crawl(2008–2022),是当时最大公开语料。
  • DCLM-Baseline3.8T token(基线最优过滤结果)。

数据处理 pipeline(构建 DCLM-Baseline 的关键消融结论)

  • 抽取:用 resiliparse(而非 trafilatura / WET)。resiliparse 与 trafilatura 下游相当,但 resiliparse 快 8×;两者都比 WET 抽取在 Core 上高 ≥2.5 点。
  • 启发式过滤:直接采用 RefinedWeb 的启发式过滤规则(消融中 RefinedWeb 在 7B-1x 上最优)。
  • 去重:用 Bloom filter(near-dup)做 DCLM-Baseline(与 MinHash 在 7B-2x 上仅差 0.2 Core 点,但 Bloom filter 更易扩展到 >10TB);其他实验用 MinHash + 后缀数组。
  • 质量过滤(核心结论:模型过滤 >> 启发式 / 其他方法)
    • 对比了 7 类方法(PageRank、SemDedup、BGE-embedding 分类器、AskLLM、Perplexity、top-k 平均 logits、fastText 二分类器);
    • fastText 二分类器胜出。训练用约 400k 文档(正负各半),负样本固定为 RefinedWeb 复刻的随机采样;
    • 正样本最优组合 = OpenHermes-2.5(OH-2.5) + r/ExplainLikeImFive(ELI5) 高分帖(指令风格数据),比传统选择(GPT-3 用的 Wikipedia/OpenWebText2/RPJ-Books 混合)在 Core 上高 3.5 个百分点
    • 阈值:保留 fastText 分数 top-10%(优于 top-15% / top-20%)。这一步直接产出 DCLM-Baseline。
  • 去污染:发布去污染工具(针对 MMLU、HellaSwag 做 n-gram overlap 移除);不直接对 Pool 去污,而要求所有提交披露去污报告。实测对 MMLU/HellaSwag 去 overlap 不影响性能

扩展到万亿 token(DCLM-Baseline + 数学/代码 + 退火)

  • 3.8T DCLM-Baseline 与 StarCoder + ProofPile2 组合,训 7B 模型 2.6T token → MMLU 5-shot 64%(开放数据 SOTA,接近 Mistral-7B-v0.3 的 63% / Llama-3-8B 的 66%,但算力少 6.6×)。
  • 冷却(cool-down)阶段:最后 200B/270B token 用调整后分布——70% DCLM-Baseline(更严 fastText 阈值)+ 30% 数学数据集(退火/课程的体现,附录 Q)。

来源


Nemotron-CC(NVIDIA,2024-末)

概述

  • 论文:「Nemotron-CC: Transforming Common Crawl into a Refined Long-Horizon Pretraining Dataset」(arXiv 2412.02595)。
  • 动机:FineWeb-Edu / DCLM 偏「高质量」但激进过滤丢弃了大量 token,不利于 15T 这种长程训练;Nemotron-CC 同时拉满质量与数量
  • 规模6.3T token = 4.4T 全局去重的真实 token + 1.9T 合成生成 token,来自 CC 99 个快照;高质量子集 1.1T token

数据处理 pipeline(三大手法:分类器集成 + 合成 rephrasing + 减少启发式)

  • 抽取:用 jusText(对比 trafilatura,jusText 产出更多 token,高质量 token 多 +28.6%,对长程训练重要)。
  • 去重全局 fuzzy 去重 + 对八分之一片段做 exact-substring 去重
  • 质量打分(分类器集成):用多个 model-based 分类器集成——基于 FineWeb-Edu 分类器重训的 3 个变体(如 nemocurator-fineweb-nemotron-4-edu-classifiernemocurator-fineweb-mixtral-edu-classifier);集成可选出更大且更高质的 token 集。
  • 分桶:按质量分把文档分到 5 个质量桶;用 annealing(退火)评估每个桶的下游价值来定档。
  • 合成数据 rephrasing(1.9T token,关键创新)
    • Mistral-NeMo-12B-instruct(部分用 Nemotron-4-340B-instruct)对文本改写,不是把 LLM 当知识库,而是改写已有文本
    • 高质量数据Wikipedia 风格 prompt 改写,产生「新鲜的唯一 token」;
    • 4 种合成 prompt:(1) Diverse Question-Answer pairs、(2) Distill(精炼重写)、(3) Extract Knowledge、(4) Knowledge list
    • 低质量数据改写以降噪纠错;
    • 后处理移除「Here is a paraphrased version:」等前缀、去引号、过滤过短输出。
  • 减少启发式:对高质量数据关闭传统非学习型启发式过滤器,进一步提升高质量 token 产出。

效果(消融)

  • 1.1T 高质量子集:8B 模型训 1T token,MMLU 比 DCLM 高 5.6
  • 全量 6.3T:MMLU 匹配 DCLM 但唯一 token 多 4×
  • 用其加权版训 8B 模型 15T token,十项任务平均超 Llama-3.1-8B(同样 15T token)。
  • 工具:开源 NeMo Curator(Apache 2.0)。

来源


横向对比:关键技术维度

抽取(HTML → 正文)演进

  • WET 文件(C4/mC4/RedPajama-V2/Dolma 经 CCNet)→ WARC + trafilatura(RefinedWeb/FineWeb)→ WARC + resiliparse(DCLM,快 8×)→ jusText(Nemotron-CC,token 产出最高)。

去重策略谱系

  • 行/三句窗口(C4)→ CCNet 分片去重(RedPajama-V1/Dolma 网页)→ exact-substring(后缀数组)+ MinHash(RefinedWeb,最严,删 ~90%)→ URL/文档/段落级 Bloom filter(Dolma)→ 逐快照 MinHash(FineWeb,反直觉地优于全局)→ Bloom near-dup(DCLM-Baseline)→ 全局 fuzzy + exact-substring(Nemotron-CC)。
  • MinHash 参数对比:RefinedWeb = 5-gram / 20 桶 × 450 哈希;FineWeb = 5-gram / 14 桶 × 8 哈希(=112);RedPajama-V2 消融 = 13-gram / 128 哈希 / 9 bands × 13 rows;The Stack v2 文档站 = LSH 阈值 0.7。

质量过滤谱系(最关键的演进轴)

  • 纯启发式规则(C4 终结标点/bad-words;Gopher 规则)→ fastText 参考分类器(RedPajama-V1 用 Wikipedia 正样本;DCLM 用 OH-2.5+ELI5 正样本取 top-10%,证明指令风格正样本 +3.5pp)→ LLM 合成标注训轻量分类器(FineWeb-Edu:Llama-3-70B 标 0–5 教育分 → arctic-embed + 线性回归,阈值 3)→ 分类器集成 + LLM rephrasing 合成(Nemotron-CC)。

去毒 / PII / 污染检测

  • 去毒:C4 用 bad-words 黑名单(有偏);RefinedWeb 用 NSFW URL 黑名单;Dolma 用 Jigsaw 自训 hate/NSFW fastText 分类器。
  • PII:Dolma/FineWeb 匿名化 email/IP(Dolma 加电话,特殊 token 替换);The Stack v1/v2 做 PII redaction + opt-out。
  • 污染检测:DCLM 提供去污染工具(MMLU/HellaSwag n-gram overlap);C4 记录论文揭示其含评测集污染与机器生成文本。

总结:每个数据集的「一句话定位」

  • C4/mC4:规则清洗 CC 单快照的范式起点(数据由社区复刻发布)。
  • RefinedWeb:证明「纯网页 + 极致去重过滤」可媲美精选语料(删 90%)。
  • The Stack v1/v2:可许可、可 opt-out、可溯源(SWHID)的开放代码语料基石。
  • ROOTS:众包驱动的 59 语言 BLOOM 语料,强调 native-speaker 人工规则。
  • RedPajama-V1/V2:v1 复刻 LLaMA 配方;v2 提供 100T 原始 + 40+ 质量信号让用户自选过滤。
  • CulturaX:167 语言 + IQR 自动阈值 + 文档级 MinHash 去重,补齐多语去重缺口。
  • Dolma:3T token 多源 + 开源 Rust 工具,三级 Bloom 去重,OLMo 的数据基础。
  • FineWeb / FineWeb-Edu:15T token + 全消融;最大贡献是「逐快照去重」反直觉发现与「LLM 合成标注训教育分类器」。
  • DCLM:把数据 curation 变成可竞赛的 benchmark;证明「fastText 模型过滤 >> 启发式」,正样本用指令风格数据。
  • Nemotron-CC:质量与数量双拉满,分类器集成 + LLM rephrasing 合成 1.9T token,为 15T 长程训练优化。

一手源存档(sources/)

  • deep-dive/files/t5-c4-original-1910.10683.pdf(T5/C4)
  • deep-dive/files/c4-documenting-2104.08758.pdf(C4 记录论文)
  • deep-dive/files/mt5-mc4-2010.11934.pdf(mT5/mC4)
  • deep-dive/files/refinedweb-2306.01116.pdf(RefinedWeb)
  • deep-dive/files/the-stack-2211.15533.pdf(The Stack v1)
  • deep-dive/files/starcoder2-2402.19173.pdf(The Stack v2 / StarCoder2)
  • deep-dive/files/roots-bigscience-2303.03915.pdf(ROOTS)
  • deep-dive/files/redpajama-data-2411.12372.pdf(RedPajama v1+v2)
  • deep-dive/files/culturax-2309.09400.pdf(CulturaX)
  • 2024/files/2402.00159.pdf(Dolma)
  • 2024/files/2406.17557.pdf(FineWeb / FineWeb-Edu)
  • 2024/files/2406.11794.pdf(DCLM)
  • deep-dive/files/nemotron-cc-2412.02595.pdf(Nemotron-CC)