模型训练核心:GPT 系列模型所依赖的数据 | 豆包MarsCode AI刷题

55 阅读5分钟

一、本堂课重点内容

本节课程通过分析 ChatGPT 的发展历程与核心原理,揭示了数据与算力对模型性能的重要作用。从 GPT 初代到 ChatGPT,技术的迭代不仅仅在于参数量的增加,还体现在数据的多样性、质量以及训练方法上的创新(如 RLHF)。同时,我们也看到了 GPT 系列模型在预训练语言模型和 RLHF 强化学习阶段所用数据的独特之处。

核心总结

数据:高质量、多样化的数据是 ChatGPT 模型成功的关键。

算力:庞大的计算资源支撑了大规模训练,使得模型的能力达到行业领先水平。

RLHF:强化学习通过少量高质量标注数据显著提升了模型的实际效果。

二、详细知识点介绍

1. GPT 系列模型的数据和算力演进
(1) GPT 初代

数据来源:

BooksCorpus 数据集:约 7000 本书籍,总量 5GB,内容以文学和学术为主,适合训练上下文依赖模型。

学术测评数据集:包括自然语言推理(如 SNLI)、问答系统(如 SQuAD)等小规模数据集。

模型特点:

参数量:1.17 亿。数据有限,适合单任务和特定领域的模型训练。采用了“预训练 + 微调(fine-tuning)”的训练方式。

(2) GPT-2

数据来源:

WebText 数据集:从社交媒体 Reddit 中爬取了高质量内容,经过精心清洗,总量达 40GB。

特点:数据覆盖范围广,包括新闻、评论、技术文章等多种风格。摒弃“预训练 + 微调”的传统模式,转为 zero-shot 学习,直接支持多任务。

模型特点:

参数量:15 亿。

数据规模大幅提升,模型效果显著优化。

(3) GPT-3

数据来源:

Common Crawl:开源网络爬虫数据,经过去重与清洗后,总量达 570GB。

补充数据集:

WebText(沿用 GPT-2 数据)。BooksCorpus(沿用 GPT 初代数据)。Wikipedia(高可信度的知识来源)。 模型特点:

参数量:1750 亿,规模空前。

支持 few-shot 学习,在广泛 NLP 任务中取得突破性进展。

2. InstructGPT 与 RLHF 的数据与方法
(1) 数据量与分布

InstructGPT 基于 GPT-3,通过引入强化学习(RLHF)优化用户交互体验:

数据分布:Prompt 数据包括标注员设计和用户收集。

RLHF 三个阶段:

SFT(监督学习):标注员提供的训练数据更多。

RM(奖励模型):用户数据占主导。

PPO(强化学习):仅使用用户数据。

数据总量虽仅为几万条,但通过高质量标注数据,显著提升了模型性能。

(2) 数据标注标准

核心原则:

Helpful(有帮助):回答明确、详尽且有用。

Truthful(真实):无事实性错误,不编造信息。

Harmless(无害):避免冒犯性或有害回答。

常见问题: 偏离主题或敷衍回答。

幻觉现象(Hallucination):如虚构事实或回答逻辑不严谨。

3. ChatGPT 的数据特点与能力扩展
(1) RLHF 数据集扩展

ChatGPT 的 RLHF 数据量可能远超 InstructGPT,得益于用户全球化、多样化的交互数据。数据类型更加注重:客观知识:如科学、数学、编程等领域问题。

语言任务:包括创意写作、翻译、总结等。

(2) 模型能力的突破

多语言处理:能支持多种自然语言。

非自然语言处理:阅读并理解编程语言(如 Python、C)。

解析图像或数字符号以文字形式表示的信息。

(3) 幻觉问题(Hallucination)

定义:模型生成虚假或不合逻辑的内容。

解决方案猜测:提升高可信度数据的权重。

增加真实问答数据比例(如科学问题)。

三、实践练习例子

例 1:清洗与过滤数据

任务:清洗以下数据,使之适合模型训练。

原始数据:

“Python 是一门编程语言!”

“Python 是一种广泛使用的语言。”

“Python 是一种语言,主要用来编程。” “这条记录没有意义!”

清洗结果:

“Python 是一种广泛使用的编程语言,适合各类开发任务。”

例 2:RLHF 数据标注

任务:对以下 prompt 和 response 打分,并给出改进建议。

Prompt:推荐一本适合儿童的冒险小说。

Response:

A:“儿童应该读《冒险小王子》。”

B:“我推荐《鲁滨逊漂流记》,虽然可能更适合青少年。”

评分标准:

Helpful:A(低,未说明原因)、B(高,提供解释)。

Truthful:A(虚构书名,低),B(高)。

Harmless:两者均无偏见。

例 3:探索 ChatGPT 的能力

任务:使用 ChatGPT 分析以下数据的含义。

输入 1:二进制数据 1010100001110010。

输入 2:文字表示图形:

image.png

预期输出:

输入 1 的含义:转换为十进制或对应 ASCII 字符。

输入 2 的含义:代表一个等腰三角形。

四、课后个人总结

通过本堂课的学习,我深刻认识到语言模型的发展不仅依赖于参数和算力,更重要的是数据的质量和创新的训练方法。以下是我的一些思考和收获:

1. 数据的作用

数据不仅仅是“量大即好”,还需要精心清洗和标注。高可信度数据可以解决模型的幻觉问题,而多样性数据则提升模型的适用范围。

2. RLHF 的优势

少量高质量标注数据可以有效提升模型的用户交互体验。RLHF 不仅优化了模型的回答质量,还让模型的输出更加真实和无害。

3. 实际应用与展望

ChatGPT 已经超越 NLP 领域,能应用于编程、逻辑推理等场景。未来,可能需要开发更智能的数据清洗与标注工具,以提升训练效率。

未来计划

1.实践 RLHF 数据标注,设计一些 prompt-响应对进行评分。

2.学习更多关于大规模数据清洗和去重的技术。

3.尝试构建一个小型模型,训练并测试其在多任务上的表现。