MathPile: A Billion-Token-Scale Pretraining Corpus for Math
作者: Zengzhi Wang, Xuefeng Li, Rui Xia, Pengfei Liu
分类: cs.CL, cs.AI, cs.LG
发布日期: 2023-12-28 (更新: 2024-10-29)
备注: 43 pages. Accepted by NeurIPS 2024. https://github.com/GAIR-NLP/MathPile/
💡 一句话要点
提出MathPile:一个十亿级别token规模的数学预训练语料库,提升数学推理能力。
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 数学推理 预训练语料库 自然语言处理 数据清洗 数据过滤
📋 核心要点
- 高质量、大规模的语料库是构建基础模型的基石,但现有数学领域语料库的质量和规模仍有提升空间。
- MathPile通过严格的数据收集和清洗流程,构建了一个高质量、大规模的数学领域预训练语料库,侧重于数据质量而非数量。
- 通过在MathPile上进行持续预训练,模型在常见数学推理基准测试中取得了性能提升,验证了语料库的有效性。
📝 摘要(中文)
本文介绍了MathPile,一个多样且高质量的数学领域语料库,包含约95亿个token。在语料库构建过程中,我们坚持“少即是多”的原则,坚信数据质量优于数量,即使在预训练阶段也是如此。我们通过复杂的数据预处理、预过滤、语言识别、清洗、过滤和去重等步骤,确保语料库的高质量。此外,我们还对下游基准测试集进行了数据污染检测,以消除重复数据,并进行了持续预训练实验,从而提高了在常见数学推理基准上的性能。我们希望MathPile能够提升语言模型的数学推理能力,并开源其不同版本和处理脚本,以推动该领域的发展。
🔬 方法详解
问题定义:现有语言模型在数学推理方面表现不足,缺乏高质量、大规模的数学领域预训练语料库。现有语料库可能存在数据质量不高、规模不足、领域覆盖不全等问题,限制了模型在该领域的性能提升。
核心思路:论文的核心思路是构建一个高质量、大规模的数学领域预训练语料库MathPile,并通过在该语料库上进行预训练,提升语言模型在数学推理方面的能力。论文强调数据质量的重要性,认为高质量的数据比大量低质量的数据更有助于模型学习。
技术框架:MathPile的构建流程主要包括以下几个阶段:1) 数据收集:从多个来源收集数学相关的文本数据。2) 预处理:对收集到的数据进行初步处理,例如去除HTML标签、转换LaTeX公式等。3) 预过滤:使用规则或模型过滤掉明显不相关的文本。4) 语言识别:识别文本的语言,保留目标语言的数据。5) 清洗:去除噪声数据,例如重复文本、低质量文本等。6) 过滤:根据特定标准过滤数据,例如过滤掉包含敏感信息的文本。7) 去重:去除重复的文本数据。
关键创新:MathPile的关键创新在于其对数据质量的重视和严格的数据处理流程。论文提出“少即是多”的原则,认为高质量的数据比大量低质量的数据更有价值。通过精细的数据清洗、过滤和去重等步骤,MathPile确保了语料库的高质量。此外,论文还进行了数据污染检测,以消除测试集中的重复数据,保证了评估的公平性。
关键设计:论文没有详细描述具体的参数设置、损失函数或网络结构,因为MathPile主要是一个语料库,而不是一个具体的模型。但是,论文强调了数据处理流程中的一些关键设计,例如使用特定的规则或模型进行预过滤、清洗和过滤,以及使用特定的算法进行去重。这些设计旨在确保语料库的高质量和多样性。
📊 实验亮点
通过在MathPile上进行持续预训练,模型在多个数学推理基准测试中取得了显著的性能提升。论文进行了数据污染检测,确保了评估的公平性。实验结果表明,高质量的数学领域语料库能够有效提升语言模型的数学推理能力。
🎯 应用场景
MathPile可用于预训练各种语言模型,提升其在数学领域的推理能力,从而应用于自动解题、数学公式识别、数学文本理解等任务。该语料库的开源将促进数学领域自然语言处理研究的发展,并为相关应用提供更强大的基础模型。
📄 摘要(原文)
High-quality, large-scale corpora are the cornerstone of building foundation models. In this work, we introduce MathPile, a diverse and high-quality math-centric corpus comprising about 9.5 billion tokens. Throughout its creation, we adhered to the principle of "less is more", firmly believing in the supremacy of data quality over quantity, even in the pre-training phase. Our meticulous data collection and processing efforts included a complex suite of preprocessing, prefiltering, language identification, cleaning, filtering, and deduplication, ensuring the high quality of our corpus. Furthermore, we performed data contamination detection on downstream benchmark test sets to eliminate duplicates and conducted continual pre-training experiments, booting the performance on common mathematical reasoning benchmarks. We aim for our MathPile to boost language models' mathematical reasoning abilities and open-source its different versions and processing scripts to advance the field.