大模型学习笔记 06:数据越多越好吗?规模、质量与多样性的取舍
“数据越多越好”听起来很有道理,但读到数据章节时,我觉得更准确的说法应该是:数据规模只是一个维度。数量、质量、来源结构和任务覆盖要一起看。盲目增加重复或低质量文本,收益可能很小,甚至会把某些能力带偏。
三个维度不是同一件事
- 规模:可用于学习的 token 总量,以及不同来源的采样比例。
- 质量:文本是否连贯、有信息、可解析、可信且符合使用权限。
- 多样性:语言、主题、任务、文体和表达方式是否充分覆盖。
它们之间会互相影响。质量过滤提升平均可读性,但也可能减少稀有领域文本;提高专业语料比例能加强领域能力,也可能削弱通用表达;扩大数据规模会增加训练成本,也带来更复杂的治理要求。
语料集合告诉我们的不只是名字
书中讨论 Pile、ROOTS、RefinedWeb、SlimPajama 等公开数据集合。阅读这些集合时,值得关注的是来源组成、语言覆盖、许可证、过滤方式和去重策略,而不只是“有多少 TB”。不同数据集体现的是不同的收集与治理选择。
做数据扩展实验
比较数据方案时,尽量固定模型、训练预算和评测集,只改变一个主要变量,例如某个领域的采样比例。结果需要按任务、语言和风险类别拆分;否则总平均可能把特定能力的下降盖住。训练数据和评估数据还要检查近重复与时间泄漏。
一个更成熟的问题
与其问“还能抓多少数据”,不如问“当前模型具体缺什么能力,有哪些可靠数据能补这个缺口,补完后怎样证明有所改善”。这个问题把数据采集、训练和评估连在了一起,也避免为了规模而规模。
所以我更愿意把规模理解成资源,把质量和多样性理解成结构。语料更大,不自动等于模型更适合真实用户。
数据配比也很有意思。通用网页、书籍、代码和专业文档的训练比例,不只是一个技术参数,它实际上决定了模型更常遇到什么样的表达。如果专业数据太少,领域术语和格式可能学不牢;如果专业数据占比过高,模型在通用对话上的表现又可能发生变化。
这提醒我,数据扩展最好从能力缺口出发。先通过评估找出模型在哪些任务上失败,再寻找合法、质量可控、确实覆盖这些任务的数据。与其追求一个漂亮的语料规模,不如做几组小而清楚的对照实验,看看增加哪类数据真的带来了改善。
还要注意训练步数和数据规模的关系。同一批数据重复很多遍,不等于拥有了更多新的知识,反而可能增加过拟合。数据变大以后,训练预算、模型容量和学习率也要一起调整。书里列出不同公开语料库时,我更愿意把它们当成数据工程案例,而不是可以直接下载拼接的标准答案。
如果做小规模实验,可以先固定模型和训练预算,只改变语料配比;再按通用、专业、代码和安全任务分别评估。这样即使总体分数变化不大,也能看出哪种数据真正帮助了目标能力。
规模扩展还有一个容易被忽略的成本:数据越多,处理、存储、去重和版本管理越复杂。不能只统计下载了多少 TB,还要知道其中有多少有效 token、多少重复内容,以及每一类数据在训练中实际占了多少比例。否则“数据规模增长”可能只是磁盘和带宽的增长。
我会把数据配比当成一个可以做实验的变量。先做几组小样本训练,保持模型、学习率和训练步数一致,再比较通用能力、领域能力和安全任务的变化。这样即使最后没有扩大训练规模,也能知道哪些数据值得继续投入。
参考:《大规模语言模型:从理论到实践》,第 3 章 3.3-3.4 节,PDF 第 68-85 页。本文为学习整理与独立阐释。

浙公网安备 33010602011771号