在 Scaling Law 背景下,预训练的数据选择变得越来越重要。然而现有的方法依赖于有限的启发式和人类的直觉,缺乏全面和明确的指导方针。在此背景下,该研究提出了一个数据管理器 DataMan,其可以从 14 个质量评估维度对 15 个常见应用领域的预训练数据进行全面质量评分和领域识别。通过大量的实验,利用 DataMan 所筛选出的部分数据进行模型训练,胜率最高可达 78.5%,且性能超过多使用 50% 数据训练的模型。
- 论文标题:DataMan: Data Manager for Pre-training Large Language Models
- 作者单位:浙江大学 & 阿里巴巴
- 论文链接:https://arxiv.org/abs/2502.19363
一. 逆向反思指导质量标准
随着大语言模型(LLMs)的快速发展,数据在模型性能提升中的作用越来越受到关注。现有的数据选择方法主要依赖于有限的手工规则和直觉,缺乏全面和明确的指导原则。为了解决这个问题,作者们提出了 “逆向思维”(reverse thinking)的概念,即通过提示 LLMs 自我识别哪些质量标准对其性能有益,来指导数据选择。
具体来说,这一过程共分为四步:
1)分析文本困惑度的异常:通过分析预训练所使用的文本数据,特别是那些困惑度(PPL)处于前 2% 和后 2% 的文本,来理解哪些文本特征与困惑度异常有关。该步使用一个超级 LLM(Super LLM)来分析这些异常现象背后的原因,并试图找出哪些文本特征对 LLM 的性能有积极影响。
2)迭代提炼质量标准:通过上述分析,作者迭代地提炼出了 13 个与文本质量相关的标准。这些标准包括准确性、连贯性、语言一致性、语义密度、知识新颖性、主题聚焦、创造性、专业性、语法多样性、结构标准化、风格一致性、原创性和敏感性。
3)构建全面的质量评分体系:除了上述 13 个质量标准外,作者还构建了一个综合性的评分标准,称为 “总体评分”(Overall Score)。这个评分标准综合考虑了上述 14 个标准,旨在提供一个更全面的文本质量评估。
4)验证质量标准的有效性:为了验证这些质量标准的有效性,超级 LLM 将对这些标准进行评分,并与人类评分进行了比较。结果显示,超级 LLM 的评分与人类评分有超过 95% 的一致性,这表明这些质量标准是有效的。
二. 数据卷王 DataMan
DataMan 是一个综合性的数据管理器,它能够对文本进行质量评分和领域识别,旨在促进预训练数据的选择和混合。DataMan 的训练和管理数据的过程主要包括以下几个步骤:
1)数据标注:DataMan 模型首先对 SlimPajama 语料库进行标注,标注内容包括 14 个质量评分标准和 15 个常见的应用领域。标注过程通过提示 Super LLM 生成文本的评分,并使用这些评分来创建一个用于模型微调的数据集。
2)模型微调:使用 Qwen2-1.5B 作为基础模型,通过文本生成损失进行微调。微调过程中,DataMan 模型学习如何根据给定的文本自动评分和识别领域。
3)数据采样:基于 DataMan 模型对数据的质量评分和领域识别,可以采用不同的数据采样策略。例如,通过 top-k 采样,根据质量评分和领域分布概率,从源和领域分布中采样数据,以最大化样本的代表性,同时确保数据源和领域的多样性。
三. 实验设置
DataPajama:DataPajama 是一个经过清洗和去重的 447B token 的预训练语料库,其已经由 DataMan 模型为其的每个文档打上 14 个质量评分和 15 个领域类型标签。尽管这一过程很昂贵(等于 1146 NVIDIA A800 小时),但可以通过大规模的并行化和低成本的 DataMan 模型来缓解,以可以服务于各种目的,如数据选择、数据混合或特定领域的持续预训练。
数据选择:该研究使用不同的数据选择方法从 DataPajama 中选择 30B token 的子集进行实验。这些方法包括:
1)Uniform:随机选择。2)DSIR:使用重要性重采样(DSIR)方法选择与英语维基百科或书籍领域相似的文档。3)Perplexity Filtering:基于困惑度过滤数据。4)Sample with Qurating:根据 Qurating 提出的四个质量标准(写作风格、事实、教育价值和所需专业知识)进行采样。5)Sample with DataMan:基于 DataMan 的 13 个质量标准进行采样。
模型训练:使用 Sheared-Llama-1.3B 模型架构,对从 DataPajama 中选择的 30B token 子集进行训练。训练设置包括使用 RoPE 嵌入和 SwiGLU 激活函数,以及 Adam 优化器等。
四. 实验发现
通过大量实验,该研究验证了 DataMan 方法的有效性,并展示了使用 DataMan 选择的数据进行训练的模型在多个下游任务上的优异性能。
Dataman 性能如何?
如下表所示,使用 DataMan 选择的数据进行训练的模型在语言建模、任务泛化能力和指令遵循能力上均优于使用均匀采样的基线模型。此外,使用 DataMan 的 13 个质量标准进行采样,相较于使用均匀采样,可以显著提升模型的性能,尤其是在上下文学习(ICL)任务中。
在指令跟随性能上,作者们的模型始终超过 SOTA 基线,总体得分达到了令人印象深刻的胜率 78.5%。
在垂直领域上继续预训练?
作者们应用 DataMan 的领域识别来过滤医学、法律和金融领域的垂类数据,并进行继续预训练以得到领域特定的模型。如图所示,模型性能得到了进一步提升,这验证了 DataMan 的域混合能力。
数据量与模型性能的关系?
该研究使用同样的方法抽样采样了一个更大的 60B 子集,以探究数据量的影响。如下表所示,模型在 ICL 等下游任务中都取得了进一步提升。
PPL 与 ICL 的失调?
下图我们绘制了 10 个下游任务中所有模型的困惑度(PPL)和上下文学习(ICL)性能之间的关系,包括 Pearson 和 Spearman 相关系数。结果表明,这种错位在 LogiQA 和 MMLU 任务中最为明显。更深入的分析确定了两个主要原因:i)- 域不匹配:预训练通常使用广泛的通用语料库,这使得模型在一个公共文本上表现出较低的困惑度。然而,像 MMLU 这样的任务,它跨越了 57 个不同的专门领域(如抽象代数和解剖学),可能会因为域不匹配尔在 ICL 中受到影响。ii)-ICL 任务的复杂性:许多 ICL 任务需要复杂的推理,而不是简单的文本生成,而困惑性评估难以捕获。这一点在 LogiQA 中尤为明显,该任务通过来自公务员考试中的专家撰写的问题来评估人类的逻辑推理技能。
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。