The RefinedWeb Dataset for Falcon LLM: Outperforming Curated Corpora with Web Data, and Web Data Only


TL;DR

本文提出了一种仅使用网页数据,通过大规模精细过滤和严格去重,就能训练出顶尖大语言模型(LLM)的方法,并发布了由此产生的5万亿token数据集RefinedWeb,挑战了LLM预训练必须混合“高质量”精选语料库的传统认知。

关键定义

本文提出或使用的核心概念包括:

相关工作

当前,顶尖的大语言模型(LLMs)通常在一个混合数据集上进行预训练,这个混合数据集包含大规模的网页爬取数据(如C4、OSCAR)和所谓的“高质量”精选语料库(如The Pile,包含书籍、技术论文、社交媒体对话等)。普遍的观点认为,这种数据混合对于模型获得强大的零样本(Zero-shot)泛化能力至关重要。

然而,随着模型规模的增长,遵循新的缩放定律(Scaling Laws),所需的数据量也飙升至数万亿token的级别。这带来了两个关键问题:

  1. 可扩展性瓶颈:人工策划和整理高质量语料库的过程劳动密集,难以扩展到万亿token的规模,可能很快会面临高质量数据枯竭的问题。
  2. 网页数据质量:尽管网页数据量巨大,但其原始质量被认为远低于精选语料,直接使用效果不佳。

本文旨在解决的核心问题是:能否仅通过改进对海量网页数据的处理方式,来获得一个质量足够高、规模足够大的数据集,从而训练出性能与使用精选语料库训练的模型相媲美甚至超越的LLM?

本文方法

本文提出了一个名为MDR (MacroData Refinement)的数据处理流水线,用以从CommonCrawl网页数据中生成高质量的RefinedWeb数据集。MDR流水线的设计原则是规模优先 (Scale first)严格去重 (Strict deduplication)中性过滤 (Neutral filtering),避免使用除语言识别外的机器学习模型进行过滤,以减少引入额外偏见。

MDR流水线包含以下三个主要阶段,如下图所示,原始CommonCrawl数据在经过MDR处理后,近90%的文档被移除:

MDR流水线各阶段数据移除率

图注:MDR流水线的连续阶段移除了近90%的CommonCrawl原始文档。其中,过滤和去重步骤各自将数据量减半。

MDR流水线的详细步骤概括在下表中:

阶段 步骤 详情
文档准备 URL过滤 聚合了460万个域名的黑名单、基于关键词的URL评分系统,并屏蔽了维基百科等常见高质量来源以备将来混合使用。
  文本提取 使用\(trafilatura\)库从原始HTML中提取主要内容,去除导航、广告等无关文本。
  语言识别 使用\(fastText\)分类器识别文档语言,本文仅保留英语文档。
过滤 文档级过滤 移除文档内部的重复内容(行、段落、n-gram),并根据长度、符号/词语比例等启发式规则过滤掉低质量或机器生成的垃圾文本。
  行级修正 移除文档中残留的无用行(如“点赞数”、“导航按钮”),若修正内容超过文档的5%,则丢弃整个文档。
去重 模糊去重 使用\(MinHash\)算法识别并移除内容高度相似的文档(如许可证模板、SEO填充文本)。
  精确去重 使用后缀数组 (Suffix Array) 移除数据集中所有长度超过50个token的完全相同的子字符串。
  URL去重 移除在不同CommonCrawl转储批次中被重复爬取的相同URL。


实验结论

本文通过一系列实验,验证了仅使用RefinedWeb数据集训练的模型的性能。

模型在main-agg任务集上的零样本性能对比

图注:在main-agg任务集上,相同计算预算下,使用RefinedWeb训练的模型(作者方模型)显著优于使用The Pile训练的公开模型(▼),并达到了与GPT-3(■)相当的性能水平。

模型在core-agg和ext-agg任务集上的零样本性能对比

图注:在core-agg(左)和ext-agg(右)任务集上,RefinedWeb训练的模型同样表现出色,超越了其他基于The Pile的公开模型,并与GPT-3性能相当。