ChatGPT如何构建

ChatGPT如何构建介绍 ChatGPT (Chat Generative Pre-trained Transformer) 是由 OpenAI 开发的 AI 聊天机器人程序,于 2022 年 11 月发布。 ChatG

大家好,欢迎来到IT知识分享网。

介绍

ChatGPT (Chat Generative Pre-trained Transformer) 是由 OpenAI 开发的 AI 聊天机器人程序,于 2022 年 11 月发布。

ChatGPT 利用基于 GPT-3.5 和 GPT-4 架构的大型语言模型,并使用强化学习进行训练。

由于 OpenAI 还没有就 ChatGPT 发表论文,因此其官方博客上只有一份技术文件可供查阅:openai.com/blog/chatgp…。

该技术文件的摘要如下:

ChatGPT 是 InstructGPT* 的兄弟模型,后者被训练成在提示下跟随指令并提供详细的响应。*

InstructGPT 模型已经有了一篇论文,其中描述了它的训练过程:

image.png

Instruct GPT

在官方博客中,我们可以看到 ChatGPT 的训练过程图:

image.png

ChatGPT

可以看出,这两者的训练过程图非常相似,只有一些细微的差异。

唯一的显著差异在于第一步:ChatGPT 使用 GPT-3.5 作为语言模型,而 InstructGPT 使用 GPT-3。

本文将根据 InstructGPT 论文和 OpenAI 的技术文档,对 ChatGPT 的可能训练过程进行解释。

训练过程

步骤1. 训练语言模型

语言模型的作用是根据不完整的输入句子预测最有可能的下一个单词。

例如:

image.png

语言模型

输入是不完整的句子:“This river is”

输出是概率分布,其中概率较高的单词更可能被抽取,概率较低的单词更不可能被抽取。这导致了 GPT 输出的多样性和随机性。

这个过程不需要手动数据标注,而是通过在线收集大规模的网络数据实现的。

训练这个语言模型的目的是什么?

它已经可以回答问题。例如:

  • 你可以输入:“世界上最长的河流是哪条?”GPT 可能会输出:“The”。
  • 然后,将“世界上最长的河流是哪条?The”作为输入,GPT 可能会输出“Nile”。
  • 之后,将“世界上最长的河流是哪条?The Nile”作为输入,GPT 可能会输出“River”。

但是,这并不是非常用户友好,因为输出每次都不同。

例如,如果你问“世界上最长的河流是哪条?”,它可能会输出“尼罗河”,这是正确答案,但它也可能会输出“亚马逊河”,甚至是“请告诉我”。

这是因为语言模型在其训练数据中看到了类似的句子。

上述问题出现的原因是缺乏指导。 GPT 学习了很多知识,但无法有效地表达它,或者不能按照人类的期望表达它。

因此,下一步是考虑如何指导 GPT 按照人类的期望表达自己。

步骤2:人类引导

仅仅依靠公开材料的自学,GPT 可能不知道如何提供有用的答案。因此,人类需要向 GPT 提供一些问题和手动提供答案,这些将用作 GPT 的训练数据。

例如,构建如下的训练数据:

如何学习数据结构?首先,你需要掌握基本的数据结构类型,例如栈、队列…

世界上最长的河流是哪条?尼罗河。

月球是地球的卫星吗?是的,月球是地球唯一的天然卫星,并被地球的引力捕获。

我们引导 GPT 在这个阶段阅读有营养的语句,而不是访问无效的在线知识,以释放它的潜力,并成为真正的人类助手。

那么,手动标记的问题答案对数的数量级是多少?根据 Instruct GPT 论文,只需要几万个手动创建的问题。

为什么不需要大量手动标注的数据?这是因为 GPT 已经具备生成正确答案的能力,但它还不知道人类需要哪些答案。

步骤3:训练导师模型以模仿人类偏好

无法在任何时间和地点都有人类教师可供 GPT 学习,因此需要训练一个导师模型。

这个导师模型的输入是一对 (问题,答案),其输出是一个分数。

image.png

导师模型

导师模型的作用是模仿人类评分标准,例如,输入 (世界上最长的河流是哪条?尼罗河) 的分数应该大于输入 (世界上最长的河流是哪条?亚马逊河) 的分数。

步骤4. 使用强化学习从模拟老师中学习

在前一阶段具有模仿人类评分标准的老师模型的基础上,这个阶段将利用强化学习,使 GPT 能够不断地从老师那里学习。

老师模型的输出作为强化学习的奖励。

以 GPT 的输入和输出为老师模型的输入,如果老师模型的输出分数很低,则系统将通过强化学习调整参数,试图达到高分数。

image.png

从模拟老师中学习

当有人问 GPT 一个问题:“世界上最长的河流是哪条?”

GPT 的输出是:“请告诉我”

我们可以看出,分数非常低。

使用 (世界上最长的河流是哪条?请告诉我) 作为老师模型的输入,使用老师模型的输出作为强化学习的奖励,调整 GPT 的参数。

调整的目标是获得最高的奖励,即老师模型的最大分数。

通过调整,当有人问 GPT 一个问题:“世界上最长的河流是哪条?”

GPT 的输出是:“尼罗河”

这样,老师模型将给出高分。

结论

综上所述,本文根据 InstructGPT 论文和 OpenAI 的技术文档详细阐述了 ChatGPT 的可能训练过程。

如果 ChatGPT 论文在未来发表,我们会写另一篇文章来解释它。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/28762.html

(0)
上一篇 2023-09-24 14:45
下一篇 2023-09-24 15:15

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信