☰
数据效率突破:UltraX如何用16B Token击败原始数据20B Token的训练效果
2026/9/26 2:28:05 网站建设 项目流程

数据效率突破:UltraX如何用16B Token击败原始数据20B Token的训练效果

【免费下载链接】UltraX-Preview项目地址: https://ai.gitcode.com/OpenBMB/UltraX-Preview

UltraX 是 OpenBMB 社区推出的大规模预训练数据精炼框架,通过函数调用式的"程序化编辑"对网页语料逐条打磨。本仓库 UltraX-Preview 收录了 5 个经 UltraX 精炼的英文预训练语料(各约 20B Token),实验显示:UltraX 精炼数据在 16B Token 时即超越原始数据 20B Token 的训练效果,用更少 Token 换来更强模型。

为什么"数据效率"是大模型预训练的核心难题?

大模型预训练的成本主要消耗在 Token 量上,但"更多数据 ≠ 更好模型":

  • 原始网页语料信息密度低——导航栏、页脚、登录墙、错误页等样板内容占了大量篇幅;
  • 粗暴过滤会误伤——按规则整篇丢弃,容易连带删掉有价值的段落;
  • LLM 端到端改写——质量不可控、成本高,且可能悄悄改变原文事实。

UltraX 给出了第三条路:训练一个轻量精炼模型,为每条样本预测一组结构化编辑操作(插入、删除、修改),再在原文上确定性执行。既不是整篇丢弃,也不是自由改写,而是"外科手术式"的逐行编辑。

五大编辑操作:让每条样本被精准处理

操作作用
keep_all()文档无需修改
remove_all()整篇无价值(错误页、登录墙)
remove_lines(start, end)删除指定连续行
replace_str(line, old, new)在指定行内替换子串
add_line(base, sub_idx, content)在指定位置插入新行

底层由LAM + DCR 流水线支撑:行级对齐映射(LAM)先对齐原文与精炼文本的行,动态上下文替换(DCR)再把字符级编辑转成带唯一上下文锚点的可靠操作;配合滑动窗口推理、歧义过滤、同行操作合并等机制,保证在十亿级样本上稳定执行。更多技术细节见 README_ZH.md。

五大精炼数据集:每个约 20B Token 的预训练语料

数据集源语料说明数据位置
UltraX-FineWebFineWeb大规模 Common Crawl 网页语料data/UltraX-FineWeb/
UltraX-RedPajama-V2RedPajama-v2多源网页语料data/UltraX-RedPajama-V2/
UltraX-AICCAICCHTML 解析的高保真网页语料data/UltraX-AICC/
UltraX-Ultra-FineWebUltra-FineWeb质量过滤的 FineWeb 语料data/UltraX-Ultra-FineWeb/
UltraX-FineWeb-ProX-DocFineWeb-ProX-Doc文档级精炼语料data/UltraX-FineWeb-ProX-Doc/

每个数据集由若干 Parquet 分片组成(如 UltraX-FineWeb-en-part-0001-of-0104.parquet),可直接用于大规模训练。

实验证据:16B Token 如何打赢 20B Token?

评估设置非常"硬核":使用1B 参数的 MiniCPM 模型从零预训练,每个语料喂 20B Token,在 10 个知识基准(ARC-C、ARC-E、CSQA、HellaSwag、MMLU、OBQA、PIQA、SIQA、WinoGrande、SciQ)上零样本评估,直接对比 UltraX 精炼数据 vs 原始数据(Raw)vs ProX-C 文档级精炼:

  • 🏆 UltraX 在全部 5 个语料上取得最高平均分,50 个"任务×语料"组合中拿下 34 个最佳;
  • 📈 相比原始数据平均相对提升约2.00%,相比 ProX-C 约1.53%,多个数据集提升超 2%;
  • ⚡ 最有说服力的数据效率结论:在 FineWeb 上,UltraX 训练到 16B Token 时平均分 45.49,已超越原始数据与 ProX-C 训练满 20B Token 的结果(45.08 / 45.05)——相当于用约 80% 的 Token 预算打赢了对手,直接省下约 1/5 的训练算力。

背后的逻辑很直观:精炼后的文本去掉了样板噪声,每个 Token 承载的有效信息更多,模型的"学习速度"自然更快。

数据格式与快速上手

每个 Parquet 文件包含 5 列,结构清晰、便于审计:

列名说明
uid唯一标识符(raw_content的 MD5 哈希)
raw_content精炼前的原始文本
cleaned_content经 UltraX 精炼后的文本
processed_functions实际应用的编辑操作
source源语料名称

得益于processed_functions列,你可以逐条核对"模型到底改了什么",这是规则过滤和端到端改写都做不到的可解释性。加载数据集只需几行代码:

from datasets import load_dataset ds = load_dataset("openbmb/UltraX", "UltraX-FineWeb", split="train")

总结:UltraX 适合谁?

  • 🎯预算有限的预训练团队:数据效率提升意味着更短的算力周期;
  • 🧪研究数据精炼的团队:可复现的函数式编辑 + 完整的操作审计列;
  • 📦想要开箱即用精炼语料的工程师:5 个 20B Token 级语料即取即用。

使用注意:项目基于 Apache 2.0 协议 发布,但语料源自多个上游数据集,二次使用需自行核对各源语料的许可证。

完整数据集说明请查阅 README.md(英文)与 README_ZH.md(中文)。

【免费下载链接】UltraX-Preview项目地址: https://ai.gitcode.com/OpenBMB/UltraX-Preview

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询