微调的“跑步机”: 一个规模化问题
多年来,自然语言处理 (NLP) 领域的主流范式一直是一种“两步走”的模式。首先,在海量文本数据上预训练一个庞大的通用型语言模型。这些模型,如 BERT 或 RoBERTa,能够学习语言中的复杂模式——语法、事实、推理能力,甚至一些偏见。
第二步是将这个强大但通用的模型通过**微调 **(fine-tuning) 专门适配某个特定任务。
想要一个情感分类器?你需要一个包含大量正面和负面评论的标注数据集。要一个问答机器人?需要成千上万个问答对。对于每一个新任务,你都需要构建新的数据集和新的微调模型。这种“先预训练,再微调”的方法非常有效,在无数基准测试中推动了技术的进步。
但这种方法存在一个根本局限: 它需要大量特定任务的标注数据,而创建这些数据往往成本高昂且耗时。这与人类的学习方式也不同——我们不需要成千上万个例子才能理解“把这个句子翻译成法语”这样的指令。
2020 年的论文《语言模型是小样本学习者》彻底改变了这一现状。来自 OpenAI 的作者们提出了一个深刻的问题:
如果我们只是不断扩大模型规模会怎样?如果我们构建一个足够庞大、并在极其多样化的数据上训练的语言模型,它是否可以在没有微调的情况下,仅凭少数几个例子——甚至没有例子——就能执行任务?
答案就是 GPT-3——一个拥有 1750 亿参数的庞大模型,涌现出了一种**上下文学习 **(in-context learning) 的能力。本文将解析 GPT-3 的工作原理,它为何能成为一个小样本学习者,以及其能力所带来的非凡——有时也令人担忧——的影响。
一种新的学习方式: 从微调到小样本学习
在深入了解 GPT-3 之前,让我们先定义论文中描述的四种方法,它们涵盖了从数据密集型到数据稀疏型的不同场景:
微调 (Fine-Tuning, FT): 在成千上万个针对目标任务的标注示例上进行训练,从而更新预训练模型的权重。这通常能带来最佳性能,但也是最耗费数据的方法。
小样本 (Few-Shot, FS): 在推理阶段,向模型提供一个包含少量任务演示的提示 (prompt) 。
例如,英译法任务:english: sea otter => french: loutre de mer
english: peppermint => french: menthe poivrée
english: cheese => french:这里的
K
很小——通常 10–100 个示例可以放入 2048 token 的上下文窗口中。模型权重不会被更新;模型的“学习”完全发生在提示的上下文中。单样本 (One-Shot, 1S): 和小样本学习相同,但只有一个示例 (
K=1
) 。零样本 (Zero-Shot, 0S): 用自然语言提供指令,不附带任何示例:
Translate English to French:
cheese =>模型完全依赖其已学到的关于“翻译”这一概念的知识。
这种能力——上下文学习——源于在大规模条件下训练预测下一个词。作者们认为,模型利用庞大的上下文窗口作为一种短期记忆,无需梯度更新即可即时学习模式。
构建“巨兽”: GPT-3 的架构
GPT-3 是一个**自回归 **(autoregressive) 的、基于 Transformer 的语言模型,它根据前面的序列预测下一个 token——类似于它的前身 GPT-2,但规模大得多。
规模
- 8 种模型规模,从 1.25 亿参数到 1750 亿参数。
- GPT-3 的规模比 BERT-Large (3.4 亿) 大 100 倍以上,比此前最大的密集型语言模型大 10 倍以上。
训练数据
一个精心筛选的混合数据集,包含约 5000 亿个 token,来源包括:
- 筛选后的 **Common Crawl **(庞大的公开网络快照) 。
- 从 GPT-2 扩展而来的 WebText 数据集。
- 两个基于互联网的书籍语料库 (Books1、Books2) 。
- 英文版 Wikipedia。
数据经过去重处理且大部分只被模型见过一次,借鉴了此前关于规模定律的研究发现: 大型模型从更多来源唯一的数据中学习效果更佳。
图 1: 关键发现。左图: SuperGLUE 性能随模型大小提升,小样本 (橙色) 提升最显著。中图: 上下文示例数量 (K) 的增加能稳步提升小样本性能。右图: 在 42 个基准测试中,准确率随模型规模提升;小样本始终优于单样本和零样本。
对 GPT-3 进行测试
核心假设: 性能应随模型规模扩大而平稳提升。如图 1 所示,所有设置——零样本、单样本和小样本——的性能都随模型规模增大而提升,而且对于更大的模型,零样本与小样本之间的差距也随之扩大。规模更大的模型是更强的上下文学习者。
完形填空与补全任务
LAMBADA 数据集测试模型预测段落最后一个词的能力。小样本学习的 GPT-3 达到 86.4% 的准确率,远超此前 68% 的最高水平。
表 1: 在 LAMBADA 上,小样本学习的 GPT-3 彻底刷新了此前的最高水平。在 StoryCloze 和 HellaSwag 上也表现强劲,但未达到 SOTA 水平。
问答任务
在闭卷问答 (closed-book QA,无检索) 中,GPT-3 表现出色。在 TriviaQA 数据集上,小样本学习的 GPT-3 获得 71.2% 的准确率,创造了新的最高纪录——甚至超过了经过微调且依赖信息检索的系统。
表 2: 在闭卷问答中,GPT-3 小样本在 TriviaQA 上的表现甚至超过了开放域系统。
某些任务暴露出其局限。在涉及离散数值推理的 DROP 数据集上,GPT-3 虽优于微调的 BERT,但远远落后于人类和专用模型。
表 3: GPT-3 在对话式问答 (CoQA) 上表现强劲,但在 DROP 这种需要离散推理的数据集上表现较弱。
机器翻译
尽管 93% 的训练数据是英文,GPT-3 仍能进行翻译。小样本学习的 GPT-3 在无监督翻译领域,从法语、德语和罗马尼亚语翻译到英语的任务中创造了新的最高水平。而从英语翻译出去的表现则较弱,反映了其英语偏向。
表 4: 小样本学习的 GPT-3 在翻译到英语的任务中表现优异,超越先前的无监督成果。
SuperGLUE 基准测试
SuperGLUE 集合了多种高难度 NLP 任务。GPT-3 的小样本结果好坏参半——在 COPA 和 ReCoRD 上接近最高水平,在其他几个任务上与 BERT-Large 相当,但在 **WiC **(跨句词义比较) 上表现不佳。
表 5: 在 COPA 和 ReCoRD 上表现突出;在 WiC、CB 和 RTE 上表现较弱,尤其是需要直接比较句子的任务。
规模化的阴暗面: 偏见、滥用与成本
论文不仅讨论了成就,也探讨了更广泛的风险。
你能分辨出机器人吗?
研究人员测试了人类区分 GPT-3 生成的新闻文章与人类撰写文章的能力。对于 1750 亿参数的 GPT-3,人类平均准确率仅 52%——几乎与随机猜测持平。模型越大,越难被识别。
图 2: 更大的模型生成的文本与人类写作几乎无法区分。
这引发了对滥用的担忧——包括大规模虚假信息、垃圾邮件、网络钓鱼和自动化滥用。
互联网规模的偏见
来自互联网的训练数据带来互联网规模的偏见。初步分析发现:
- 性别: 职业与刻板性别关联存在偏斜 (例如,“护士”→女性,“名誉教授”→男性) 。
- 种族: 关于“亚洲人”的提示倾向于产生积极的情感;而“黑人”则偏向消极。
- 宗教: “伊斯兰教”与“恐怖主义”等词语的共现频率高于其他宗教。
表 6: 习得的刻板印象,例如“恐怖主义”更容易与伊斯兰教提示共同出现,反映了训练数据中的偏见。
环境与财务成本
训练 GPT-3 (1750 亿参数) 耗费了数千 petaflop/s-days 的计算量——比此前模型高出几个数量级。
图 3: 计算需求呈爆炸式增长;GPT-3 的计算量远超 BERT、T5 等前辈。
作者指出,通过在多任务间使用同一模型而无需重新训练,可以摊销成本,但“越大越好”的趋势对可持续性构成挑战。
结论: 一次范式转移
《语言模型是小样本学习者》不仅是扩大模型规模,更是重新定义我们使用语言模型的思路。GPT-3 展示了只要拥有足够的参数、数据和计算能力,单个模型就能灵活执行多种任务,几乎无需针对性训练。
这大幅减少了对大型标注数据集的依赖,使我们更接近适应性更强的通用人工智能。然而,这项研究也发出了明确警告: 偏见、潜在滥用以及训练此类模型的高昂成本,与其技术里程碑同等重要。
GPT-3 标志着新时代的开启——它迫使我们不仅要问这些模型能做什么,还要问它们应该做什么。