大语言模型预训练数据——数据采样方法介绍以GPT3为例

大语言模型预训练数据------数据采样方法介绍以GPT3为例

一、数据采样核心逻辑

这是 GPT - 3 训练时的数据集配置,核心是非等比例采样------不按数据集原始大小分配训练占比,而是人工设定不同数据集在训练中被抽取的概率(Weight in training mix ),让小数据集也能被多次学习,大数据集适当降低重复度,平衡模型学习广度与深度。

二、各列数据含义

  1. Dataset:训练 GPT - 3 用到的数据集,像 Common Crawl 是网页抓取数据,Wikipedia 是维基百科内容,Books1/2 是书籍文本等,覆盖不同来源、不同类型的语料。
  2. Quantity (tokens):每个数据集的token总量 ,比如 Common Crawl (filtered) 有 4100 亿 token,代表该数据集文本转成模型可处理的 token 后,总数量是这么多。
  3. Weight in training mix :训练时,从该数据集抽取样本的概率占比 。比如 Common Crawl 占 60%,意味着每一轮训练选样本,60%的概率从它这里选,和数据集本身大小无严格比例关系,是人为调的"采样权重"。
  4. Epochs elapsed when training for 300B tokens :当整体训练到 3000 亿 token 时,该数据集被"完整过几遍(Epoch )"。计算逻辑是:
    • 先算训练 3000 亿 token 时,从该数据集实际用了多少 token:3000 亿 × 该数据集权重
    • 再用"实际用的 token 量 ÷ 该数据集总 token 量",得到被训练的轮次(Epoch )。
    • 举个例子,以 Wikipedia 为例:
      • 按权重,训练 3000 亿 token 时,用了 3000 亿×3% = 90 亿 token
      • Wikipedia 总 token 是 30 亿,所以 Epoch = 90 亿÷30 亿 = 3.4 ,即被完整学习约 3.4 遍;同理,Common Crawl 是 3000 亿×60% = 1800 亿 token ,除以 4100 亿总 token,得到约 0.44 轮。

简单说,就是通过"自定义采样权重"打破数据集大小限制,让不同数据按需被模型学习多轮,最终"Epochs"体现的是:在 3000 亿总训练量下,单个数据集被重复学习的次数 ,背后是"权重×总训练量÷数据集自身大小"的计算逻辑。

相关推荐
罗西的思考1 天前
AI Agent框架探秘:拆解 OpenHands(10)--- Runtime
人工智能·算法·机器学习
冬奇Lab1 天前
OpenClaw 源码精读(2):Channel & Routing——一条消息如何找到它的 Agent?
人工智能·开源·源码阅读
冬奇Lab1 天前
一天一个开源项目(第38篇):Claude Code Telegram - 用 Telegram 远程用 Claude Code,随时随地聊项目
人工智能·开源·资讯
格砸1 天前
从入门到辞职|从ChatGPT到OpenClaw,跟上智能时代的进化
前端·人工智能·后端
可观测性用观测云1 天前
可观测性 4.0:教系统如何思考
人工智能
sunny8651 天前
Claude Code 跨会话上下文恢复:从 8 次纠正到 0 次的工程实践
人工智能·开源·github
小笼包包仔1 天前
OpenClaw 多Agent软件开发最佳实践指南
人工智能
smallyoung1 天前
AgenticRAG:智能体驱动的检索增强生成
人工智能
_skyming_1 天前
OpenCode 如何做到结果不做自动质量评估,为什么结果还不错?
人工智能
南山安1 天前
手写 Cursor 核心原理:从 Node.js 进程到智能 Agent
人工智能·agent·设计