ChatGPT怎么突然变得这么强?华人博士万字长文深度拆解GPT-3.5能力起源(1)

简介: ChatGPT怎么突然变得这么强?华人博士万字长文深度拆解GPT-3.5能力起源

ChatGPT怎么突然变得这么强?华人博士万字长文深度拆解GPT-3.5能力起源

新智元新智元 2022-12-24 13:00 发表于北京



 新智元报道  

作者:符尧 彭昊 Tushar Khot编辑:LRS 好困

【新智元导读】ChatGPT是如何从GPT-3逐渐进化的?


最近OpenAI发布的ChatGPT给人工智能领域注入了一针强心剂,其强大的能力远超自然语言处理研究者们的预期。

 

体验过ChatGPT的用户很自然地就会提出疑问:初代GPT 3是如何进化成ChatGPT的?GPT 3.5惊人的语言能力又来自哪?

 

最近来自艾伦人工智能研究所的研究人员撰写了一篇文章,试图剖析 ChatGPT 的突现能力(Emergent Ability),并追溯这些能力的来源,并给出了一个全面的技术路线图以说明 GPT-3.5 模型系列以及相关的大型语言模型是如何一步步进化成目前的强大形态。

 

原文链接:https://yaofu.notion.site/GPT-3-5-360081d91ec245f29029d37b54573756


作者符尧是2020年入学的爱丁堡大学博士生,硕士毕业于哥伦比亚大学,本科毕业于北京大学,目前在艾伦人工智能研究所做研究实习生。他的主要研究方向为人类语言的大规模概率生成模型。

 

作者彭昊本科毕业于北京大学,博士毕业于华盛顿大学,目前是艾伦人工智能研究所的Young Investigator,并将于2023年8月加入伊利诺伊大学厄巴纳-香槟分校计算机科学系,担任助理教授。他的主要研究方向包括使语言 AI 更有效率和更容易理解,以及建立大规模的语言模型。


作者Tushar Khot博士毕业于威斯康星-麦迪逊大学,目前是艾伦人工智能研究所的研究科学家。他的主要研究方向为结构化机器推理。

 

一、2020 版初代 GPT-3 与大规模预训练

 

初代GPT-3展示了三个重要能力:


  • 语言生成:遵循提示词(prompt),然后生成补全提示词的句子。这也是今天人类与语言模型最普遍的交互方式。


  • 上下文学习 (in-context learning):遵循给定任务的几个示例,然后为新的测试用例生成解决方案。很重要的一点是,GPT-3虽然是个语言模型,但它的论文几乎没有谈到「语言建模」 (language modeling) —— 作者将他们全部的写作精力都投入到了对上下文学习的愿景上,这才是 GPT-3的真正重点。


  • 世界知识:包括事实性知识 (factual knowledge) 和常识 (commonsense)。

那么这些能力从何而来呢?基本上,以上三种能力都来自于大规模预训练:在有3000亿单词的语料上预训练拥有1750亿参数的模型( 训练语料的60%来自于 2016 - 2019 的 C4 + 22% 来自于 WebText2 + 16% 来自于Books + 3%来自于Wikipedia)。其中:

  • 语言生成的能力来自于语言建模的训练目标 (language modeling)。

  • 世界知识来自 3000 亿单词的训练语料库(不然还能是哪儿呢)。

  • 模型的 1750 亿参数是为了存储知识,Liang et al. (2022) 的文章进一步证明了这一点。他们的结论是,知识密集型任务的性能与模型大小息息相关。

  • 上下文学习的能力来源及为什么上下文学习可以泛化,仍然难以溯源。直觉上,这种能力可能来自于同一个任务的数据点在训练时按顺序排列在同一个 batch 中。然而,很少有人研究为什么语言模型预训练会促使上下文学习,以及为什么上下文学习的行为与微调 (fine-tuning) 如此不同。

令人好奇的是,初代的GPT-3有多强。其实比较难确定初代 GPT-3(在 OpenAI API 中被称为davinci)到底是「强」还是「弱」。一方面,它合理地回应了某些特定的查询,并在许多数据集中达到了还不错的性能;

另一方面,它在许多任务上的表现还不如 T5 这样的小模型(参见其原始论文)。在今天(2022 年 12 月)ChatGPT 的标准下,很难说初代的 GPT-3 是「智能的」。Meta 开源的 OPT 模型试图复现初代 GPT-3,但它的能力与当今的标准也形成了尖锐的对比。许多测试过 OPT 的人也认为与现在的text-davinci-002相比,该模型确实「不咋地」。尽管如此,OPT 可能是初代 GPT-3 的一个足够好的开源的近似模型了(根据 OPT 论文和斯坦福大学的 HELM 评估)。虽然初代的 GPT-3 可能表面上看起来很弱,但后来的实验证明,初代 GPT-3 有着非常强的潜力。这些潜力后来被代码训练、指令微调 (instruction tuning) 和基于人类反馈的强化学习 (reinforcement learning with human feedback, RLHF) 解锁,最终体展示出极为强大的突现能力。

二、从 2020 版 GPT-3 到 2022 版 ChatGPT

从最初的 GPT-3 开始,为了展示 OpenAI 是如何发展到ChatGPT的,我们看一下 GPT-3.5 的进化树:在 2020 年 7 月,OpenAI 发布了模型索引为的 davinci 的初代 GPT-3 论文,从此它就开始不断进化。在 2021 年 7 月,Codex 的论文发布,其中初始的 Codex 是根据(可能是内部的)120 亿参数的 GPT-3 变体进行微调的。后来这个 120 亿参数的模型演变成 OpenAI API 中的code-cushman-001。在 2022 年 3 月,OpenAI 发布了指令微调 (instruction tuning) 的论文,其监督微调 (supervised instruction tuning) 的部分对应了davinci-instruct-beta和text-davinci-001。在 2022 年 4 月至 7 月的,OpenAI 开始对code-davinci-002模型进行 Beta 测试,也称其为 Codex。然后code-davinci-002、text-davinci-003和ChatGPT 都是从code-davinci-002进行指令微调得到的。详细信息请参阅 OpenAI的模型索引文档。尽管 Codex 听着像是一个只管代码的模型,但code-davinci-002可能是最强大的针对自然语言的GPT-3.5 变体(优于 text-davinci-002和 -003)。code-davinci-002很可能在文本和代码上都经过训练,然后根据指令进行调整(将在下面解释)。然后2022 年 5-6 月发布的text-davinci-002是一个基于code-davinci-002的有监督指令微调 (supervised instruction tuned) 模型。在text-davinci-002上面进行指令微调很可能降低了模型的上下文学习能力,但是增强了模型的零样本能力(将在下面解释)。然后是text-davinci-003和 ChatGPT,它们都在 2022 年 11 月发布,是使用的基于人类反馈的强化学习的版本指令微调 (instruction tuning with reinforcement learning from human feedback) 模型的两种不同变体。text-davinci-003 恢复了(但仍然比code-davinci-002差)一些在text-davinci-002 中丢失的部分上下文学习能力(大概是因为它在微调的时候混入了语言建模) 并进一步改进了零样本能力(得益于RLHF)。另一方面,ChatGPT 似乎牺牲了几乎所有的上下文学习的能力来换取建模对话历史的能力。总的来说,在 2020 - 2021 年期间,在code-davinci-002之前,OpenAI 已经投入了大量的精力通过代码训练和指令微调来增强GPT-3。当他们完成code-davinci-002时,所有的能力都已经存在了。很可能后续的指令微调,无论是通过有监督的版本还是强化学习的版本,都会做以下事情(稍后会详细说明):

  • 指令微调不会为模型注入新的能力 —— 所有的能力都已经存在了。指令微调的作用是解锁 / 激发这些能力。这主要是因为指令微调的数据量比预训练数据量少几个数量级(基础的能力是通过预训练注入的)。

  • 指令微调将 GPT-3.5 的分化到不同的技能树。有些更擅长上下文学习,如text-davinci-003,有些更擅长对话,如ChatGPT。

  • 指令微调通过牺牲性能换取与人类的对齐(alignment)。OpenAI 的作者在他们的指令微调论文中称其为「对齐税」 (alignment tax)。

    许多论文都报道了code-davinci-002在基准测试中实现了最佳性能(但模型不一定符合人类期望)。在code-davinci-002上进行指令微调后,模型可以生成更加符合人类期待的反馈(或者说模型与人类对齐),例如:零样本问答、生成安全和公正的对话回复、拒绝超出模型它知识范围的问题。



相关文章
|
5月前
|
存储 运维 数据可视化
驾驭数据的能力,如同使用ChatGPT一样,是现代职场人的必修课
现代职场所比拼的除了聪明才智、过往经验之外,很多软性技能也尤为重要。现在已经不是像网络游戏开局拿着一根小木棍打天下的时代了,这将是一场武装到牙齿的较量,对于各类“装备”的驾驭能力有时候甚至可以决定胜负。
驾驭数据的能力,如同使用ChatGPT一样,是现代职场人的必修课
|
5月前
|
存储 算法 网络架构
问 ChatGPT 关于GPT的事情:压缩篇
问 ChatGPT 关于GPT的事情:压缩篇
63 0
|
5月前
|
PyTorch 调度 算法框架/工具
问 ChatGPT 关于GPT的事情:扩展篇
问 ChatGPT 关于GPT的事情:扩展篇
76 0
|
搜索推荐
ChatGPT将会成为强者的外挂?—— 提高学习能力
ChatGPT将会成为强者的外挂?—— 提高学习能力
160 0
|
5月前
|
机器学习/深度学习 数据采集 人工智能
问 ChatGPT 关于 GPT 的事情:数据准备篇
问 ChatGPT 关于 GPT 的事情:数据准备篇
86 0
|
11月前
|
存储 人工智能 架构师
ChatGPT 与软件架构 (2) - 基于 Obsidian 和 GPT 实现解决方案架构自动化
ChatGPT 与软件架构 (2) - 基于 Obsidian 和 GPT 实现解决方案架构自动化
188 0
|
5月前
|
机器学习/深度学习 自然语言处理
解析GPT-3、GPT-4和ChatGPT关系-迈向自然语言处理的新高度“
解析GPT-3、GPT-4和ChatGPT关系-迈向自然语言处理的新高度“
139 1
|
5月前
|
人工智能 JSON 机器人
【Chat GPT】用 ChatGPT 运行 Python
【Chat GPT】用 ChatGPT 运行 Python
|
5月前
|
人工智能 弹性计算 算法
华人开源最强「AI 程序员」炸场,让 GPT-4 自己修 Bug!
普林斯顿大学推出开源软件工程代理SWE-agent,利用GPT-4转化成能修复GitHub错误的AI程序员。在某些基准测试中,SWE-agent的表现与Devin相当,甚至在修复Bug速度上超越Devin,平均只需93秒。其特点是拥有开源接口,支持代码编辑和执行,提高了与代码库的交互效率。
|
5月前
|
人工智能 自然语言处理 搜索推荐
【新手向】ChatGPT入门指南 - 订阅GPT4之前必须了解的十件事情
文章详细介绍了ChatGPT的基本原理、能做什么、各种GPT模型之间的区别、如何订阅GPT Plus、以及使用GPT Plus之前必须知道的重要信息。本指南旨在帮助读者轻松升级至ChatGPT 4.0,享受AI技术的强大能力,同时提供了安全高效使用GPT 4.0的建议,是迈向高级ChatGPT使用的一站式指南。
【新手向】ChatGPT入门指南 - 订阅GPT4之前必须了解的十件事情