遇见数据集

fineweb10B-tokenized-custom

收藏
Hugging Face2026-06-28 更新2026-06-29 收录
官方服务:

资源简介:

LittleTzu FineWeb-Edu Tokenized (Custom 65k Balanced) 是一个用于语言模型预训练的、经过分词处理的数据集。它基于 Hugging Face 的 FineWeb-Edu 语料库(配置:`sample-10BT`)派生而来,使用了一个自定义的、词汇量为 65,536 的 Byte-Level BPE 分词器进行分词。该分词器专为多领域训练(包括英语、多语言文本、数学和代码)优化,同时保持紧凑的词汇表大小,使其能自然地适配 `uint16` 数据类型,从而在加载时相比标准 `uint32` 或 `int32`/`int64` 加载器节省 50% 的内存/存储开销。分词器在平衡的 500 万文档子集上训练,涵盖英语(通用与教育)、多语言中文、意大利语、数学/科学、日语、代码和韩语领域,以确保其在各领域的高效性。数据集结构由扁平的 1D NumPy 二进制分片(.npy 文件)组成,序列化为 `uint16` 格式。每个分片恰好包含 100,000,000(100M)个 token。原始文档经过分词后,每个文档前都添加了 `<|eos|>` token 作为分隔,然后被打包成连续的 100M token 数组。数据集中包含一个验证集分片(`edufineweb_val_000000.npy`)和多个训练集分片(`edufineweb_train_000001.npy` 等)。该数据集适用于大规模因果语言模型预训练、数据加载管道基准测试,以及与 LittleTzu 训练配置兼容的轻量级、经济型模型训练基线。

创建时间:
2026-06-26
原始信息汇总

数据集概述

LittleTzu FineWeb-Edu Tokenized (Custom 65k Balanced) 是一个经过分词后的预训练数据集,基于 Hugging Face 的 FineWeb-Edu 数据集(配置:sample-10BT)构建,专门用于语言模型预训练。

  • 语言:英语、中文、日语、韩语、意大利语、西班牙语、德语
  • 许可证:其他(需参考原始数据集)
  • 任务类型:文本生成
  • 标签:预训练、分词、FineWeb-Edu、NumPy、自定义分词器、BPE
  • 数据规模:10B < n < 100B 词元

数据集结构

数据集由扁平的 1D NumPy 二进制分片文件(.npy 格式,以 uint16 序列化)组成:

  • 验证集:edufineweb_val_000000.npy(包含 1 亿个词元)
  • 训练集:edufineweb_train_000001.npyedufineweb_train_000099.npy

每个分片正好包含 100,000,000(1亿)个词元。原始文档被分词后,每个文档前加上 <|eos|> 标记,然后打包成连续的 1 亿词元数组。

自定义分词器:tokenizer_65k_balanced

分词器为 字节级 BPE(Byte-Level BPE),词汇量为 65,536,天然适配 uint16 数组,节省 50% 的内存/存储开销。

  • 模型类型:字节级 BPE
  • 词汇量:65,536
  • 预分词
    • ByteLevel(add_prefix_space=False)
    • Digits(individual_digits=True) — 将数字逐个拆分(如 1231, 2, 3
  • 特殊与控制词元
    • 标准:<|pad|>, <|bos|>, <|eos|>, <|unk|>, <|sep|>
    • 聊天格式:<|im_start|>, <|im_end|>
    • 保留位:50 个保留占位符(<|reserved_0|><|reserved_49|>

训练混合语料(均衡语料)

分词器基于 500 万文档的均衡子集训练:

语种/领域 来源 占比
英语(通用及教育) HuggingFaceFW/fineweb-edu 25%
多语言中文 epfml/FineWeb2-HQ (cmn_Hani) 20%
多语言意大利语 HuggingFaceFW/fineweb-2 (ita_Latn) 15%
数学/科学 open-web-math/open-web-math 15%
多语言日语 epfml/FineWeb2-HQ (jpn_Jpan) 10%
编程代码 bigcode/the-stack-v2-train-smol 10%
多语言韩语 HuggingFaceFW/fineweb-2 (kor_Hang) 5%

分词压缩效率(字符/词元)

语言/领域 自定义 65k(字符/词元) OpenAI cl100k_base(字符/词元) 相对效率
英语 5.13 5.13 持平(1.00x)
意大利语 5.19 3.59 +44.5%(1.44x)
韩语 1.71 1.09 +56.8%(1.57x)
日语 1.38 0.85 +62.3%(1.62x)
中文 1.20 0.94 +27.6%(1.28x)
Python 代码 2.35 2.94 -20.0%(0.80x)

数据准备与预处理

数据集通过并行化处理脚本(fineweb.py)完成分词和分片:

  1. 从原始 HuggingFaceFW/fineweb-edusample-10BT)数据集流式读取文档。
  2. 使用 tokenizer_65k_balanced.json 分词器对文档进行分词。
  3. 在每个文档前添加 <|eos|> 词元。
  4. 将词元流打包成连续的 1D NumPy 数组缓冲区(大小 1 亿)。
  5. 将每个分片转换为 np.uint16 格式并保存到本地或上传至 Hugging Face。

加载与流式读取

  • 下载分片:使用 huggingface_hubsnapshot_download 下载所有 .npy 文件。
  • PyTorch 数据加载器示例:使用 np.load 配合内存映射(mmap_mode="r")实现高效流式加载,按需生成输入(x)和目标(y)批次。

预期用途

  • 大规模因果语言模型预训练。
  • 数据加载管线的基准测试。
  • 轻量级、低预算的模型训练基线(兼容 LittleTzu 训练配置)。

引用与原始数据集

原始数据集为 Hugging Face 的 FineWeb-Edu,详细信息请参考文献及其 数据集页面。若使用本分词/分片版本,请引用原始数据集创建者。

搜集汇总
数据集介绍
fineweb10B-tokenized-custom 数据集图片
构建方式
fineweb10B-tokenized-custom数据集是基于Hugging Face的FineWeb-Edu语料库(sample-10BT配置)构建的衍生表示。原始文档流经定制化的小麻雀65K平衡分词器进行分词处理后,每个文档前方被添加<|eos|>标记作为分隔符,随后将连续的token流打包为固定大小为1亿token的一维NumPy数组缓冲区,最终以uint16数据类型序列化为扁平的二进制分片文件(.npy格式)。该过程通过并行化处理脚本实现,确保高效地将原始语料转换为适用于语言模型预训练的规范化格式。
使用方法
使用者可通过Hugging Face Hub的快照API下载所有.npy分片文件至本地目录,随后基于PyTorch框架实现高效的数据流加载。推荐的自定义ShardDataLoader类利用np.load的内存映射模式按需读取分片,并动态在批次间切换分片文件。在每次迭代中,从连续token序列中截取B*T+1长度的缓冲区,分割为输入序列x和目标序列y,同时将uint16数组转换为torch.long类型以适配嵌入层查询,从而实现低资源消耗的流式训练管道。
背景与挑战
背景概述
大规模语言模型预训练的成功高度依赖数据质量与分词效率的协同优化。FineWeb-Edu 数据集由 Hugging Face 团队于2024年创建(Lozhkov等人),旨在从海量网络文本中筛选高质量教育内容,推动开放语言模型的科学训练。在此基础上,LittleTzu 研究团队构建了 fineweb10B-tokenized-custom 数据集,采用自研的 65K 平衡分词器对 FineWeb-Edu 的 10B 样本子集进行标记化处理。该数据集的核心创新在于:通过均衡涵盖中、日、韩、意、德等多语种及数学、代码领域的分词器训练语料,在紧凑词汇表下实现跨域语义密度的显著提升,为中小规模模型(124M-500M参数)提供高效的预训练数据基础设施。其以 uint16 二进制分片存储的格式,更开创了降低 I/O 开销与内存占用的范式。
当前挑战
该数据集面临的挑战主要源自领域问题与构建过程两个方面。在领域问题层面,通用分词器(如 cl100k_base)对非英语文本的压缩效率低下,导致模型在多语言、数学与代码任务中表征稀疏;而主流大词汇表分词器(128K)在小模型训练中引发严重的存储与计算冗余,阻碍预训练收敛速度。构建过程中,研究者需在控制词汇量仅 65K 的前提下,平衡七个差异悬殊的语言与领域分布(如英语占25%而韩语仅5%),以防止分词器偏向高频英语模式;同时,需将原始文档流高效标记化并打包为精确 100M token 的连续分片,处理不同文档长度与 <|eos|> 标记插入带来的边界对齐问题,确保内存映射加载的零中断与跨分片迭代的语义连贯性。
常用场景
经典使用场景
在自然语言处理与语言模型预训练的前沿领域,fineweb10B-tokenized-custom数据集承载着源自FineWeb-Edu的高质量教育文本,经由专为多领域平衡设计的65K词汇BPE分词器深度加工,以紧凑的uint16格式存储为百兆令牌分片。该数据集最经典的使用场景在于驱动因果语言模型的大规模预训练,尤其适合参数量在124M至500M之间的中小型模型。研究者可借助其高效的分片流式加载机制,规避全量数据的内存瓶颈,在有限算力条件下开展多语言、多学科语料的联合训练,从而探索跨领域语义表征的收敛特性。
解决学术问题
该数据集的核心学术贡献在于破解了传统大规模分词器在资源受限场景下的效率悖论。通过训练一个仅65K词汇的字节级BPE分词器,并在中、日、韩、意等多语言以及数学、代码领域实现压缩效率显著优化,它有效验证了紧凑词表在保持语义密度前提下降低存储与计算开销的可行性。这一设计直指多语言模型预训练中的词汇表冗余问题,为在低资源环境或轻量级模型中实现高效跨语言知识迁移提供了实证依据,从而推动了更经济、更具包容性的预训练范式发展。
实际应用
在实际部署层面,该数据集展现出卓越的工程适配性,尤其适用于预算敏感型的小型实验室或初创团队的基准研究。其预分片的NumPy格式与uint16编码大幅简化了数据流水线的构建,配合内存映射加载与PyTorch数据加载器的无缝集成,使得在单卡或低显存环境下也能快速启动预训练实验。此外,该数据集作为FineWeb-Edu生态的降本衍生版本,常被用于验证自定义分词器效果、比较不同词表规模对下游任务的影响,以及构建轻量级多语言预训练基线的标准测试床。
数据集最近研究
最新研究方向
该数据集聚焦于为中小规模语言模型(124M-500M参数)提供高效预训练方案,核心创新在于定制化65K词汇量的Byte-Level BPE分词器,通过平衡多领域语料训练实现跨语言与代码的压缩效率突破。其采用uint16存储格式降低50%内存开销,结合FineWeb-Edu教育语料库的分片式npy结构,为资源受限场景下的多语言预训练、数学推理和代码生成等前沿任务开辟了轻量化路径。这一设计紧随大模型领域追求训练效率与经济性的热点趋势,尤其强化了非英语语言(如中日韩)的语义密度,推动教育领域多模态理解与低资源语言建模的实用化进展。
以上内容由遇见数据集搜集并总结生成
二维码
社区交流群
二维码
科研交流群
商业服务