ChatGPT的各项超能力从哪儿来?万字拆解追溯技术路线图来了!
### 润色后的文章
最近,OpenAI 的预训练模型 ChatGPT 在人工智能领域的研究人员中引起了广泛的关注与启发。无疑,它具有强大的能力、聪明的表现,并且与之对话的体验非常愉快,甚至能够编写代码。这些能力在多个方面远超自然语言处理研究者的预期。因此,我们不禁要问:ChatGPT 是如何变得如此强大的?其强大能力的根源究竟是什么?在这篇文章中,我们将探讨 ChatGPT 的突现能力,并追溯其能力的起源,以呈现出一张全面的技术路线图,解释 GPT-3.5 模型系列及其相关的大型语言模型是如何一步步演化成如今的强大形态。
我们希望这篇文章能够提升大型语言模型的透明度,同时成为开源社区共同努力复现 GPT-3.5 的指导性文献。
**致国内同胞:**
ChatGPT/GPT-3.5 在国际学术界被视为一个划时代的产物,它与之前常见的语言模型(如 BERT、BART、T5)之间的差异,几乎如同导弹与弓箭的区别,这一点必须引起高度重视。在我与国际同行的交流中,许多主流学术机构(如斯坦福大学和加州大学伯克利分校)以及研究机构(如谷歌大脑和微软研究院)均已全面拥抱大模型。
然而,当前国内的技术水平、学术视野与国际前沿之间的差距似乎并没有减小,反而在扩大。如果这一现状持续,极有可能造成技术断代的局面,这诚然是一个危急时刻。
—
**目录**
多年以后,面对行刑队,奥雷里亚诺·布恩迪亚上校会回想起父亲带他去见识冰块的那个遥远的下午——《百年孤独》 加西亚·马尔克斯
—
### 一、2020 版初代 GPT-3 与大规模预训练
初代 GPT-3 展示了三种重要能力:
1. **语言生成**:根据提示词生成补全内容,这是人类与语言模型最普遍的互动方式。
2. **上下文学习 (in-context learning)**:依据给定的任务示例生成新测试用例的解决方案。虽然 GPT-3 是语言模型,其论文却几乎没有提到“语言建模”,作者更关注于上下文学习的潜力。
3. **世界知识**:涵盖事实性知识和常识。
那么,这些能力从何而来呢?
这些能力源于大规模预训练:在含有 3000 亿单词的语料上,训练了一个拥有 1750 亿参数的模型。这些训练语料主要来自于 2016-2019 年的 C4(占 60%)、WebText2(占 22%)、Books(占 16%)和 Wikipedia(占 3%)。以下是能力来源的详细分析:
– 语言生成能力来自于语言建模的训练目标。
– 世界知识来源于 3000 亿单词的训练语料。
– 模型存储知识的能力则与其 1750 亿参数密切相关,Liang et al.(2022)的研究进一步证实了知识密集型任务的性能与模型规模相关。
在上下文学习的能力来源及其泛化机制方面,仍有许多未解之谜。直观上,这种能力可能源于同一任务的数据点在训练时的顺序排列。但对为何语言模型的预训练可以促进上下文学习的研究仍然较少。
初代 GPT-3 的真正强度并不容易评估。它在特定查询上的合理响应和一些数据集中的不错表现,与许多任务中的不如 T5 等小模型的表现形成鲜明对比。依据现有标准,很难称之为“智能”的表现。因此,尽管初代 GPT-3 表现得到肯定,但在后续实验中却证明了它的巨大潜力,这一潜力通过代码训练、指令微调和基于人类反馈的强化学习发展而成,最终展现出其强大的突现能力。
### 二、从 2020 版 GPT-3 到 2022 版 ChatGPT
为阐明 OpenAI 如何从 GPT-3 发展到 ChatGPT,下面是 GPT-3.5 的进化树:
在 2020 年 7 月,OpenAI 发布了初代 GPT-3 的论文(模型索引:davinci),自此开始了不断进化。2021 年 7 月,Codex 的论文发布,其中初始 Codex 是微调自一个 120 亿参数的 GPT-3 变体。此后,该模型演变为 OpenAI API 中的 code-cushman-001。2022 年 3 月,OpenAI 发布了指令微调的论文,其监督微调对应的是 davinci-instruct-beta 和 text-davinci-001。在 2022 年 4 到 7 月期间,OpenAI 对 code-davinci-002 模型进行了 Beta 测试。最终,code-davinci-002、text-davinci-003 和 ChatGPT 都是基于 code-davinci-002 的指令微调版本。
尽管 Codex 听起来像一个只处理代码的模型,但 code-davinci-002 很可能是针对自然语言最强大的 GPT-3.5 变体(优于 text-davinci-002 和 -003)。该模型可能同时接收了文本和代码的数据训练,并借助指令进行调整。图示的进化过程中,text-davinci-002 是一个经过监督指令微调的模型,其后续版本则采用基于人类反馈的强化学习,使其能产出更加符合人类预期的反馈。这种微调在某种程度上恢复了文本生成能力,尽管仍不足以超过 code-davinci-002。
总而言之,在 2020 到 2021 年期间,OpenAI在代码训练和指令微调方面投入了大量精力以增强GPT-3 的能力。这些能力已经在 code-davinci-002 中得到充分展现,后续的指令微调则主要是解锁这些能力。
### 三、Code-Davinci-002 和 Text-Davinci-002
在 code-davinci-002 和 text-davinci-002 之前,存在两个中间模型——davinci-instruct-beta 和 text-davinci-001。两者在许多方面都不及上述的两个-002 模型,因此本节将重点关注-002 型号。
3.1 **复杂推理能力的来源与泛化能力**
我们将重点分析 code-davinci-002 和 text-davinci-002,这两个都是第一版的 GPT-3.5 模型,分别针对代码和文本。它们展现出三种与初代 GPT-3 不同的重要能力:
1. **响应人类指令**:新模型更能针对指令生成合理答案,而不仅仅是相关但无用的句子。
2. **泛化能力**:当用于调整模型的指令数量超过一定规模时,模型能够在未见过的新指令上生成有效回答。
3. **代码生成与理解**:由于模型在代码数据上进行过训练,因此其代码生成和理解能力显而易见。
此外,思维链推理能力显著提升,成为解锁突现能力的关键。初代 GPT-3 的思维链推理能力较弱,而 code-davinci-002 和 text-davinci-002 则显现出强大的思维链推理能力。这一能力的提升,加强了模型在复杂推理任务上的表现。
### 四、text-davinci-003 和 ChatGPT:基于人类反馈的强化学习的力量
截至 2022 年 12 月,text-davinci-002、text-davinci-003 和 ChatGPT 之间缺乏严格的统计比较,但我们相信初步的描述性比较仍能揭示它们的不同机制。
– 所有模型均经过指令微调。
– text-davinci-002 是经监督学习指令微调后的模型,而 text-davinci-003 和 ChatGPT 则是基于人类反馈的强化学习的指令微调版本,体现出显著的区别。
这种微调产生了许多新能力,包括:
1. **详尽的回应**:text-davinci-003 的生成通常比 text-davinci-002 更长,而 ChatGPT 的回应则更为冗长,用户需要明确请求简短回答。
2. **公正性**:ChatGPT 的答案通常对涉及多方利益的事件持平衡态度。
3. **拒绝不当问题**:通过内容过滤器与模型能力的结合,能有效拒绝不当问题。
4. **区分知识范围**:模型能够识别其知识更新的限制,拒绝超出知识范围的问题。
需要注意的是,以上能力都是模型本已经具备的,而非通过 RLHF 注入的。RLHF 旨在解锁和驱动突现能力。
### 五、总结当前阶段 GPT-3.5 的进化历程
我们对 GPT-3.5 的能力进行了仔细的审视,并总结以下演化路径:
– 语言生成能力、基础的世界知识与上下文学习均源自预训练(davinci)。
– 知识存储能力来自于 1750 亿的参数量。
– 遵循指令与泛化新任务的能力来源于调整指令的数量(Davinci-instruct-beta)。
– 复杂推理能力可能来源于代码训练(code-davinci-002)。
– 生成中立、公正的回答是模型与人类对齐的结果:如果通过监督学习,结果是 text-davinci-002;如果通过强化学习,则是 text-davinci-003。
– 对话能力源自于 RLHF(ChatGPT),其特性包括建模对话历史与增强信息互换能力。
### 六、GPT-3.5 当前的局限性
虽然 GPT-3.5 是自然语言处理领域的重要一步,但它仍未完全实现许多理想属性,具体包括:
1. **实时修正信念**:一旦模型建立了某种信念,纠正其错误几乎不可能。例如,ChatGPT 可能坚持错误事实,即使已被告知真相。
2. **形式推理**:GPT-3.5 无法在数学或一阶逻辑等严格的形式系统中进行推理。
3. **互联网检索**:目前 GPT-3.5 系列无法直接从互联网进行实时搜索,尽管相关的能力已在 OpenAI 内部进行过测试。
总结来看,GPT-3.5 的内在知识有限,需进一步增强其推理能力,通过模型与外部检索系统的结合,未来潜在可实现更高的智能水平。
### 七、结论
在本篇文章中,我们详细审视了 GPT-3.5 系列的能力范围,并追溯了所有突现能力的来源。初代 GPT-3 通过预训练获得语言生成、世界知识和上下文学习能力;随后,指令微调提升了其遵循指令和泛化新任务的能力;代码训练则注入了代码理解和复杂推理能力。通过结合这些分支,code-davinci-002 成为最强大的 GPT-3.5 模型,并在后续的RLHF微调中通过牺牲某些能力换取与人类的对齐。
我们希望这篇文章能为 GPT 的评估提供清晰的视角,也引发关于语言模型、指令微调和代码训练的讨论。最重要的是,我们期望本文章能作为开源社区复现 GPT-3.5 的路线图。
“因为山就在那里。”——乔治·马洛里,珠穆朗玛峰探险先驱。
—
### 见解
本文深入探讨了 ChatGPT 和 GPT-3.5 的演化历程,阐述了模型力量的根源及其提升路径。随着大模型技术的发展,GPT 系列的成功不仅彰显了人工智能技术的前景,同时也警示了国内在技术研发中的不足。面对各国在 AI 领域的竞争与挑战,如何不断推进技术创新、缩短与国际前沿的距离,将是我们未来的重要任务。
本篇的分析强调了模型的预训练与微调阶段在性能上的核心作用,也引发我们对未来模型设计及其应用的深入思考,从而更好地应对技术带来的变化与挑战。随着 AI 领域的不断进步,我们期待在保持道德与伦理的前提下,创造出更强大、更具影响力的人工智能工具。