Chat GPT原理

news/2024/10/18 13:16:40/

ChatGPT一经发布就在科技圈火得不行,这两天也是被传得神乎其神,听说它写得了代码、改得了 Bug,小说、段子统统不再话下!那他到底是怎么训练成现在这样的呢?本文介绍李宏毅老师的分析。

那么接下来我们就来介绍Chat GPT是怎样练成的!

1.找寻资料参考:

        李老师在翻看OpenAI的博客发现,其目前并没有发表关于ChatGPT的论文。但是!在OpenAI官方博客介绍中,我们可以发现CharGPT有一个兄弟,InstructGPT,因此他决定依靠InstructGPT去寻找一些ChatGPT的训练逻辑。

        当我们看到ChatGPT与InstructGPT的对比时,更加坚定的确定通过InstructGPT是可以找到ChatGPT模型的蛛丝马迹的。如下,上面为ChartGPT的训练流程下面为InstructGPT的流程图。可以说像的7788了,比较面明显的区别其实只有GPT的版本不同而已,前者是GPT3.5,后者是GPT3。所以李老师决定直接分析InstructGPT来推测Chat GPT是怎样练成的!

2.正式开始介绍Chat GPT的学习四阶段:

2.1 学习文字接龙

        学习文字接龙,其实就是依据目前已有的信息,去推测下一个可能出现的字,以此类推。与我们在学习机器学习中的文字翻译Transformer架构很相似。

        正如下面的例子所演示的,当我们有目前有:“你好”这一个不完整的句子的时候,程序可以基于在互联网上学习到的知识去预测下一个字,有可能是 “美” 

         这种学习的好处是,我们并不需要人工标注出机器需要训练的内容,只需要把他放到互联网上,看到文字就自我学习文字接龙即可。

        但是,坏处也显而易见了,对于一个不完整的句子,我们后面的词可以是很多种多样的,比如说在 “你好” 后面,我们可以接上 “吗” 、 “高”、“美” 等,所以GPT返回的其实是一个概率分布,也就是说每次回答的内容其实都是随机的。这次说 “你好吗”,下次可能就说 “你好美了” 。

        但是单单依靠文字接龙,其实GPT就已经可以回答问题了。比如下面的例子,我们问出“台湾最高的山是哪座?” 当GPT在网上看过这么多资料,它通过文字接龙的形式回答,可能可以直接回答出玉山,也可能给你出一道选择题(如果他读过的资料是这么连接起来的),也可能反问你 “谁来告诉我呀?”

2.2 人类老师引导文字接龙方向

        经过了文字接龙,我们会发现GPT虽然能回答我们的问题,但是并不一定能回答出我们想要的答案。说白了就是人工来筛选哪些是我们需要的答案(还是逃离不了有多人工就有多智能呐!)

 2.3 模仿人类老师的喜好

        人类希望获得的答案就会被赋予更高的分数 

2.4 使用增强向模拟老师学习

        就是我们将每次GPT得到的答案都丢给TeacherModel来评判,如果是人类希望的答案就给高分,如果不是则给低分,这个模式被称为增强式学习种的“Reward”模块 

3. 当然,ChatGPT目前并不是完美的...

        目前ChatGPT模型已经很难再被找到错误了,但是根据上面的分析,我们只需要问出一些没有人问过的内容,他就回答不出来了。比如说:我问 “numbers”是由几个字母组成的,他会回答八个,这是八个吗???这明明就是七个!!!

4.总结 

        李宏毅老师认为本流程是GPT的社会化过程,从一开始的想说什么就说什么,一直到后面的人类引导他说出期望的答案。 


http://www.ppmy.cn/news/971771.html

相关文章

【花雕学AI】ChatGPT能用表情包猜电影,你能猜出来吗?揭秘它的神奇「涌现」能力

关于作者斯蒂芬 我是田纳西州纳什维尔的一名科学作家,负责数学、物理学、天文学和癌症研究。我的书Math Art: Truth, Beauty, and Equations 将于 2019 年 4 月出版。我在后院改建的办公室棚子里工作。我是范德比尔特大学的驻校作家,教授科学传播课程。 …

chatgpt赋能python:Python数据分析中如何快速取到一列数据

Python 数据分析中如何快速取到一列数据 在 Python 数据分析中,我们经常需要取到表格中的某一列数据进行分析或可视化。下面介绍了几种方法,可帮助您快速有效地取得所需要的数据。 1. 使用 Pandas 包获取数据 Pandas 是 Python 中非常常用的数据分析库…

(五)chatGPT“让我们想一下”提示

提示:文章出致《Art of Asking ChatGPT for High-Quality Answ Engineering Techniques》,由蓝狐翻译并整理。 “让我们想一下”这个提示,生成的文本具备反思能力、深度思考,对写散文、写诗歌、创意写作的群体来说,很有…

ChatGPT类产品和技术的产生会带来哪些影响?

2023年3月15日,GPT-4的发布再次引爆互联网,原有的自然语言理解、推理和对话能力继续增强,更引入了识图等多模态识别功能,有研究认为可以将其视为“通用性人工智能”的初步阶段。在国内,百度同类产品“文心一言“的发布…

【花雕学AI】09:发挥ChatGPT最大潜力——产生高质量内容的九种方法和建议

人工智能(AI)是当今科技领域最热门和最有前景的话题之一,它已经渗透到了我们生活和工作的方方面面,给我们带来了许多便利和惊喜。而在AI的众多分支中,自然语言处理(NLP)是最贴近人类的一个领域&…

ext4 - mballoc块分配机制

概述 ext4为了尽量避免block管理的碎片化有如此措施: 1.mballoc多块分配器。 buddy算法管理每个block group采用prellocation机制,氛围per-cpu local preallocation和per inode preallocation 小文件和大文件采用不同的策略小文件(具体怎么…

离线环境安装flask依赖包

找到当前版本需要的所有依赖包,生产flask项目生成项目依赖包文件requirements.txt 1)在当前项目目录下 生成requirements文件:pip freeze >requirements.txt 执行requirements文件,安装依赖包:pip install -r requirements.t…

Appium+python自动化(十九)- Monkey(猴子)参数(超详解)

前边几篇介绍了Monkey以及Monkey的事件&#xff0c;今天就给小伙伴们介绍和分享一下Monkey的参数。 首先我们看一下这幅图来大致了解一下&#xff1a; 1、Monkey 命令 基本参数介绍 -p <允许的包名列表> 用此参数指定一个或多个包。指定包之后&#xff0c;mon…