通俗易懂了解ChatGPT的底层逻辑

  |   0 评论   |   0 浏览

今年以来,我们可以看到ChatGPT这个聊天工具热度颇高,有人说它将来会取代google,百度等搜索引擎,有人说它将来会取代一些互联网程序员,设计,客服等相关岗位。为什么它会有如此强大解答能力呢?我们通俗的来介绍一下它的底层逻辑。

目前ChatGPT没有公布官方的论文,能得到的信息目前只有官方blog的简介,其中介绍到ChatGPT有个“兄弟”叫InstructGPT,该模型已经发布论文,通过对比ChatGPT和InstructGPT两者模型的训练步骤,我们会发现两者的训练步骤高度相似(ChatGPT将模型GPT-3优化至GPT-3.5),具体如下图所示:

ChatGPT训练原理

InstructGPT训练原理

为帮助大家了解ChatGPT的原理,主要参考InstructGPT的相关论文,来帮助大家理解ChatGPT是怎么被训练出来的。ChatGPT模型学习的四个阶段:1、学习文字接龙;2、人类老师引导接龙的方向;3、模仿人类老师的偏好;4、用增强式学习向模拟老师学习。

一、学习“文字接龙”

GPT要做的事情就是给出上半句话,预测下一个可能出现的字,即“文字接龙”。通过收集网络上大量的文字句子,都可以让GPT进行学习,帮助GPT提升“接龙”的能力。这个阶段不需要进行人工标注。

大家一定会困惑,如果只是“你好”这个句子,后面可以接的字会有很多,比如“你好吗”,“你好帅”,“你好美”。其实GPT真正的输出是一个概率分布,然后它会从所有可能出现的字中随机抽取一个字,几率较高的字被抽取出来的可能性更大,几率较低的字就不容易被抽取出来。所以GPT的输出每一次都是不同的,具有随机性。

“文字接龙”有什么用呢?

“文字接龙”本身就已经具有了回答问题的能力,例如我们提问,“杭州最著名的景点是哪里?”可能会输出的后面一个字是“西”,在根据上一步输出的结果“杭州最著名的景点是哪里?西”从而输出“湖”,至此我们得到的答案即是“西湖”。

虽然上述例子表明,GPT确实是可以回答问题,但实际上,有些同学可能会有疑问,GPT输出的可能性会有很多,往往有时候获得的结果不尽人意。例如同样的问题,GPT可能还会输出一个选择题或者一个问句,因为网上的训练内容五花八门,导致输出的内容各式各样。

如上GPT在实际的应用过程中,并没达到我们的预期,那么为了使GPT产生有价值的输出,就需要进入第二阶段的学习——人类老师引导文字接龙的方向。

二、人类老师引导接龙方向

在第二个阶段,我们需要找人类来思考想要问GPT的问题,并且人工给出正确答案。例如:

  • 中国最高的山峰是哪座? ——珠穆朗玛峰
  • 如何学习深度学习?——首先需要了解基本概念……
  • 帮我生成一段关于产品推广的文案。——关于该产品……

之前GPT通过学习网络上的一些问句及回答,已经具备了回答问题的能力,现在我们人为的输入想要的问的问题以及标准答案,从而帮助GPT了解人类对答案的偏好。

需要注意的是,我们并不需要穷举人类想问的所有问题以及标准答案,因为GPT学习了网上各种各样的知识,已经具备了生产这些答案的能力,他只是不知道人类的偏好是什么。对于每种类型的问题提供几个示例,帮助GPT更好的了解人类的关于答案的偏好,就足够了。

三、模仿人类老师的喜好

OpenAI通过开放GPT的接口,在网络上收集了大量的问题,并通过模型产生相应的答案。因为GPT模型具有随机性,同一个问题会产生不同的答案,接下来OpenAI雇佣人类来进行标注,给出哪些是好的答案?哪些是差的答案?人类老师的价值并不一定是提供完整的正确答案,只需要告诉机器那个答案是比较好的,哪个答案是比较差的。

有了问题答案以及人类老师人工标注的偏好以后,就可以训练出一个模仿老师的模型,这里称之为Teacher Model。这个模型学习的目标就是去模仿人类老师的评分标准,帮助GPT输出的回答能够满足人类的偏好。

四、用增强式学习向模拟老师学习

当GPT获得一个问题同时并输出一个答案的时候,例如问题——“杭州最著名的景点是哪里?”输出答案——“有谁知道呀?”,将问题和答案输入到已有的Teacher Model中,Teacher Model已经学会了人类的偏好,所以根据偏好会给予该答案一个低分。

将GPT产生的问题和答案都输入到模型中,得到分数。通过增强式学习,调整GPT的模型参数,从而优化Reward数值,使其达到最大,即GPT的输出是Teacher Model会给予高分的答案。

通过增强式学习(reinforcement learning)之后得到的GPT,就是我们熟知的ChatGPT了。


参考Hung-yi Lee老师《ChatGPT是怎么炼成的》

转自 https://zhuanlan.zhihu.com/p/608616712


标题:通俗易懂了解ChatGPT的底层逻辑
作者:michael
地址:https://blog.junxworks.cn/articles/2023/05/22/1684717919185.html