枢纽
输入模态language

GPT-3:规模够大,「上下文学习」就免费送

Tom B. Brown 等 31 位作者(OpenAI)。NeurIPS 2020;arXiv:2005.14165v4, 2020-07。 foundation_modelsLLMin-context learning

🧠 一句话心智模型:把自回归语言模型放大到 175B 参数,发现一个意想不到的能力出现了——不用梯度更新、不用微调,只靠把几个例子塞进上下文,模型就能做新任务。这叫「上下文学习(in-context learning)」,GPT-3 第一次把它做成了通用范式:一个模型,N 个任务,零/一/少样本通吃。

🎯 为什么重要:「微调」之前是必需品,GPT-3 说不是了

2020 年前,预训练 + 微调是 NLP 的标配:每个下游任务都要收集几千~几十万条标注数据,做梯度更新。GPT-3 把这套颠覆了——提出 4 种评估方式(论文 §2.0,Fig.2.1),把「微调」踢出主力阵容:

Fine-Tuning(FT) 每任务微调权重 · 数据:千~十万级标注 · 推理:单次前向 · 性能:最强 ❌ 每任务都要数据 ❌ 易过拟窄分布 ❌ 易被对抗利用 本文不做 FT Few-Shot(FS) K=10~100 示例进上下文 · 数据:几十条示例 · 推理:单次前向 · 权重:不动 ⚠️ 仍需少量示例 ⭐ 本文主推 One-Shot(1S) 只给 1 个示例 · 数据:1 条示例 · 最贴近人给人派活  的方式(如 MTurk) · 比 FS 难 Zero-Shot(0S) 只用自然语言指令 · 数据:0 条示例 · 最贴近人对人的  自然指令沟通 · 最难,可能歧义 最公平比对人 任务专属数据越来越少 →
图 1(依论文 Fig.2.1 重绘):GPT-3 把「微调」踢出主力,定义了 0/1/Few-Shot 三种「无梯度更新」评估方式。从此,下游任务可只用「文本交互」完成。
核心矛盾:人类学新任务只要「一句话指令」或「一两个例子」,而 NLP 系统却要「几千条标注 + 梯度更新」。GPT-3 的赌注:规模够大,in-context learning 就能「涌现」——把模型做大,让它在预训练里学到「如何按上下文示例完成任务」的元能力。

💡 核心思想:预训练 = 学「技能与模式识别」,推理 = 用上下文激活

论文把这套机制命名为 meta-learning(外循环 = 预训练,内循环 = in-context learning)。关键直觉:预训练时模型见过海量「任务模式」(问答、翻译、改写……都隐含在自然文本里);推理时给几个示例,就在一次前向里把这些模式「点亮」

外循环 · 预训练 (在 ~4990 亿 token 上学) CommonCrawl(60%) + WebText2(22%) + Books(16%) + Wiki(3%) 自回归下一个 token 预测 无任何任务标签 → 模型同时学到: 语言流畅度 + 世界知识 + 「按上下文办事」的元技能 内循环 · in-context learning (推理时,零梯度更新) Translate English to French: cheese → fromage robot → robot sea → mer book → ? ← 待预测 在一次前向里,示例「点亮」对应技能 → livre 无梯度更新、无微调
图 2(依论文 Fig.1.1 重绘):双层循环结构。外循环:在原始文本上学技能;内循环:在上下文里激活技能。模型越大,内循环学得越快(论文 Fig.1.2/1.3 的「in-context learning curve」越陡)。

关键证据:规模带来「元能力」的非线性跃升。论文 Fig.1.2 在「去掉随机符号」这种小任务上显示——小模型几乎学不会 in-context,大模型一学就会。Fig.1.3 汇总 42 个精度类基准:zero-shot 平滑上升,few-shot 随规模陡升——说明「会使用上下文」是规模带来的新能力。

🛠️ 怎么做:朴素放大 + 数据清洗 + 三档评估

维度具体做法为什么这么做
① 模型架构GPT-2 同款 Transformer,加 Sparse Transformer 的稠密 + 局部带状稀疏交替注意力;8 个尺寸(125M → 175B,Table 2.1)架构不变,把规模作为唯一变量;稀疏注意省显存
② 数据CommonCrawl 41 个月分片(45TB 压缩 → 570GB 过滤后,~410B token);与高质量参考集做相似度过滤;模糊去重;加 WebText2 / Books1 / Books2 / Wikipediaraw CC 噪声大;过滤 + 去重 + 加高质量语料三步提升质量
③ 训练300B tokens;按 Scaling Law [KMH+20] 选「大模型 + 较少 token」组合;V100 集群上模型并行(深度 + 宽度)大模型在小数据上每 token 更划算;这是 Scaling Law 给出的非直觉结论
④ 数据配比不按数据量等比采样;高质量数据集(WebText2/Wiki)被采样 2.9~3.4 次,CommonCrawl 只 0.44 次用「重复看优质数据」换质量,接受少量过拟合
⑤ 评估每任务跑 zero/one/few-shot 三档;few-shot K 从训练集随机抽 K=10~100;多选用似然打分,自由生成用 beam=4严格区分「会任务」与「会被示例唤醒」;零梯度更新让评估干净
⑥ 数据污染分析专门 §4 分析训练-测试重叠;标记/剔除污染严重的数据集大模型记忆力强,必须证明不是「背答案」
🔮 直觉:为什么「上下文学习」要规模才能涌现?
小模型对上下文示例「无动于衷」——它们只能死记;而大模型把「按示例模式外推」本身作为一种模式学进参数。这就像小孩背乘法表 vs 数学家看出「这个序列的规律是 X」——前者要例子一一对应,后者从结构泛化。GPT-3 的贡献是证明:这种「看出规律的能力」是规模带来的。

📊 关键结果:在 50+ 任务上,Few-Shot 逼近微调 SOTA

任务0-shot1-shotfew-shot对比
TriviaQA(闭卷问答)64.368.071.2超 T5-11B+SSM 微调,闭卷 SOTA
CoQA(F1)81.584.085.0接近微调 SOTA
LAMBADA(末词预测)76.272.586.4比前 SOTA +18%
StoryCloze83.284.787.7落后 BERT 微调 4.1%
HellaSwag78.978.179.3落后微调 SOTA ~6%
PTB(困惑度,越低越好)20.5比前 SOTA(35.8)低 15 点
翻译 FR↔EN(BLEU)fr→en 39.2比无监督 NMT +5 BLEU(X→En 译入英语方向)
3 位算术(+/-)+ 80.2% / − 94.2%无专门训练,纯 in-context
新闻文章人眼识别~52%人识别 GPT-3 175B 文章几乎靠猜(随机 50%)
维度结论(PDF 溯源)
规模GPT-3 175B,比前最大非稀疏 LM 大 10×;训了 8 个尺寸做规模对照(Table 2.1)
规模效应0/1/Few-shot 三档之间的差距随模型变大而拉大——大模型更会「使用」上下文示例(Fig.1.3)
新闻生成80 名美国受试者,GPT-3 175B 生成的 ~200 字新闻,人识别准确率 52%(几乎随机),500 字长文也是 52%(Table 3.11/3.12)
能力涌现算术 / 字符重排 / 用生造词造句 / 新词义推断——这些「合成任务」最可能是真正 de novo 学到(不是从预训练里检索)
弱项NLI(ANLI 近随机)、阅读理解(RACE/QuAC)、WiC「同词异义」比较、常识物理(「冰箱里的奶酪会化吗」)
局限长文会自相矛盾 / 重复;非双向(自回归);预训练看到远超人一辈子能读的文本;推理贵;不可解释;继承训练数据偏见
关键洞察:GPT-3 没有发明任何新架构、新训练目标、新算子——它就是「把 GPT-2 放大 100 倍」。但规模本身带来了新能力(in-context learning)。这是 Scaling Law 的实证胜利,也是「涌现能力」概念的奠基论文。

🌐 在领域中的位置

词向量 / RNN(任务专属架构) GPT-1 / BERT(预训练 + 微调) GPT-2(无微调,zero-shot) GPT-3(in-context learning,0/1/few-shot)⭐ InstructGPT / RLHF(用人类偏好对齐)→ GPT-4 / Claude

GPT-3 是 LLM 时代的分水岭。它证明了「规模 = 元能力」,把范式从「每任务一微调」推到「一模型通吃,prompt 即接口」。这条线后来引出 InstructGPT(RLHF)、ChatGPT、GPT-4、Claude。对机器人/VLA:GPT-3 的「prompt 即任务说明」思路被 RT-2 / TinyVLA 等 VLA 直接继承——把语言指令当 prompt,让一个模型多任务通用。

❓ 常见误区

GPT-3 是在大量任务上「微调」出来的吗?

不是。论文 完全不做微调。所有任务都用「prompt + 0/1/few-shot 示例」一次前向完成。这是它最反直觉的地方——以前的 NLP 一定要梯度更新,GPT-3 说不用了。

「in-context learning」真的是「学新任务」吗?

论文 §5 老实承认这是个开放问题。有的任务(如翻译)更可能是「从预训练里检索」;有的任务(如生造词造句、字符重排)更可能是「真正 de novo 学习」。GPT-3 处在这条光谱上,位置因任务而异。

GPT-3 是一个对齐过的、安全的助手吗?

不是。GPT-3 论文版本没有 RLHF、没有 instruction tuning,它会胡说、有偏见、可以被诱导生成有害内容。论文 §6 专门讨论 broader impacts。真正的「助手化」是两年后 InstructGPT 才做的。

175B 这个数字是怎么来的?

论文没有「理论最优」,是按 Scaling Law [KMH+20] 在算力预算下选的最大可行尺寸。作者训了 125M → 175B 共 8 个尺寸(Table 2.1),证明 log loss 平滑下降,且下游任务跟着涨。

它和 ChatGPT 是什么关系?

GPT-3 是基础模型(base model)。ChatGPT 基于后续的 GPT-3.5/4,叠加了 InstructGPT 的 RLHF 才成为对话助手。但「in-context learning」这个能力——GPT-3 是奠基

它和机器人 / 控制有什么关系?

看似无关,实则深连。GPT-3 确立的「大模型 + prompt + in-context 学习」范式,正是后来 SayCan、Code as Policies、RT-2、RoboFlamingo 等「用大模型驱动机器人」路线的认知前提。没有 GPT-3 把这条路趟开,就没今天「通用机器人基座」的讨论。