2018 年 6 月 11 日,OpenAI 的博客发布了一篇不长的技术报告。标题叫 《Improving Language Understanding by Generative Pre-Training》,作者四人:Alec Radford、Karthik Narasimhan、Tim Salimans、Ilya Sutskever。报告里没有正式名字,只在内部称之为 GPT——Generative Pre-trained Transformer 的缩写。后来人们习惯叫它 GPT-1。
这篇报告在当时几乎没有激起水花。它甚至没有被投到任何一个顶级会议,只作为 OpenAI 的一份"tech report" 发出来。Radford 是作者列表上的第一个名字,那年他刚 28 岁,本科毕业于 Olin 工程学院,不是名校出身的博士,没有任何顶级期刊论文——他是 OpenAI 早期那批"做不过来,谁合适谁来做"的年轻研究员。
GPT-1 的参数量是 1.17 亿,12 层 Transformer 解码器,768 维隐藏层,12 个注意力头,用 BookCorpus 的 7000 本未出版小说做训练语料,约 8 亿词。训练用 8 块 P600 GPU 跑了 30 天(约 720 小时)。相比 2017 年的 Transformer 论文,这看起来只是把架构稍微改了一下、喂了更多数据。
但它里面藏着一个后来改变整个行业的想法。那个想法简单到让人尴尬:先在海量无标注文本上做生成式预训练(让模型学会"下一个词是什么"),然后在具体任务上稍作微调。 在此之前,NLP 界的主流做法是"为每个任务设计专门的架构 + 标注大量该任务的数据"——做问答的做问答,做情感分析的做情感分析,做翻译的做翻译,每个人守着自己的小山头。GPT-1 说:不用了,一个模型,底座共用,上面贴个小头就能干所有活。
它在 12 个任务的基准上赢了 9 个。提升幅度不算惊人——常识推理任务上涨 8.9 个百分点,问答涨 5.7 个百分点,文本蕴涵涨 1.5 个百分点。你在 arXiv 上天天能看到同等水平的提升。但它是用一个模型干了 12 件事。
四个月后,2018 年 10 月 11 日,Google AI 放出了一篇 arXiv,编号 1810.04805。标题是 《BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding》。第一作者是 Jacob Devlin,团队包括 Ming-Wei Chang、Kenton Lee 和 Kristina Toutanova。
BERT 的名字是 Bidirectional Encoder Representations from Transformers 的缩写。它和 GPT 走了完全相反的一条路:GPT 用 Transformer 的解码器,单向地从左到右预测下一个词;BERT 用 Transformer 的编码器,让每个词同时看到自己左边和右边的上下文。训练目标也完全不同——BERT 随机挡住输入句子里 15% 的词,让模型去猜那些被挡住的词。这叫 masked language modeling,"完形填空训练"。
BERT-Base 有 1.1 亿参数,和 GPT-1 几乎一样大;BERT-Large 3.4 亿。训练语料是 BookCorpus 加英文维基百科,共 33 亿词。它在 GLUE benchmark 上一口气把 state-of-the-art 推到 80.4%——比之前最好的成绩绝对值高出 7.6 个百分点,在一个以 0.5 个百分点论英雄的领域里,这是一个接近不合理的提升。SQuAD 1.1 问答任务上,BERT-Large 的 F1 分数 93.2,超过了人类标注者的中位数。
业内当时的共识是:BERT 赢了。
2018 年底的 EMNLP 会议现场,所有谈到 NLP 的桌子上都摆着 BERT 的论文。接下来一年,BERT 在 Google 搜索、翻译、邮件自动补全里被大规模部署,在 Facebook、阿里、百度、腾讯里被内部复刻。"BERT 某某"成了一个后缀——RoBERTa、ALBERT、DistilBERT、XLM、ERNIE、哪吒——每一周 arXiv 上都有一篇 BERT 的变体。
GPT-1 在那段时间里,几乎被遗忘了。
两家公司就此分流。一家深挖"读懂",一家死磕"写出"。 Google 的 BERT 是一个理解者——它把一段文字变成稠密的向量,用于分类、检索、问答。它天然适合塞进搜索引擎、广告系统、推荐系统——也就是 Google 的命脉。GPT 是一个生成者——它产出流畅的文本,但那个时候流畅文本没有商业产品去消费。
没有人在 2018 年意识到这是分叉路口。2018 年的共识是:"理解比生成更有用,BERT 是未来。"在 NLP 学术圈,一个不加后缀的"BERT" 的引用量,到 2019 年就超过了整个 Transformer 生态系统里所有其他模型的总和。当时 ACL、EMNLP、NAACL 的投稿里,随便打开一篇都是 "Fine-tuning BERT for XXX"。
只有 OpenAI 内部一小群人开始相信另一个东西。
那群人里最执拗的一个,是 Ilya Sutskever——OpenAI 的首席科学家、深度学习的开山门徒之一、AlexNet 的作者之一。Sutskever 在 2018 年反复和同事说一个非主流的直觉:**规模本身就是智能。**不是架构决定能力,是参数数量和数据量决定能力。只要你把模型加大一百倍,数据加大一百倍,它会自己学会你没教过的东西。
这个想法在 2018 年听起来像民科。当时深度学习的主流共识是:模型不能无限增大,因为会过拟合、会梯度消失、会训练不稳定。更重要的是,NLP 圈子的习惯思维里,"更好的 AI 需要更好的架构"——attention 比 LSTM 好,multi-head attention 比 single-head 好,双向比单向好。没人相信"一模一样的 Transformer 放大十倍就行"。
Sutskever 那年说过一句后来被反复引用的话:"语言建模并不是在建模语言。它是在建模世界。" 一个模型要足够准地预测下一个词是什么,它其实得理解常识、物理、因果、情绪、幽默、人心。所以训练一个足够大的语言模型,本质上是在训练一个压缩世界的表征。
他在 2018 年说服了 OpenAI 把资源倾斜到一件事上:放大 GPT。
2018 年还发生了许多事。 3 月 18 日,Uber 一辆自动驾驶测试车在亚利桑那撞死了一个叫 Elaine Herzberg 的女人,那是人类历史上第一起自动驾驶致命事故。3 月 23 日,深度学习的三位奠基人 Geoffrey Hinton、Yann LeCun、Yoshua Bengio 被 ACM 授予图灵奖,颁奖词写道:"这三人独立工作又相互激励,改变了计算机能感知世界的方式。"
4 月,剑桥分析数据丑闻爆发,Facebook 被罚 50 亿美元。6 月,OpenAI 的机器人队 OpenAI Five 在 Dota 2 上打赢了业余人类战队。10 月,Hinton 公开说:"AI 会像电一样普及。" 12 月,DeepMind 发布 AlphaFold 1——第一个用深度学习做蛋白质结构预测的系统,在 CASP13 上排第一,但成绩只比第二名好一点,还没到让生物学界震撼的程度。
在中国,百度那年 7 月发布 ERNIE 1.0,一个基于 BERT 改良的、引入了知识图谱的预训练模型——国内公司第一次意识到"我们也能做大模型"。8 月,华为宣布昇腾芯片计划。12 月,字节跳动给抖音的推荐系统部署了类 Transformer 架构——三年后,这套架构驱动了 TikTok 在全球的爆发。
2018 年是一个奇怪的年份。表面上看,所有重大事件都属于 BERT、都属于 Google、都属于"理解"这一派。OpenAI 那份不起眼的 GPT-1 tech report,被当年的学术界当成一个"思路不错但实验不够硬"的 side note。
回头看,那才是历史真正分叉的地方。2018 年有两条路摆在面前:Google 的路是"更聪明的架构",OpenAI 的路是"更大的规模"。2018 年几乎所有人选了 Google。
他们错了。他们错得很对。错得对是因为:沿着 Google 的路,BERT 及其变体在 2019-2022 年里让 NLP 进入了一个工业化的黄金期,搜索、翻译、客服、广告,全都被 BERT 改写了一遍。错是因为:真正的奇迹不在那里。真正的奇迹在两年之后,在一个叫 GPT-3 的 1750 亿参数模型里。
Ilya Sutskever 后来在 2023 年的一次采访里说:"我们当时其实并不确定规模会成功。我们只是相信它会——所以我们把赌注全押了上去。"
2018 年是一场没人认真看待的分叉。后来的一切,都从那个夏天那份 GPT-1 的 tech report 起算。