GPT 系列论文精读笔记
GPT-1 Improving Language Understanding by Generative Pre-Training (2018)
核心观点
提出了一种结合了无监督预训练 和有监督微调 的半监督学习框架。这种半监督学习范式,旨在通过 生成式预训练 结合 判别式微调 来解决 NLP 任务中的数据瓶颈。其核心洞察在于:利用海量无标签文本让模型学习通用的语言底层特征,再通过极少量的有监督数据将这些特征迁移到具体任务中。
技术描述
GPT只使用了Transformer 的Decoder结构,而且只是用了Mask Multi-Head Attention。Transformer 结构提出是用于机器翻译任务,机器翻译是一个序列到序列的任务,因此 Transformer 设计了Encoder 用于提取源端语言的语义特征,而用 Decoder 提取目标端语言的语义特征,并生成相对应的译文。GPT目标是服务于单序列文本的生成式任务,所以舍弃了关于 Encoder部分以及包括 Decoder 的 Encoder-Dcoder Attention 层(也就是 Decoder中 的 Multi-Head Atteion)。
GPT保留了Decoder的Masked Multi-Attention 层和Feed Forward层,并扩大了网络的规模。将层数扩展到12层,GPT还将Attention 的维数扩大到768(原来为512),将 Attention 的头数增加到12层(原来为8层),将 Feed Forward 层的隐层维数增加到3072(原来为2048),总参数达到1.5亿。
流程
预训练 + 微调
GPT 模型遵循的是 自监督预训练(语言模型)+ 有监督微调 的两阶段范式。
预训练
核心逻辑: 预训练采用标准的语言模型目标函数(似然函数),即根据前 个词预测下一个词出现的概率。
假设有一个无标号的文本语料 ,GPT 通过最大化以下似然函数来训练模型:
其中, 是上下文窗口的大小。
计算步骤:
-
第一步(输入投影): 将词嵌入矩阵
与位置编码
相加,得到第一层的初始输出
。
-
第二步(特征提取): 经过
层 Transformer 块的处理。每一层将上一层的输出作为输入进行计算,由于 Transformer 架构不会改变输入输出的形状,特征得以逐层传递。
-
第三步(概率生成): 拿到最后一层的输出
,经过投影后利用 softmax 函数得到最终的词频概率分布。
微调 (Fine-tuning)
核心逻辑: 微调阶段使用的是“完整的输入序列 + 标签”。其最终的目标函数结合了有监督损失和无监督损失。
在微调任务中,使用有标号的数据集。具体来说,每次输入一个长度为
的词序列
,该序列对应的标号为
。
计算步骤:
-
预测标号: 将序列输入预训练好的 GPT 模型,获取 Transformer 块最后一层的输出
,将其乘以输出层参数
,再通过 softmax 得到预测标号的概率:
-
最大化似然: 计算所有带标号序列对的真实标号概率,并进行最大化:
-
联合训练: 实验证明,将有监督的分类任务与无监督的语言模型损失放在一起训练,效果会更好:
。
技术目的
探索一种任务无关的模型训练方案。研究的目标是降低自然语言处理对高质量标注数据的极度依赖,验证大规模无监督文本预训练能否作为一种通用的特征提取手段,从而赋能各种复杂的自然语言理解任务。探索如何利用海量的无标注文本,减少对特定任务昂贵标注数据的依赖。
评估结果
实验在 12 个极具代表性的 NLP 任务(涵盖自然语言推理、问答、语义相似度及分类)中展开。结果显示,GPT-1 在其中的 9 个任务中刷新了当时的 SOTA 记录。尤其在处理长文本依赖的逻辑推理任务上,其性能显著优于传统的 LSTM 结构,这充分证明了 Transformer 提取的特征具有极强的迁移性。
技术局限性
尽管 GPT-1 表现强劲,但它仍属于“窄人工智能”范式,对于每一个下游任务,我们仍然需要重新设计输入格式、准备标注数据并进行全参数更新并进行二次训练。这意味着模型虽然拥有了通用知识,但在应用时仍缺乏足够的灵活性和即时响应能力。
领域影响
成功验证了 Transformer 架构在生成式预训练中的潜力,开启了“预训练+微调”的 NLP 工业化标准。
笔记心得
在读这篇论文时,我注意到作者在微调时引入了 这个辅助损失项。它确保了模型在学习新任务时,不会忘记在预训练阶段学到的通用语言分布知识。这也许就是为什么 GPT-1 能够具备如此稳定迁移能力的原因之一。
GPT-2: Language Models are Unsupervised Multitask Learners (2019)
核心观点
提出语言模型应当作为“通用多任务学习器”的观点。GPT-2 的核心洞察在于:只要模型容量足够大、预训练数据足够多样,模型无需任何显式的人为监督或下游微调,仅通过零样本学习(就能直接执行多种下游任务。
技术描述
GPT-2 在架构上是对 GPT-1 的细化与规模扩张:
架构改进: 采用了 Pre-norm 结构,将层归一化移动到每个子层的输入端,类似于 ResNet 的改进思路,这使得模型训练更加稳定。同时,在最后一个自注意力块后增加了一个额外的层归一化。
参数规模: 将网络深度和宽度进一步推向极限。最大的 GPT-2 版本拥有 48层 Transformer 块,隐层维度达到 1600,总参数量达到 15亿(是 GPT-1 的 10 倍以上)。
数据质量: 放弃了简单的抓取,而是构建了 WebText 数据集(提取自 Reddit 上高赞回复对应的链接),确保了 40GB 文本的高质量和多样性。
输入编码: 使用了 Byte Pair Encoding (BPE),有效解决了词表过大和未登录词(OOV)问题,使模型能处理任何 Unicode 字符串。
流程
零样本推理 (Zero-shot Inference) / Prompt 机制
GPT-2 彻底摒弃了“预训练+微调”的传统二阶段范式,转向“预训练+提示预测”:
统一任务表示: 所有的 NLP 任务都被统一建模为概率预测问题 。
Prompt 引导: 不再通过修改模型结构来适配任务,而是通过自然语言提示引导模型。
翻译: 输入 (English text, French:),模型自动预测后续的法语译文。
摘要: 在文章末尾添加 TL;DR:,模型自动生成总结性文本。
技术目的
验证“规模效应”在无监督学习中的潜力。研究的目标是证明一个足够强大的语言模型可以在没有特定任务训练数据的情况下,通过概率建模习得处理多种语言任务的能力,从而推动通用人工智能(AGI)的进步。
评估结果
在 8 个主流语言模型测试集中,GPT-2 在 7 个 数据集上达到了 Zero-shot 场景下的 SOTA。虽然在摘要生成、翻译等需要强逻辑的任务上表现尚不如有监督模型,但它在不改变参数的情况下展示出的多任务迁移能力,有力地支持了“通用学习器”的假设。
技术局限性
尽管 GPT-2 开启了新范式,但在处理需要极高事实准确性或长程复杂逻辑的任务时,依然存在明显的“幻觉”现象。此外,在完全没有示例的情况下,模型有时难以准确捕捉到 Prompt 的意图。
领域影响
让学术界意识到 Scaling Law(规模定律)的力量,即单纯增加计算量、参数量和数据量就能带来智能的飞跃。它将 NLP 的研究范式从“特定任务建模”引导向了 提示工程的雏形。
GPT-3: Language Models are Few-Shot Learners (2020)
核心观点
提出情境学习概念。GPT-3 认为,当模型规模达到千亿级以后,它不再需要成千上万的标注数据进行微调,仅需在推理时提供 1~10个示例,模型就能展现出极其强大的任务适应能力,实现所谓的“大力出奇迹”。
技术描述
规模爆炸: 参数量跃升至 1750亿(GPT-2 的 116 倍)。为了支撑这种规模,GPT-3 的 96 层网络采用了交替的密集和局部带状模式,以平衡计算效率与上下文建模能力。
数据吞吐: 使用了经过高度清洗的 Common Crawl (4100亿 Token) 结合 WebText2、书籍和维基百科数据,总训练数据量超过了人类一生所能阅读的文本极限。
上下文窗口: 将上下文窗口(Context Window)扩大到 2048 个 Token,为 In-context Learning 提供了足够的采样空间。
流程
情境学习
GPT-3 确立了三种主要的交互模式,均不需要更新模型参数:
-
Few-shot: 在 Prompt 中提供 10 到 100 个任务描述和示例对(Context),然后输入新的 Query。
-
One-shot: 仅提供一个示例。
-
Zero-shot: 仅提供任务描述(如“请将以下中文翻译成英文”)。
技术目的
彻底解决“微调范式”带来的弊端:即每个任务都需要独立微调导致模型无法通用化。GPT-3 的目标是构建一个真正通用的 Few-shot 学习器,使其在面对从未见过的任务时,能像人类一样通过几个简单的例子迅速上手。
评估结果
在数十项 NLP 任务、常识推理、阅读理解以及简单的算术、甚至代码生成任务中,GPT-3 的 Few-shot 表现均表现出惊人的性能。在很多领域,它的效果已经能够与经过数千个标注样本训练的有监督模型相抗衡,甚至在闭卷问答任务中表现优异。
技术局限性
推理成本: 巨大的参数量导致推理延迟和显存成本极高。
长文本缺陷: 虽然能生成流畅的段落,但在生成长篇文章时,逻辑仍会出现自我矛盾。
静态限制: 模型无法实时更新知识,且由于是纯单向语言模型,在某些双向语义理解任务上可能逊于 BERT 类模型。
领域影响
确立了 Large Language Model (LLM) 在人工智能领域的统治地位。它不仅改变了 AI 的研发路径(转向研究如何编写更好的 Prompt),还催生了 ChatGPT 等后续应用,标志着 AGI 工业化时代的开启。
笔记心得
读完 GPT-3,最深刻的感觉是“量变引起质变”。Sparse Attention 的引入解决了超大规模参数下的计算效率瓶颈,而 In-context Learning 则更像是一种模型内部隐藏能力的“唤醒”。它告诉我们:模型不再是一个死板的函数,而是一个可以互动的知识库。我们不再是“训练员”,而变成了“沟通者”。这也印证了后来流行的那句话:Prompt 是开启 AI 宝库的钥匙。
GPT 进化逻辑总结表
| 特性 | GPT-1 | GPT-2 | GPT-3 |
| 主攻方向 | 预训练 + 有监督微调 | Zero-shot(零样本) | Few-shot(情境学习) |
| 参数量 | 1.17 亿 | 15 亿 | 1750 亿 |
| 数据量 | 约 5GB | 40GB | 45TB (Common Crawl 等) |
| 核心贡献 | 证明 Decoder 预训练可行 | 证明模型可以跨任务学习 | 证明规模决定了智能上限 |
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)