Skip to content
Published on

GPT 系列论文完全解析:从 GPT-1 到 GPT-4,语言模型改变世界的历程

分享
Authors

1. GPT 系列概述与年表

GPT(Generative Pre-trained Transformer)是 OpenAI 自 2018 年起陆续发布的一系列大规模语言模型(Large Language Model, LLM)。正如"预训练生成式 Transformer"这个名字所示,它以 Transformer Decoder 架构为基础,在大规模文本数据上进行无监督预训练(Unsupervised Pre-training),再将其应用于各种下游任务(Downstream Task),由此确立了一整套范式。

GPT 系列不仅仅是模型规模的不断增大 — 每一代都重新定义了语言模型的使用方式本身。按时间顺序梳理这段历程如下:

世代发表时间论文标题核心关键词参数量
GPT-12018.06Improving Language Understanding by Generative Pre-TrainingUnsupervised Pre-training + Supervised Fine-tuning117M
GPT-22019.02Language Models are Unsupervised Multitask LearnersZero-shot Transfer, WebText1.5B
GPT-32020.05Language Models are Few-Shot LearnersIn-context Learning, Scaling Laws175B
InstructGPT2022.03Training Language Models to Follow Instructions with Human FeedbackRLHF, Human Alignment1.3B~175B
GPT-42023.03GPT-4 Technical ReportMultimodal, Predictable Scaling未公开

值得注意的是,每一代论文标题本身就承载着核心信息。GPT-1 宣称"通过生成式预训练改善语言理解",GPT-2 主张"语言模型是无监督的多任务学习器",GPT-3 更进一步提出"语言模型是 Few-shot 学习器"。InstructGPT 给出了"用人类反馈训练模型遵循指令"这一实用方向,而 GPT-4 则简洁地只以"技术报告"发表,暗示了其商业化转向。

本文将结合公式,分析每篇论文的核心贡献、架构细节、训练方法论,以及对后续研究的影响。


2. GPT-1 (2018):Generative Pre-Training 的开端

2.1 论文概述

论文:"Improving Language Understanding by Generative Pre-Training" 作者:Alec Radford, Karthik Narasimhan, Tim Salimans, Ilya Sutskever (OpenAI) 发表:2018 年 6 月

GPT-1 的核心思想出人意料地简单。先在大规模无标注文本上预训练一个语言模型,再用少量标注数据针对特定任务进行微调(Fine-tuning)。 这种两阶段方法(半监督学习,Semi-supervised Learning)在当时改变了整个 NLP 领域的格局。

2018 年前后的 NLP 领域由任务专属(Task-specific)架构主导。情感分析、问答、文本蕴涵(Textual Entailment)等每个任务都要单独设计模型,并只用该任务的标注数据来训练,这是当时的标准做法。GPT-1 为这一范式提出了"通用预训练"这条新路径。

2.2 架构细节

GPT-1 采用了仅使用 Transformer Decoder 模块的架构。原始 Transformer(Vaswani et al., 2017)是 Encoder-Decoder 结构,而 GPT-1 选择了更适合自回归(Auto-regressive)语言建模的 Decoder-only 结构。

模型配置:

  • 层数:12 个 Transformer Decoder 模块
  • 隐藏维度(Hidden Dimension):768
  • 注意力头数:12 个(每个 64 维)
  • 前馈维度(Feed-Forward Dimension):3,072(=768×4= 768 \times 4)
  • 上下文窗口:512 个 token
  • 总参数量:约 117M(1.17 亿)
  • 激活函数:GELU(Gaussian Error Linear Unit)
  • 位置编码:可学习的位置嵌入(Learned Positional Embedding)

GPT-1 没有采用原始 Transformer 中固定的正弦位置编码(Sinusoidal Positional Encoding),而是采用了可学习的位置嵌入。这使模型能够直接从数据中学习位置信息,从而更灵活地适应各种任务。

2.3 Stage 1:无监督预训练(Unsupervised Pre-training)

在预训练阶段,模型在大规模无标注文本语料 U={u1,u2,...,un}\mathcal{U} = \{u_1, u_2, ..., u_n\} 上优化标准的语言建模目标函数。

L1(U)=ilogP(uiuik,...,ui1;Θ)L_1(\mathcal{U}) = \sum_i \log P(u_i \mid u_{i-k}, ..., u_{i-1}; \Theta)

其中 kk 是上下文窗口大小,Θ\Theta 是模型参数。也就是说,这是一个典型的自回归语言建模(Auto-regressive Language Modeling)目标 — 在给定前 kk 个 token 的条件下,最大化下一个 token 的概率。

具体来说,每个 token 的表示按如下方式计算:

h0=UWe+Wph_0 = UW_e + W_p hl=transformer_block(hl1),l[1,n]h_l = \text{transformer\_block}(h_{l-1}), \quad l \in [1, n] P(u)=softmax(hnWeT)P(u) = \text{softmax}(h_n W_e^T)

其中 U=(uk,...,u1)U = (u_{-k}, ..., u_{-1}) 是上下文 token 向量,WeW_e 是 token 嵌入矩阵,WpW_p 是位置嵌入矩阵。输出概率通过复用 token 嵌入矩阵 WeW_e(权重绑定,Weight Tying)来计算。

训练数据:使用了 BooksCorpus 数据集,由约 7,000 本未出版图书组成,包含约 5GB 文本。其中长篇文本较多,适合学习长距离依赖(Long-range Dependency)。

分词:使用 BPE(Byte Pair Encoding),通过 40,000 次合并(Merge)构建词表。

优化:使用 Adam 优化器,学习率在最初 2,000 步内从 0 线性增长(Linear Warmup)到 2.5×1042.5 \times 10^{-4},此后按余弦退火(Cosine Annealing)衰减。Batch Size 为 64,训练 100 个 Epoch。

2.4 Stage 2:有监督微调(Supervised Fine-tuning)

为了将预训练模型应用到特定任务,需要用标注数据 C\mathcal{C} 对其进行微调。给定输入 token 序列 x1,...,xmx_1, ..., x_m 及对应标签 yy,优化如下目标函数:

L2(C)=(x,y)logP(yx1,...,xm)L_2(\mathcal{C}) = \sum_{(x,y)} \log P(y \mid x_1, ..., x_m)

其中 P(yx1,...,xm)=softmax(hlmWy)P(y \mid x_1, ..., x_m) = \text{softmax}(h_l^m W_y)hlmh_l^m 是最后一个 Transformer 模块最后一个 token 的输出,WyW_y 是任务专属线性头(Linear Head)的权重。

核心技巧 — 辅助语言建模目标(Auxiliary Language Modeling Objective):GPT-1 在微调时也将原本的语言建模目标作为辅助损失一并使用,这样做能提升泛化性能并加速收敛。

L3(C)=L2(C)+λL1(C)L_3(\mathcal{C}) = L_2(\mathcal{C}) + \lambda \cdot L_1(\mathcal{C})

其中 λ\lambda 是辅助损失的权重,论文中使用 λ=0.5\lambda = 0.5

2.5 任务专属输入变换(Task-specific Input Transformation)

GPT-1 的另一项重要贡献,是提出了用单一 Transformer 架构处理多种任务的输入变换技巧。它没有改变架构本身,而是只改变输入格式,从而适配多种任务。

  • 文本分类:输入格式为 [Start] 文本 [Extract],对最后一个 token 的输出施加线性层
  • 文本蕴涵:用 [Start] 前提 [Delimiter] 假设 [Extract] 的形式连接两个句子
  • 语义相似度:交换两个句子的顺序生成两种输入,再将各自的输出逐元素相加
  • 多项选择:将每个选项分别与上下文拼接,生成多条序列,再用 Softmax 归一化

这种方法在几乎不改动模型架构的前提下就能适配多种任务,因而非常实用。额外增加的参数只有分隔符(Delimiter)token 的嵌入和最终线性层的权重 WyW_y

2.6 实验结果与意义

GPT-1 在 12 个 NLP 基准中的 9 个上取得了 State-of-the-art 的成绩。尤其是在常识推理(Commonsense Reasoning,Stories Cloze Test 上 86.5% 的准确率)、语义相似度(Semantic Similarity,QQP 上 70.3 F1)、问答(Question Answering,RACE 上 59.0% 的准确率)等多种任务上,都大幅超越了此前的模型。

但 GPT-1 真正的意义并不在于单项基准分数,而在于确立了"大规模无监督预训练 + 少量有监督微调"这一范式。这一范式此后延续到 BERT、RoBERTa、T5 等模型上,成为 NLP 领域的标准做法。


3. GPT-2 (2019):Zero-shot 学习的可能性

3.1 论文概述

论文:"Language Models are Unsupervised Multitask Learners" 作者:Alec Radford, Jeffrey Wu, Rewon Child, David Luan, Dario Amodei, Ilya Sutskever (OpenAI) 发表:2019 年 2 月

GPT-2 的论文标题包含一个大胆的主张:"语言模型是无监督的多任务学习器。" 也就是说,模型只用语言建模这一单一目标函数训练,却能在不做额外微调的情况下执行多种任务。

如果说 GPT-1 需要"预训练后再微调"这两个阶段,那么 GPT-2 证明了无需微调、以 Zero-shot 方式就能执行任务。这是一次根本性的范式转变。

3.2 核心思想:将任务视为语言建模(Task as Language Modeling)

GPT-2 的核心洞见是:所有 NLP 任务都可以被重新表述为条件语言建模

传统的有监督学习学的是条件概率 P(outputinput)P(\text{output} \mid \text{input})。GPT-2 将其扩展为 P(outputinput,task)P(\text{output} \mid \text{input}, \text{task}) 的形式,并以自然语言的方式提供 task 信息。

例如:

  • 翻译:将 (translate to french, english text, french text) 形式的序列表达为自然文本
  • 摘要:在文本后加上 TL;DR: 来引导模型生成摘要
  • 问答:以自然语言提供上下文和问题,让模型生成答案

这一思路的核心在于:只要语言模型足够大、学习了足够多样的文本,执行任务的能力就会自然地涌现(Emerge)。

3.3 架构细节

GPT-2 以 GPT-1 的架构为基础,做了几处重要修改。

主要变更:

  • Layer Normalization 位置调整:移动到每个子模块的输入端(Pre-norm)
  • 新增 Layer Normalization:在最后一个 Self-attention 模块之后追加
  • 残差权重初始化:残差路径的权重按 1/N1/\sqrt{N} 缩放(NN 为残差层数)
  • 上下文窗口扩大:512 → 1,024 个 token
  • 词表规模扩大:40,000 → 50,257(Byte-level BPE)
  • Batch Size 扩大:64 → 512

GPT-2 训练了 4 种规模的模型。

模型参数量层数隐藏维度头数头维度
Small117M127681264
Medium345M241,0241664
Large762M361,2802064
XL1,542M481,6002564

所有模型的头维度都固定为 64,前馈层(Feed-forward Layer)的维度则始终是隐藏维度的 4 倍(dff=4×dmodeld_{ff} = 4 \times d_{model}),这一模式在各规模上保持一致。

3.4 WebText 数据集

GPT-2 的另一项核心贡献是名为 WebText 的新训练数据集。

数据构建方法:

  1. 从 Reddit 收集获得 3 个以上 Karma 的外链(相当于经过人工质量把关)
  2. 收集了约 4,500 万条链接
  3. 用 Dragnet 和 Newspaper 库从 HTML 中提取文本
  4. 去重及基于启发式规则的清洗

数据集特征:

  • 约 800 万篇文档
  • 约 40GB 文本
  • 有意排除了 Wikipedia(以防止与评估数据集之间的数据泄漏)

WebText 的设计理念是"善用人工筛选,同时避免显式标注的成本"。用 Reddit 的 Karma 机制作为质量过滤器这一思路,启发了此后许多数据集的构建方式。

3.5 Byte-level BPE

GPT-2 在分词方式上也带来了重要创新。传统 BPE 在 Unicode 字符层级上运作,而 GPT-2 则在字节(Byte)层级上应用 BPE

这种方法的优点:

  • 完全覆盖:由于可以编码任意字节序列,OOV(Out-of-Vocabulary,词表外)问题从根本上被消除
  • 多语言支持:无需额外预处理即可处理多种语言和特殊字符
  • 基础词表规模:256(字节数) + 特殊 token

不过,单纯的 Byte-level BPE 会产生大量低效的合并,因此 GPT-2 增加了规则,禁止不同类别的字符相互合并。最终词表规模为 50,257 个。

3.6 Zero-shot 性能与 Scaling

GPT-2 的 Zero-shot 性能随模型规模的增大而持续提升。这一观察成为此后 Scaling Laws 研究的先声。

主要 Zero-shot 结果:

  • 语言建模:在 8 个语言建模基准中的 7 个上取得 State-of-the-art(包括未在 WebText 中训练过的领域)
  • Children's Book Test(命名实体):93.3% 准确率(比此前 SOTA 高 7%)
  • LAMBADA:困惑度(Perplexity)8.6(相比此前 SOTA 99.8 大幅改善)
  • 阅读理解(CoQA):55.0 F1(超过使用 127,000 条训练数据的 4 个既有模型中的 3 个)
  • 翻译(WMT14 En-Fr):Zero-shot 达到 11.5 BLEU(略微超过无监督翻译此前的 SOTA)
  • 摘要(CNN/Daily Mail):通过 TL;DR 提示词引导,得到质性上有意义的结果

3.7 "过于危险以至于不能发布"的争议

GPT-2 除了技术成果之外,在发布策略上也引发了极大关注。OpenAI 最初决定不公开 1.5B 参数的模型,只发布了最小的 117M 模型。理由是"存在被恶意滥用(假新闻、垃圾信息等)的重大风险"。

这一决定在 AI 社区引发了激烈争论。

支持方论点:

  • 不加节制地发布强大的文本生成模型,可能被滥用于大规模制造虚假信息
  • 需要为顾及社会影响的负责任披露(Responsible Disclosure)树立先例

批评方论点:

  • 1.5B 参数模型的危险性被夸大了
  • 这会妨碍学术界的可复现性(Reproducibility)
  • 存在出于营销目的而夸大其词的嫌疑

最终,OpenAI 于 2019 年 11 月发布了完整模型,此前担忧的大规模滥用案例并未出现。不过,这场争论此后成为 AI 安全(AI Safety)与负责任 AI(Responsible AI)讨论的重要契机。


4. GPT-3 (2020):In-context Learning 与 Scaling 的力量

4.1 论文概述

论文:"Language Models are Few-Shot Learners" 作者:Tom B. Brown, Benjamin Mann, Nick Ryder 等多位作者(OpenAI) 发表:2020 年 5 月(NeurIPS 2020)

GPT-3 是一个拥有1,750 亿(175B)参数、规模前所未有的语言模型。然而 GPT-3 真正的创新之处并不在于规模,而在于确立了 In-context Learning 这一新范式。它证明了完全不更新模型权重、仅在提示词(Prompt)中加入若干示例,就能执行多种任务。

4.2 In-context Learning 范式

GPT-3 论文系统性地比较了三种评估条件。

Zero-shot:仅以自然语言提供任务说明

Translate English to French:
cheese =>

One-shot:任务说明 + 提供 1 个示例

Translate English to French:
sea otter => loutre de mer
cheese =>

Few-shot:任务说明 + 提供 10~100 个示例(在上下文窗口允许的范围内)

Translate English to French:
sea otter => loutre de mer
peppermint => menthe poivrée
plush giraffe => girafe en peluche
cheese =>

这三种条件都完全没有梯度更新(Gradient Update)。模型纯粹通过前向传播(Forward Pass)来完成任务,这正是它与微调(Fine-tuning)的决定性差异。

论文对 In-context Learning 为何有效给出的解释是:在预训练过程中,模型自然地学习到了各种任务模式,而提示词中的示例,起到了"定位并激活(Locate and Activate)"模型内部已有相关能力的作用。

4.3 架构细节

GPT-3 的架构基本与 GPT-2 相同,但受 Sparse Transformer(Child et al., 2019)启发,交替使用了 Dense 与局部带状稀疏注意力(Locally Banded Sparse Attention)模式。

GPT-3 训练了 8 种规模的模型,以系统性地分析 Scaling 效应。

模型名称参数量层数dmodeld_{model}头数dheadd_{head}Batch Size学习率
GPT-3 Small125M1276812640.5M6.0×1046.0 \times 10^{-4}
GPT-3 Medium350M241,02416640.5M3.0×1043.0 \times 10^{-4}
GPT-3 Large760M241,53616960.5M2.5×1042.5 \times 10^{-4}
GPT-3 XL1.3B242,048241281M2.0×1042.0 \times 10^{-4}
GPT-3 2.7B2.7B322,56032801M1.6×1041.6 \times 10^{-4}
GPT-3 6.7B6.7B324,096321282M1.2×1041.2 \times 10^{-4}
GPT-3 13B13.0B405,140401282M1.0×1041.0 \times 10^{-4}
GPT-3 175B175.0B9612,288961283.2M0.6×1040.6 \times 10^{-4}

所有模型都使用 2,048 个 token 的上下文窗口,共训练了 300B(3,000 亿)个 token。模型越大,学习率越低、Batch Size 越大 — 这一模式被一致地应用。

4.4 训练数据构成

GPT-3 的训练数据混合了多个来源,其特点是根据各来源的质量差异化设置训练比重

数据集Token 数(B)训练比重Epoch
Common Crawl(经过过滤)41060%0.44
WebText21922%2.9
Books1128%1.9
Books2558%0.43
Wikipedia33%3.4

值得注意的是,Common Crawl 虽然占据了绝大部分 token,但其训练比重被限制在 60%。相反,高质量数据 WebText2 只有 19B token,却被赋予了 22% 的高比重。这反映出"数据质量比数量更重要"的判断。

Common Crawl 过滤流程:

  1. 基于与高质量参考语料(WebText、Books、Wikipedia)的相似度对文档进行过滤
  2. 对文档间执行模糊去重(Fuzzy Deduplication)
  3. 将参考语料加入训练数据,构成最终数据集

4.5 基准性能

GPT-3 175B 的 Few-shot 性能在多个基准上表现亮眼。

语言建模:

  • PTB(Penn Treebank):20.50 困惑度(Zero-shot SOTA)

问答:

  • TriviaQA:71.2% 准确率(Few-shot,与经过微调的 SOTA 相比具有竞争力)
  • NaturalQuestions:29.9% 准确率(Few-shot)
  • WebQuestions:41.5% 准确率(Few-shot)

翻译:

  • WMT14 En→Fr:25.2 BLEU(Few-shot)
  • WMT14 Fr→En:33.9 BLEU(Few-shot)
  • WMT16 En→De:24.3 BLEU(Few-shot)

SuperGLUE:

  • Few-shot 达到 71.8 分(超过经过微调的 BERT-Large 的 69.0 分)
  • 但仍未达到经过微调的 SOTA(90.0 分)

算术推理:

  • 两位数加法:100% 准确率
  • 三位数加法:80.4% 准确率
  • 四~五位数加法:准确率急剧下降

这些结果表明,模型规模越大、提供的示例越多,性能就越好 — 呈现出清晰的 Scaling 效应。

4.6 对 GPT-3 局限性的认识

论文也坦诚地记述了 GPT-3 的局限性。

文本生成质量:在生成长文档时会出现重复、连贯性丧失、不合逻辑的陈述等问题 Few-shot 的局限:在自然语言推理(NLI)、部分阅读理解任务上不及基于微调的模型 缺乏双向上下文:这是自回归模型的本质性局限,在某些任务上 BERT 等双向(Bidirectional)模型更具优势 样本效率(Sample Efficiency):人类只需一两个示例就能学会新任务,而 GPT-3 需要数十到数百个示例 可解释性不足:难以理解模型的决策过程,In-context Learning 的确切机制也尚不清楚


5. InstructGPT / ChatGPT (2022):贴合人类意图

5.1 论文概述

论文:"Training Language Models to Follow Instructions with Human Feedback" 作者:Long Ouyang, Jeff Wu, Xu Jiang 等多位作者(OpenAI) 发表:2022 年 3 月(NeurIPS 2022)

直到 GPT-3 为止的语言模型都存在一个根本性问题:"预测下一个 token"这一训练目标函数,与"有用且安全地遵循用户指示"这一实际使用目的并不一致。 无论大规模语言模型多么强大,它都频繁出现答非所问、生成有害内容、或自信满满地陈述与事实不符信息等问题。

InstructGPT 是一项用 RLHF(基于人类反馈的强化学习,Reinforcement Learning from Human Feedback)解决这一对齐问题(Alignment Problem)的开创性研究。而这项技术正是 ChatGPT 的基础。

5.2 对齐问题的定义

论文将既有语言模型的问题归纳为三类。

  1. 缺乏有用性(Helpfulness):不遵循用户指示,生成无关文本
  2. 缺乏真实性(Truthfulness):生成与事实不符的信息(幻觉,Hallucination)
  3. 缺乏无害性(Harmlessness):生成有害或带偏见的内容

这三者合称 HHH(Helpful, Honest, Harmless) 标准,InstructGPT 的目标就是利用人类反馈,使模型对齐(Align)到这一标准。

5.3 RLHF 三阶段流水线

InstructGPT 的 RLHF 流水线由三个阶段组成。

Step 1:有监督微调(Supervised Fine-Tuning, SFT)

第一阶段是传统的有监督学习。人类标注者(Labeler)针对提示词直接撰写理想回答,用这些数据对 GPT-3 进行微调。

  • 数据:约 13,000 组(提示词,理想回答)配对
  • 提示词来源:标注者自己撰写的提示词 + OpenAI API 用户提交的提示词
  • 训练:16 个 Epoch,采用余弦学习率衰减(Cosine Learning Rate Decay)

SFT 模型具备了基本的指令遵循能力,但还不完善,下一阶段将学习人类的偏好。

Step 2:奖励模型(Reward Model, RM)训练

第二阶段训练一个将人类偏好量化的奖励模型(Reward Model)

数据收集流程:

  1. 用 SFT 模型针对同一个提示词生成 KK 个不同的回答(KK 在 4 到 9 之间)
  2. 人类标注者对这 KK 个回答按偏好排序(Ranking)
  3. 生成 (K2)\binom{K}{2} 个比较对(Comparison Pair)

奖励模型损失函数:

loss(θ)=1(K2)E(x,yw,yl)D[logσ(rθ(x,yw)rθ(x,yl))]\text{loss}(\theta) = -\frac{1}{\binom{K}{2}} E_{(x, y_w, y_l) \sim D} \left[ \log \sigma(r_\theta(x, y_w) - r_\theta(x, y_l)) \right]

其中 rθ(x,y)r_\theta(x, y) 是奖励模型针对提示词 xx 与回答 yy 输出的标量值,ywy_w 是被偏好的回答,yly_l 是未被偏好的回答,σ\sigma 是 Sigmoid 函数。

这一损失函数基于 Bradley-Terry 模型,训练目标是让被偏好回答的奖励高于未被偏好回答。通过从一个提示词生成 (K2)\binom{K}{2} 个比较对,并在单次前向传播中一并计算,提升了效率。

  • 数据规模:从约 33,000 个提示词中收集的比较数据
  • 模型规模:6B 参数(在 SFT 模型的基础上移除最终的 Unembedding 层,并添加一个标量输出头)

Step 3:使用 PPO 的强化学习

第三阶段以训练好的奖励模型作为奖励信号,用 PPO(Proximal Policy Optimization) 算法优化 SFT 模型。

PPO 优化目标函数:

objective(ϕ)=E(x,y)DπϕRL[rθ(x,y)βDKL(πϕRL(yx)πSFT(yx))]\text{objective}(\phi) = E_{(x, y) \sim D_{\pi_\phi^{RL}}} \left[ r_\theta(x, y) - \beta \cdot D_{KL}(\pi_\phi^{RL}(y \mid x) \| \pi^{SFT}(y \mid x)) \right]

其中:

  • πϕRL\pi_\phi^{RL}:当前正在训练的 RL 策略(语言模型)
  • πSFT\pi^{SFT}:来自 SFT 阶段的参考策略
  • rθ(x,y)r_\theta(x, y):奖励模型的输出
  • β\beta:KL 惩罚项系数
  • DKLD_{KL}:KL 散度

KL 散度惩罚项的作用:

KL 散度项能防止模型在 RL 训练过程中偏离 SFT 模型太远。如果没有这一约束,模型可能会利用奖励模型的漏洞获得高奖励,但实际生成的却是毫无意义的文本 — 这种现象被称为奖励破解(Reward Hacking)

KL 散度的精确形式如下:

DKL(πϕRL(x)πSFT(x))=yπϕRL(yx)logπϕRL(yx)πSFT(yx)D_{KL}(\pi_\phi^{RL}(\cdot \mid x) \| \pi^{SFT}(\cdot \mid x)) = \sum_y \pi_\phi^{RL}(y \mid x) \log \frac{\pi_\phi^{RL}(y \mid x)}{\pi^{SFT}(y \mid x)}

在实际实现中,这一 KL 散度会直接从奖励中扣除。也就是说,修正后的奖励为:

R(x,y)=rθ(x,y)βlogπϕRL(yx)πSFT(yx)R(x, y) = r_\theta(x, y) - \beta \cdot \log \frac{\pi_\phi^{RL}(y \mid x)}{\pi^{SFT}(y \mid x)}

PPO-ptx:预训练混合(Pre-training Mix)

InstructGPT 还额外提出了 PPO-ptx 变体:在 RL 训练过程中,将针对原始预训练数据的语言建模目标函数作为辅助损失一并混合进来。

objective(ϕ)=E(x,y)DπϕRL[rθ(x,y)βDKL(πϕRLπSFT)]+γExDpretrain[logπϕRL(x)]\text{objective}(\phi) = E_{(x, y) \sim D_{\pi_\phi^{RL}}} \left[ r_\theta(x, y) - \beta \cdot D_{KL}(\pi_\phi^{RL} \| \pi^{SFT}) \right] + \gamma \cdot E_{x \sim D_{\text{pretrain}}} \left[ \log \pi_\phi^{RL}(x) \right]

其中 γ\gamma 是预训练损失的权重。这一项能防止模型在 RL 训练过程中一般语言能力退化(即"对齐税",Alignment Tax)。

5.4 惊人的结果:小模型战胜大模型

InstructGPT 最令人惊讶的结果是:在人类评估中,1.3B 参数的 InstructGPT 比 175B 参数的 GPT-3 更受青睐。 参数量少了 100 倍以上的模型,生成的回答却更有用、更真实、也更无害。

主要实验结果:

  • 在人类评估中,InstructGPT 的输出相比 GPT-3 的输出获得压倒性偏好
  • 在公开 NLP 基准上,性能与 GPT-3 相近甚至略有下降(对齐税)
  • 在 TruthfulQA 上,PPO 模型相比 GPT-3 有显著改善
  • 有害内容(Toxicity)生成量相比 GPT-3 约减少 25%

这一结果表明,训练方法论比模型规模更重要。"做得更大"并非唯一答案 — "使其对齐人类意图"才是核心所在。

5.5 从 InstructGPT 到 ChatGPT

InstructGPT 的技术成为 2022 年 11 月发布的 ChatGPT 的核心基础。ChatGPT 是在 GPT-3.5(GPT-3 的改进版本)之上应用对话形式的 RLHF 而得到的模型。

ChatGPT 的发布是 AI 历史上的一个分水岭。发布 5 天内用户突破 100 万,2 个月内突破 1 亿用户,开启了 AI 直接触达大众的时代。若没有 InstructGPT 论文的技术贡献,这场变革不可能发生。


6. GPT-4 (2023):多模态与可预测的 Scaling

6.1 论文概述

论文:"GPT-4 Technical Report" 作者:OpenAI 发表:2023 年 3 月(arXiv: 2303.08774)

GPT-4 Technical Report 与此前的 GPT 论文有着本质区别。架构、模型规模、训练数据、训练成本等核心信息大多未公开。 OpenAI 给出的理由是"出于竞争环境与安全考量"而不公开这些信息,这与 Open AI 这个名字之间的落差招致了大量批评。

尽管如此,这篇论文仍然包含了几项重要的技术贡献。

6.2 多模态输入

GPT-4 最引人注目的新能力是可以同时接收图像与文本作为输入。输出仍然只能是文本。

多模态能力示例:

  • 识别并解读图像中包含的文字
  • 分析图表和曲线中的数据
  • 解释幽默图片的内容及笑点
  • 解读科学示意图并解决相关问题

这一多模态能力此后发展为 GPT-4V(Vision),并被应用于实际服务中。

6.3 可预测的 Scaling(Predictable Scaling)

GPT-4 论文最重要的技术贡献是 Predictable Scaling 方法论。

其核心思想是:可以从小模型的表现,准确预测大模型的表现。 OpenAI 用与 GPT-4 相同的方法论训练了若干小规模模型,测量其性能,据此预测 GPT-4 的最终表现,再与实际训练结果进行比较。

Loss 预测:通过对使用 1,000 倍到 10,000 倍更少算力(Compute)训练的模型进行观测,用幂律(Power Law)预测出了 GPT-4 的最终 Loss。实际训练结果与预测非常接近。

HumanEval 编程性能预测:编程基准上的 Pass Rate 同样可以通过小规模模型的结果来预测。这说明不仅是 Loss,特定任务的性能也具有可预测性。

这种 Predictable Scaling 方法论的实用价值非常大。在投入耗资数千万到数亿美元的大规模模型训练之前,可以通过小规模实验预测最终性能,从而提前评估投入产出比

不过,论文也承认存在 Inverse Scaling 或能力突然涌现(Emergent Abilities)等难以预测的现象。尤其是特定能力在特定规模上突然出现的 Emergent Abilities,是 Predictable Scaling 的主要例外情况。

6.4 专业考试表现

GPT-4 在多种面向人类设计的专业考试中展现出令人印象深刻的表现。模型并未针对这些考试接受专门训练。

考试GPT-4 成绩/百分位GPT-3.5 成绩/百分位备注
Uniform Bar Exam(MBE+MEE+MPT)~298/400(前 10%)~213/400(后 10%)美国律师资格考试
LSAT163(前 12%)149(后 40%)法学院入学考试
SAT Evidence-Based R&W710/800(93rd)670/800(87th)美国大学入学考试
SAT Math700/800(89th)590/800(70th)美国大学入学考试
GRE Quantitative163/170(80th)157/170(62nd)研究生入学考试
GRE Verbal169/170(99th)154/170(63rd)研究生入学考试
AP Biology5(85~100th)4(62~85th)AP 生物
AP Chemistry4(71~88th)2(22~46th)AP 化学
AP Calculus BC4(43~59th)1(0~7th)AP 微积分
AP English Literature2(8~22nd)2(8~22nd)AP 英语文学

几个值得注意的模式:

  • 在法律、科学、数学领域相比 GPT-3.5 有戏剧性的性能提升(Bar Exam:后 10% → 前 10%)
  • 语言/文学领域相对表现较弱(AP English Literature:后 22%)
  • 数学推理有所改善,但仍算不上顶尖(AP Calculus BC:43~59th 百分位)

6.5 安全性与对齐改进

GPT-4 相比 GPT-3.5 在安全性方面也有大幅改进。

基于 RLHF 的安全训练:

  • 在训练过程中引入额外的安全奖励信号(Safety Reward Signal)
  • 使用 GPT-4 Zero-shot 分类器判断安全边界与回答风格
  • 对允许与不允许两类内容都施加安全奖励,以防止对合理请求的过度拒绝

量化改进:

  • 对不被允许内容的请求,响应比例相比 GPT-3.5 降低 82%
  • 对敏感请求(医疗建议、自我伤害等)的政策合规率提升 29%
  • 在内部对抗性事实性(Adversarial Factuality)评估中,得分比 GPT-3.5 高出 40%
  • 在 TruthfulQA 上,经过 RLHF 后从约 60% 提升到 80%

专家 Red-teaming:

  • 50 多位领域专家(AI 安全、网络安全、生物风险、国际安全等领域)参与了对抗性测试
  • 对高风险场景(自主复制、化学/生物武器信息等)进行了评估

6.6 GPT-4 的局限性

论文中明确承认的局限性如下:

  • 幻觉(Hallucination):仍然可能"自信地"生成与事实不符的信息。经 RLHF 大幅改善,但尚未完全解决。
  • 上下文窗口限制:训练时被限制在 8K/32K token,处理超长文档存在局限。
  • 训练数据截止时间:不了解训练数据截止时间之后的信息(训练数据截至 2021 年 9 月)。
  • 推理不完备:在复杂的多步推理中可能出错,尤其在数学证明或代码中的细微 bug 上容易出错。
  • 偏见与校准:社会偏见并未被完全消除,模型的置信度(Confidence)也未必与实际准确率一致。

7. Scaling Laws 深度解析

7.1 Kaplan Scaling Laws (2020)

与 GPT-3 同期,由 OpenAI 的 Jared Kaplan 等人发表的"Scaling Laws for Neural Language Models",为大规模语言模型研究提供了理论基础。

核心发现 — 幂律(Power Law)关系:

语言模型的交叉熵损失(Cross-entropy Loss)LL,分别与模型参数量 NN、数据集规模 DD、训练所用算力(Compute)CC 呈幂律关系。

L(N)NαN,αN0.076L(N) \propto N^{-\alpha_N}, \quad \alpha_N \approx 0.076 L(D)DαD,αD0.095L(D) \propto D^{-\alpha_D}, \quad \alpha_D \approx 0.095 L(C)CαC,αC0.050L(C) \propto C^{-\alpha_C}, \quad \alpha_C \approx 0.050

这一关系在跨越 7 个数量级以上的范围内成立,呈现出非常稳定的趋势线。

算力最优分配(Kaplan 版本):

论文得出的结论是,在固定算力预算 CC 下,要最小化 Loss,最优做法是扩大模型规模,同时相对少用数据。具体而言,算力增大 10 倍时,模型规模扩大 5.5 倍、数据只增加 1.8 倍最为高效。

NoptC0.73,DoptC0.27N_{\text{opt}} \propto C^{0.73}, \quad D_{\text{opt}} \propto C^{0.27}

这一结果被解读为"扩大模型规模比增加数据更高效",也成为 GPT-3 采用 175B 参数规模的依据。

7.2 Chinchilla Scaling Laws (2022)

2022 年,DeepMind 发表的"Training Compute-Optimal Large Language Models"(即 Chinchilla 论文),对 Kaplan 的 Scaling Laws 提出了重要修正。

核心发现:既有模型都训练不足(Under-trained)。

与 Kaplan 的结论不同,Chinchilla 论文主张模型规模与训练数据应以几乎相同的比例增长。具体而言,每个参数约配 20 个训练 token 才是算力最优的。

NoptC0.50,DoptC0.50N_{\text{opt}} \propto C^{0.50}, \quad D_{\text{opt}} \propto C^{0.50}

按此标准衡量,GPT-3(175B 参数,300B token)的训练数据是不足的。要实现算力最优训练,需要约 3.5T(3.5 万亿)个 token。

Chinchilla vs. GPT-3:

项目GPT-3Chinchilla
参数量175B70B
训练 token 数300B1.4T
Token/参数 比率1.720
MMLU 性能70.0%73.4%
Compute~3,640 PF-days~5,200 PF-days

Chinchilla 的模型规模比 GPT-3 小 2.5 倍,却用了多 4.7 倍的数据进行训练,取得了更高的性能。这一结果对此后大规模模型训练的方向产生了根本性影响。

7.3 Scaling Laws 对 GPT-4 的影响

GPT-4 的 Predictable Scaling 正是这一 Scaling Laws 研究的直接应用。如果小模型的 Loss 遵循幂律,就可以外推(Extrapolate)这条趋势线来预测大模型的 Loss。

GPT-4 论文所展示的,正是这种预测出乎意料地准确。这意味着 Scaling Laws 并非单纯的经验性观察,而是反映了语言模型训练过程中某种深层的结构性特征。

不过,这种可预测性也存在重要的局限:

  • Loss ≠ Capability:整体 Loss 的下降未必直接转化为特定能力的提升
  • Emergent Abilities:在特定规模上突然出现的能力难以用幂律预测
  • Inverse Scaling:在部分任务上,模型越大性能反而越差
  • 任务特异的可变性(Task-specific Variability):不同任务的 Scaling 效率差异很大

8. 整体架构对比

8.1 各代架构对比表

项目GPT-1GPT-2 (XL)GPT-3 (175B)InstructGPTGPT-4
发表时间2018.062019.022020.052022.032023.03
参数量117M1,542M175,000M1,300M~175,000M未公开
层数12489696(以 175B 为准)未公开
隐藏维度7681,60012,28812,288(以 175B 为准)未公开
注意力头数12259696(以 175B 为准)未公开
头维度6464128128(以 175B 为准)未公开
上下文窗口5121,0242,0482,0488,192 / 32,768
词表规模40,00050,25750,25750,257~100,000(推测)
训练数据BooksCorpus(5GB)WebText(40GB)混合(570GB)GPT-3 + 人类反馈未公开
训练 token 数~1B(推测)~10B(推测)300B300B + RLHF未公开
分词方式BPE(40K merges)Byte-level BPEByte-level BPEByte-level BPE未公开
位置编码LearnedLearnedLearnedLearned未公开
激活函数GELUGELUGELUGELU未公开
LayerNormPost-normPre-normPre-normPre-norm未公开
训练方式LM + Fine-tuningLM onlyLM onlyLM + SFT + RLHFLM + SFT + RLHF
多模态NoNoNoNoYes(图像输入)
稀疏注意力NoNoYes(部分)Yes(部分)未公开

8.2 范式的演进

比架构本身更重要的是范式的演进

GPT-1: 预训练 -> 微调(每个任务都需要单独微调)
         |
GPT-2: 预训练 -> Zero-shot(无需微调,直接使用)
         |
GPT-3: 预训练 -> In-context Learning(仅凭示例完成任务)
         |
InstructGPT: 预训练 -> SFT -> RLHF(用人类反馈实现对齐)
         |
GPT-4: 预训练 -> SFT -> RLHF + 多模态(多模态 + 安全性强化)

这一演进过程一以贯之的方向是减少用户的介入。GPT-1 每个任务都需要单独的训练数据和微调,而到了 GPT-4,几乎所有任务都可以仅凭自然语言指示完成。


9. GPT 的影响:AI 生态的变革

9.1 ChatGPT 与 AI 的大众化

GPT 系列最直接的影响,是通过 ChatGPT 实现的 AI 大众化

ChatGPT 增长指标:

  • 2022 年 11 月 30 日发布
  • 5 天内用户突破 100 万
  • 2 个月内用户突破 1 亿(史上最快纪录,远超 TikTok 用时 9 个月)
  • 截至 2024 年底,周活跃用户超过 7 亿

ChatGPT 把"AI"这一概念,从研究者和开发者的专属工具,转变为大众日常使用的工具。若没有 InstructGPT 的 RLHF 技术,这一转变不可能实现。

9.2 API 经济与 AI 原生服务

GPT-3 的 API 开放(2020 年 6 月),标志着 AI API 经济的开端。

新的商业模式:

  • Wrapper 服务:在 GPT API 之上构建专门化的用户体验(Jasper、Copy.ai 等)
  • 垂直 AI(Vertical AI):针对特定领域优化的 AI 解决方案(面向法律的 Harvey、面向医疗的 Hippocratic AI)
  • AI 增强型 SaaS:将 AI 功能整合进既有 SaaS 产品(Notion AI、GitHub Copilot 等)
  • Agent 框架:以 GPT 为核心推理引擎的自主智能体(AutoGPT、LangChain 等)

9.3 学术影响

GPT 系列也从根本上影响了学术研究的方向。

新研究领域的诞生:

  • Prompt Engineering:研究如何设计提示词以最大化 In-context Learning 的效果
  • Alignment Research:RLHF 之外的多种对齐技术(DPO、ORPO、Constitutional AI 等)
  • Mechanistic Interpretability:试图理解大模型内部运作机制的研究
  • Scaling Laws:定量分析模型性能与资源之间关系的研究
  • Evaluation:认识到既有基准的局限,并开发新评估方法论的研究

研究方法论的转变:

  • 研究重心从"模型架构创新"转向"数据、训练方法、对齐"
  • 算力需求的增长加剧了学术界与产业界研究之间的差距
  • 开源模型(LLaMA、Mistral 等)的出现,部分恢复了学术界的可及性

9.4 对产业与社会的影响

  • 教育:AI 辅导、自动评分、个性化学习内容生成
  • 医疗:辅助撰写病历文档、诊断支持、药物相互作用分析
  • 法律:判例检索、合同分析、法律咨询初稿撰写
  • 软件开发:代码生成、调试、文档编写(GitHub Copilot)
  • 内容创作:写作辅助、翻译、摘要、创意生成

10. 局限性与批评

10.1 幻觉(Hallucination)

GPT 系列最严重的局限,是自信满满地生成与事实不符的信息这一幻觉问题。

幻觉的类型:

  • 事实性错误:不存在的引用、错误的统计数据、虚构的历史事实
  • 逻辑跳跃:从前提到结论之间的跳跃式推理
  • 自我矛盾:在同一段对话中提出相互矛盾的主张

根本原因:

  • 自回归模型只生成"看起来合理的下一个 token",并不验证事实是否正确
  • 训练数据本身包含错误,而模型无法区分这些错误
  • RLHF 可能会奖励"自信地表达",反而助长了自信满满的错误

GPT-4 通过 RLHF,将幻觉相比 GPT-3.5 减少了约 40%,但彻底解决仍然遥远。这是当前 LLM 研究中最活跃的领域之一。

10.2 偏见(Bias)

大规模语言模型会反映、有时甚至放大训练数据中固有的社会偏见。

偏见的类型:

  • 性别偏见:在职业、性格特征等方面反映出的刻板印象
  • 种族/民族偏见:对特定种族的负面联想
  • 文化偏见:以英语世界、尤其是美国为中心的世界观
  • 社会经济偏见:特定阶层视角被过度代表

GPT-3 论文明确承认了这一点,并纳入了与性别、种族、宗教相关的偏见分析。InstructGPT 和 GPT-4 都试图通过 RLHF 减少偏见,但要彻底消除训练数据本身固有的偏见,从根本上仍是一个难题。

10.3 环境成本(Environmental Cost)

大规模模型训练的环境成本正日益引发关注。

训练碳排放估算:

  • GPT-3:约 552 吨 CO2e(相当于美国约 120 辆普通汽车一年的排放量)
  • GPT-4:估计约 15,000 吨 CO2e(非官方估计值,约为 GPT-3 的 27 倍)

水资源消耗:

  • 据报道,微软在 GPT-3 训练过程中,为数据中心散热使用了约 700,000 升淡水

批评与反驳:

  • 有观点反驳称,单次训练的成本虽然巨大,但训练出的模型被数亿人使用,人均成本其实微不足道
  • 模型效率优化(蒸馏 Distillation、量化 Quantization、剪枝 Pruning)与硬件进步正在降低成本
  • 但也存在 Jevons 悖论(效率提升反而导致总体消耗增加)的担忧

10.4 透明度与可复现性

对 GPT 系列最持久的批评之一是透明度不足

  • GPT-1:公开了论文、代码与模型(相对开放)
  • GPT-2:公开了论文,模型分阶段公开("过于危险"争议)
  • GPT-3:公开了论文,模型仅可通过 API 访问
  • GPT-4:架构、数据、训练成本等核心信息均未公开

这一趋势加深了与该组织"Open"AI 之名之间的落差,也严重损害了学术界的可复现性(Reproducibility)。作为对此的回应,Meta 的 LLaMA、Mistral AI 的 Mistral/Mixtral 等开放模型的重要性愈发凸显。

10.5 经济不平等与算力鸿沟(Compute Divide)

大规模模型训练所需资源的集中化,加剧了 AI 研究领域的经济不平等

  • GPT-3 训练成本:约 460 万美元(估计值)
  • GPT-4 训练成本:超过约 1 亿美元(估计值)
  • 这种规模的投入只有少数大型企业才能承担,大学与小型研究机构在结构上被排除在外

11. 总结:GPT 留下的遗产

贯穿 GPT 系列五篇论文的核心洞见可以总结如下:

1. Scale is (almost) all you need(规模几乎就是你所需要的一切)

从 GPT-1(117M)到 GPT-2(1.5B)再到 GPT-3(175B)的 Scaling,并不只是"同样的东西做得更大",而是引向了质变性质的新能力涌现。Zero-shot、In-context Learning、复杂推理等能力,都是只有在足够规模下才会出现的涌现能力(Emergent Abilities)。

2. Alignment changes everything(对齐改变一切)

InstructGPT 表明,训练方法论可能比模型规模更重要。1.3B 的 InstructGPT 战胜 175B 的 GPT-3 这一事实证明了,原始能力(Capability)与实际有用性(Usefulness)之间存在巨大差距,而 RLHF 能够弥合这一差距。

3. The bitter lesson revisited(苦涩的教训再度应验)

Rich Sutton 提出的"The Bitter Lesson" — 通用方法 + 更多算力,胜过专门化方法 — 在 GPT 系列中被反复印证。通用型 Transformer + 大规模预训练,远比任务专属架构更为有效。

4. Data is the new bottleneck(数据是新的瓶颈)

在 Chinchilla 的教训之后,训练数据的数量与质量与模型规模一同成为了核心瓶颈。互联网上的高质量文本是有限的,合成数据(Synthetic Data)的生成正在成为新的研究方向。

5. Safety is not optional(安全性并非可选项)

从 GPT-2"过于危险以至于不能发布"的争议,到 GPT-4 的 Red-teaming,安全性已经从可选项变为必选项。AI 模型越强大,安全且负责任的开发的重要性也随之成比例地增大。

GPT 系列尚未终结。GPT-5 及其后续模型将展现出怎样的能力尚不可知,但有一点是确定的:GPT 系列所确立的"大规模预训练 + 人类反馈对齐"这一范式,已经成为现代 AI 的基石,理解这一范式,是理解 AI 未来的必经之路。


12. 参考资料

  1. GPT-1:Radford, A., Narasimhan, K., Salimans, T., & Sutskever, I. (2018). "Improving Language Understanding by Generative Pre-Training." OpenAI Paper

  2. GPT-2:Radford, A., Wu, J., Child, R., Luan, D., Amodei, D., & Sutskever, I. (2019). "Language Models are Unsupervised Multitask Learners." OpenAI Paper

  3. GPT-3:Brown, T. B., Mann, B., Ryder, N., et al. (2020). "Language Models are Few-Shot Learners." NeurIPS 2020. arXiv:2005.14165

  4. InstructGPT:Ouyang, L., Wu, J., Jiang, X., et al. (2022). "Training Language Models to Follow Instructions with Human Feedback." NeurIPS 2022. arXiv:2203.02155

  5. GPT-4:OpenAI. (2023). "GPT-4 Technical Report." arXiv:2303.08774

  6. Scaling Laws:Kaplan, J., McCandlish, S., Henighan, T., et al. (2020). "Scaling Laws for Neural Language Models." arXiv:2001.08361

  7. Chinchilla:Hoffmann, J., Borgeaud, S., Mensch, A., et al. (2022). "Training Compute-Optimal Large Language Models." arXiv:2203.15556

  8. Transformer:Vaswani, A., Shazeer, N., Parmar, N., et al. (2017). "Attention Is All You Need." NeurIPS 2017. arXiv:1706.03762

  9. PPO:Schulman, J., Wolski, F., Dhariwal, P., Radford, A., & Klimov, O. (2017). "Proximal Policy Optimization Algorithms." arXiv:1707.06347

  10. RLHF:Christiano, P. F., Leike, J., Brown, T., et al. (2017). "Deep Reinforcement Learning from Human Preferences." NeurIPS 2017. arXiv:1706.03741

  11. Sparse Transformer:Child, R., Gray, S., Radford, A., & Sutskever, I. (2019). "Generating Long Sequences with Sparse Transformers." arXiv:1904.10509

  12. BPE:Sennrich, R., Haddow, B., & Birch, A. (2016). "Neural Machine Translation of Rare Words with Subword Units." ACL 2016. arXiv:1508.07909

  13. Carbon Footprint:Patterson, D., Gonzalez, J., Le, Q., et al. (2021). "Carbon Emissions and Large Neural Network Training." arXiv:2104.10350

📖 相关系列与推荐阅读

GitHub