#41 AI-002-十分钟了解ChatGPT的技能逻辑及演进(宿世、今生)
目录
-
目录
-
0、 前语
-
1、什么是GPT
-
2、GPT之技能演进时刻线
-
3、GPT之T-Transformer(2017)
- 3.1、关键在好,仍是关键在人?
- 3.2、对不起,你是个好人
- 3.3、回归正题,Transfomer是什么
- 3.4、论文中对attention和Transfomer的价值描绘
- 3.5、Transformer机制的深远含义
-
4、GPT(Generative Pre-Training)-2018年6月
- 4.1、GPT模型的中心主张1-预练习(pre-training)
- 4.2、GPT模型的中心主张2-生成式(Generative)
- 4.3、GPT比较原版Transfomer的模型改进
- 4.4、GPT模型的练习规划
-
5、GPT-2(2019年2月)
- 5.1、GPT-2模型比较GPT-1的中心改变
- 5.2、为什么这么调整?企图处理zero-shot问题
- 5.3、multitask多使命怎样了解?
- 5.4、GPT-2的数据和练习规划
-
6、GPT-3(2020年5月)
- 6.1、GPT-3的打破式作用开展
- 6.2、GPT-3比较GPT-2的中心改变
- 6.3、GPT-3的练习规划
-
7、Instruction GPT(2022年2月)
- 7.1、Instruction GPT比较GPT-3的中心改变
- 7.2、Insctruction GPT的中心练习进程
- 7.3、Instruction GPT的练习规划
-
8、ChatGPT(2022年11月)
- 8.1、ChatGPT和Instruction GPT
- 8.2、【重要,主张阅读下面推荐的视频】从人的直观了解上,弥补解说一下ChatGPT的中心原理
-
9、小结
-
10、未来将来(GPT-4 or ?)
-
部分参阅资料
0、 前语
11月30日,OpenAI推出了一个名为ChatGPT的AI谈天机器人,能够供大众免费测试,短短几天就火爆全网。
从头条、大众号上多个宣扬来看,它既能写代码、查BUG,还能写小说、写游戏策划,包括向学校写申请书等,貌似无所不能。
本着科(好)学(奇)的精神,抽了一些时刻对ChatGPT进行了了测试验证,而且 梳理了一下ChatGPT为什么能这么”强”。
终究,关于ChatGPT本次会分为两篇:
AI-001-火爆全网的谈天机器人ChatGPT能做什么
《AI-002-了解ChatGPT的技能逻辑及演进》
由于笔者并没有专业学过AI,一起精力受限,所以 短时刻内就不会再有AI-003相似更深入到技能的篇章了,了解 001、002就现已超出普通吃瓜大众的领域了。
本篇会有较多技能名词,我会尽量降低其了解难度。
一起,由于非AI专业出身,如有讹夺、敬请指出。
称谢:十分感谢X同学、Z同学两位大牛的审稿,特别感谢X同学的专业性堪误
1、什么是GPT
ChatGPT
里边有两个词,一个是Chat
,指的是能够对话谈天。别的一个词,便是GPT
。
GPT
的全称,是Generative Pre-Trained Transformer(生成式预练习Transfomer模型)
。
能够看到里边一共3个单词,Generative
生成式、Pre-Trained
预练习、和Transformer
。
有读者可能会留意到,我上面没有给Transformer翻译中文。
由于Transformer是一个技能专有名词,假如硬翻译 ,便是 变压器
。可是会简略失去原意,还不如不翻译。
在下面第3章节会再解说一下Transformer。
2、GPT之技能演进时刻线
GPT从开始至今,其开展进程如下:
2017年6月,Google发布论文《Attention is all you need》
,首次提出Transformer
模型,成为GPT开展的根底。 论文地址: arxiv.org/abs/1706.03…
2018年6月,OpenAI 发布论文《Improving Language Understanding by Generative Pre-Training》(经过生成式预练习提高言语了解能力)
,首次提出GPT模型(Generative Pre-Training)
。论文地址: paperswithcode.com/method/gpt 。
2019年2月,OpenAI 发布论文《Language Models are Unsupervised Multitask Learners》(言语模型应该是一个无监督多使命学习者)
,提出GPT-2模型。论文地址: paperswithcode.com/method/gpt-…
2020年5月,OpenAI 发布论文《Language Models are Few-Shot Learners》(言语模型应该是一个少数样本(few-shot)学习者
,提出GPT-3模型。论文地址: paperswithcode.com/method/gpt-…
2022年2月底,OpenAI 发布论文《Training language models to follow instructions with human feedback》(运用人类反应指令流来练习言语模型)
,发布 Instruction GPT
模型。论文地址: arxiv.org/abs/2203.02…
2022年11月30日,OpenAI推出ChatGPT模型,并供给试用,全网火爆。见:AI-001-火爆全网的谈天机器人ChatGPT能做什么
3、GPT之T-Transformer(2017)
在第1末节中,咱们说到Transformer是没有合适的翻译的。
可是Transfomer
却是GPT(Generative Pre-Training Transfomer)
中最重要、最根底的要害词。
(注:GPT的Transformer比较google论文原版Transformer是简化过的,只保留了Decoder部分,见本文4.3末节)
3.1、关键在好,仍是关键在人?
就像好人,最要害的是好
,仍是人
?

读者们,是好吗?
一个稍保险的答复是:既不是好,也不是人;既是好,也是人。
唔,有点绕,那么说人话一点,打开: 语义上,关键在好; 根底和条件上,关键在人。
3.2、对不起,你是个好人
再延展一下,那”对不起,你是个好人“呢?

语义的关键,变成是对不起。可是语义的条件,仍是人。

3.3、回归正题,Transfomer是什么
这篇《十分钟了解Transfomer》( zhuanlan.zhihu.com/p/82312421 ) 能够看一下。
看懂了能够疏忽我接下来关于Transfomer的内容,直接跳到第4章节。假如没太看懂,能够看下我的了解,对你或许有必定参阅作用。
3.3.1、上一代RNN模型的严重缺点
在Transformer模型出来前,RNN模型(循环神经网络)是典型的NLP模型架构,根据RNN还有其他一些变种模型(疏忽其名字,Transformer出来后,现已不再重要了),可是都存在相同的问题,并没能很好处理。
RNN的基本原理是,从左到右阅读每个单词向量(比如说this is a dog
),保留每个单词的数据,后边的每个单词,都依靠于前面的单词。
RNN的要害问题:前后需求次序、顺次核算。能够想象一下,一本书、一篇文章,里边是有许多单词的,而又由于次序依靠性,不能并行,所以效率很低。
这样说可能大家仍是不简略了解,我举一个比如(简化了解,和实践有必定出入):
在RNN循环中, You are a good man
这句话,需求怎样核算呢?
1)、You
和You are a good man
核算,得到成果集$You
2)、根据$You
的根底上,再运用Are
和You are a good man
,核算得出$Are
3)、根据$You、$Are
的根底,持续核算 $a
4)、依此类推,核算$is
、$good
、$man
,终究完结You are a good man
的所有元素的完好核算
能够看到,核算进程是一个一个、顺次核算,单一流水线,后边的工序依靠前面的工序,所以十分慢
3.3.2、Transformer之All in Attention
前面咱们说到,2017年6月,Google发布论文《Attention is all you need》
,首次提出Transformer
模型,成为GPT开展的根底。 论文地址: arxiv.org/abs/1706.03…
从其标题《Attention is all you need》
你就能知道,Transfomer
其实主张是”All in Attention“。
那么什么是Attention
(留意力)呢?
在《Attention is all you need》
论文中,能够看到其界说如下:
自我留意(self-Attention),有时称为内部留意,是一种将单个序列的不同方位联系起来的留意力机制,以便核算序列的表明。自我留意已成功地使用于阅读了解、笼统归纳、语篇包括和学习使命无关的语句表明等多种使命中

简略了解,便是单词与单词之间的相关度,经过留意力(Attention)
这个向量来描绘。
比如说 You are a good man
(你是个好人),AI在分析 You
的留意力向量时,可能是这么分析的:
从Your are a good man
这句话中,经过留意力机制进行测算,You和You(自身)的留意力相关概率最高(0.7,70%)
,毕竟 你(you)首先是你(you) ;所以You,You
的留意力向量是 0.7
You
和man(人)的留意力相关其次(0.5,50%)
,你(you)是个人(man),,所以You,man
的留意力向量是0.5
You
和good(好)的留意力相关度
再次(0.4,40%),你在人的根底上,仍是一个好(good)人。所以You,good
的留意力向量值是0.4
You,are
向量值是 0.3; You,a
的向量值是0.2。
所以终究You
的留意力向量列表是 【0.7 、 0.3、0.2、0.4、0.5】 (仅本文举例)。

3.4、论文中对attention和Transfomer的价值描绘
在论文中,google关于attention和transfomer的描绘,主要着重了传统模型对次序依靠存在,Transformer模型能够代替当时的递归模型,消减对输入输出的次序依靠。


3.5、Transformer机制的深远含义
Transformer
面世后,迅速替代循环神经网络RNN的系列变种,成为干流的模型架构根底。
假如说 能够并行、速度更快 都是技能特征,让行外人士、普罗大众还不够直观,那么从 当时ChatGPT的震憾作用 就能够窥知一二。
Transformer从根本上处理了两个要害妨碍,其推出是革新性的、革命性的。
3.5.1、摆脱了人工标示数据集(大幅降低人工数量 )
这个要害妨碍便是:过往练习咱们要练习一个深度学习模型,必须运用大规划的标记好的数据调集(Data set)来练习,这些数据调集需求人工标示,成本极高。
打个比如,便是机器学习需求许多教材,许多输入、输出的样本,让机器去学习、练习。这个教材需求量身制定,而且需求数量极大。

好比 以前要10000、10万名教师编写教材,现在只需求10人,降低不计其数倍。

那么这块是怎样处理的呢?简略描绘一下,便是经过Mask机制,遮挡已有文章中的句段,让AI去填空。
好比是一篇已有的文章、诗句,挡住其中一句,让机器根据学习到的模型,根据上一句,去填补下一句。
如下图示例:


这样,许多现成的文章、网页、知乎问答、百度知道等,便是天然的标示数据集了(一个字,超省钱)。
3.5.2、化次序核算为并行核算,巨幅降低练习时刻
除了人工标示之外,在3.3.1末节中说到RNN的严重缺点,便是次序核算,单一流水线的问题。
Self-Attention
机制,结合mask机制和算法优化,使得 一篇文章、一句话、一段话 能够并行核算。
仍是以You are a good man
举例,能够看到,核算机有多少,Transformer就能有多快:



4、GPT(Generative Pre-Training)-2018年6月
接下来,就到了ChatGPT的宿世-GPT(1)了。
2018年6月,OpenAI 发布论文Improving Language Understanding by Generative Pre-Training》(经过生成式预练习提高言语了解能力)
,首次提出GPT模型(Generative Pre-Training)
。论文地址: paperswithcode.com/method/gpt 。
4.1、GPT模型的中心主张1-预练习(pre-training)
GPT模型依托于Transformer解除了次序相关和依靠性的条件,提出一个建设性的主张。
先经过许多的无监督预练习(Unsupervised pre-training)
,
注:无监督是指不需求人介入,不需求标示数据集(不需求教材和教师)的预练习。
再经过少数有监督微调(Supervised fine-tunning)
,来修正其了解能力。

4.1.1、打个比如
打个比如,就好像咱们培育一个小孩,分了两个阶段:
1)、大规划自学阶段(自学1000万本书,没有教师):给AI供给足够的算力,让其根据Attention机制,自学。
2)、小规划辅导阶段(教10本书):根据10本书,举一反”三”


4.1.2、论文开篇的描绘
所谓开宗明义,从开篇introduction中,也可看到GPT模型关于监督学习、手动标示数据的阐明。

4.2、GPT模型的中心主张2-生成式(Generative)
在机器学习里,有判别式形式(discriminative model)
和生成式形式(Generative model)
两种差异。
GPT(Generative Pre-Training)
顾名思义,采用了生成式模型。
生成式模型
比较判别式模型
更适合大数据学习 ,后者更适合精确样本(人工标示的有用数据集)。要更好实现预练习(Pre-Training),生成式形式会更合适。
注:本末节关键在于上面一句话(更适合大数据学习),假如觉得了解杂乱,本末节下面可不看。
在维基百科生成式模型的材料里( en.wikipedia.org/wiki/Genera… ) ,举了一个如下阐明两者的差异:

单看上面可能不简略看懂,这儿弥补解说下。
上面的意思是说,假设有4个样本:

那么生成式(Generative Model)
的特征便是概率不分组(核算样本内概率,除以样本总和) ,以上表为例,发现x=1,y=0的总共有1个,所以会以为x=1,y=0的几率为1/4(样本总数为4)。
相同的,x=2,y=0的总共有2个,则x=2,y=0的概率 为2/4.

而判别式(Discriminative Model)
的特征则是概率分组核算(核算组内概率 ,除以组内总和)。 以上表为例,x=1,y=0一共有1个,一起x=1的分组一共有2个sample,所以其概率为 1/2。
相同的,x=2,y=0的总共有2个。且一起x=2的分组共有2个sample,则x=2,y=0的概率 为2/2=1(即100%)。

4.3、GPT比较原版Transfomer的模型改进
下面是GPT的模型阐明,GPT练习了一个12层仅decoder的解码器(decoder-only,没有encoder),从而使得模型更为简略。
注1:google论文《Attention is all you need》原版Transformer中,包括Encoder和Decoder两部分,前者(Encoder)对应的是 翻译 ,后者(Decoder)对应的是 生成 。
注2:google以Encoder为中心,构建了一个BERT(Bidirectional Encoder Representations from Transformers,双向编码生成Transformer)
模型。里边的双向(Bidirectional)
,是指BERT
是一起运用上文和下文猜测单词,因而 BERT 更拿手处理自然言语了解使命 (NLU)。
注3:本末节关键,GPT根据Transformer,可是比较Transformer又简化了模型,去掉了Encoder,只保留了Decoder。一起,比较BERT的上下文猜测(双向),GPT主张仅运用单词的上文猜测单词(单向),从而使模型更简略、核算更快,更适合于极致的生成,并因而GPT更拿手处理自然言语生成使命 (NLG),也便是咱们在AI-001-火爆全网的谈天机器人ChatGPT能做什么 发现的,ChatGPT很拿手写”作文”、编瞎话。 了解本段后,本末节后边的可不看。
注4:从模拟人类来看,GPT的机制得更像真实人类。由于人类也是根据上文(前面说的)来推测下文(即说后边的),所谓说出去的话就像泼出去的水,人类也是没办法根据后边说的话,来调整前面说的话的,即便说错了,恶语伤人心,也只能基说出去的话(上文)进行弥补、解说。

4.3.1、架构图比照
下图为Transfomer模型架构和GPT模型架构的比照(分别来自论文《Attention is all you need》
和《Improving Language Understanding by Generative Pre-Training》
)

4.4、GPT模型的练习规划
前面说到生成式形式
更有利于大数据集的Pre-Training预练习,那么GPT运用了多大规划的data set(数据集)呢?
论文中有说到,它采用了一个名为BooksCorpus
的数据集,包括了超过7000本未发表书本。

5、GPT-2(2019年2月)
2019年2月,OpenAI 发布论文《Language Models are Unsupervised Multitask Learners》(言语模型应该是一个无监督多使命学习者)
,提出GPT-2模型。论文地址: paperswithcode.com/method/gpt-…
5.1、GPT-2模型比较GPT-1的中心改变
前面说到,GPT的中心主张有Generative(生成式)
、Pre-Training
。一起,GPT练习有两步:
1)、大规划自学阶段(Pre-Training预练习
,自学1000万本书,没有教师):给AI供给足够的算力,让其根据Attention机制,自学。
2)、小规划辅导阶段(fine-tuning
微调,教10本书):根据10本书,举一反”三”
GPT-2的时候,OpenAI将有监督fine-tuning
微调阶段给直接去掉了,将其变成了一个无监督的模型。
一起,增加了一个要害字多使命(multitask),这点从其论文名称《Language Models are Unsupervised Multitask Learners》(言语模型应该是一个无监督多使命学习者)
也可看出。

5.2、为什么这么调整?企图处理zero-shot问题
GPT-2为什么这么调整?从论文描绘来看,是为了尝试处理zero-shot(零次学习问题)。
zero-shot(零次学习) 是一个什么问题呢?简略可了解为推理能力。便是指面对不知道事物时,AI也能自动知道它,即具有推理能力。
比如说,在去动物园前,咱们告诉小朋友,像熊猫一样,是黑白色,而且呈黑白条纹的类马动物便是斑马,小朋友根据这个提示,能够正确找到斑马。
5.3、multitask多使命怎样了解?
传统ML中,假如要练习一个模型,就需求一个专门的标示数据集,练习一个专门的AI。
比如说,要练习一个能认出狗狗图画的机器人,就需求一个标示了狗狗的100万张图片,练习后,AI就能认出狗狗。这个AI,是专用AI,也叫single task
。
而multitask
多使命,便是主张不要练习专用AI,而是喂取了海量数据后,恣意使命都可完结
。
5.4、GPT-2的数据和练习规划
数据集增加到800万网页,40GB巨细。

而模型自身,也达到最大15亿参数、Transfomer堆叠至48层。简略类比,就像是模拟人类15亿神经元(仅举例,不完全等同) 。

6、GPT-3(2020年5月)
2020年5月,OpenAI 发布论文《Language Models are Few-Shot Learners》(言语模型应该是一个少数样本(few-shot)学习者)
,提出GPT-3模型。论文地址: paperswithcode.com/method/gpt-…
6.1、GPT-3的打破式作用开展
论文中关于作用是这么描绘的:
1、GPT-3在翻译 、问题答复和完形填空中体现出强壮的性能,一起能够解读单词、语句中运用新单词或执行3位数算订。
2、GPT-3能够生成新闻文章的样本,人类已然区别不出来。
如下图:

6.2、GPT-3比较GPT-2的中心改变
前面说到GPT-2在寻求无监督、zero-shot(零次学习) ,可是其实在GPT-2论文中,OpenAI也提出成果不达预期。这显然是需求调整的,所以GPT-3就进行了相关调整。 从标题《Language Models are Few-Shot Learners》(言语模型应该是一个少数样本(few-shot)学习者)
也可看出。
说白了,zero-shot(零次学习)不靠谱。

而且,在练习进程中会比照Zero-shot
零次学习 ; One-shot(单一样本学习)
、Few-shot(少数样本学习)
,以及fine-tuning人工微调
的方法。
最后在多数情况下,few-shot(少数样本)
的归纳体现,是在无监督形式下最优的,但稍弱于fine-tuning
微调形式。
从下述论文表格、图形中,也可看出few-shot
是归纳体现仅弱于fine-tuning
微调的。




6.3、GPT-3的练习规划
GPT-3采用了过滤前45TB的压缩文本,而且在过滤后也仍有570GB的海量数据。

在模型参数上,从GPT-2的15亿,提高到1750亿,翻了110多倍;Transformer Layer
也从48提高到96。

7、Instruction GPT(2022年2月)
2022年2月底,OpenAI 发布论文《Training language models to follow instructions with human feedback》(运用人类反应指令流来练习言语模型)
,发布 Instruction GPT
模型。论文地址: arxiv.org/abs/2203.02…
7.1、Instruction GPT比较GPT-3的中心改变
Instruction GPT是根据GPT-3的一轮增强优化,所以也被称为GPT-3.5
。
前面说到,GPT-3
主张few-shot少样本学习
,一起坚持无监督学习。
可是事实上,few-shot
的作用,显然是差于fine-tuning
监督微调的方法的。
那么怎样办呢? 走回fine-tuning监督微调?显然不是。
OpenAI给出新的答案: 在GPT-3的根底上,根据人工反应(RHLF)练习一个reward model(奖赏模型)
,再用reward model(奖赏模型,RM)
去练习学习模型。
天啦噜,夭寿了。。要用机器(AI)来练习机器(AI)了。。

7.2、Insctruction GPT的中心练习进程
Instruction GPT一共有3步:

1)、对GPT-3进行fine-tuning(监督微调)。
2)、再练习一个Reward Model(奖赏模型,RM)
3)、最后经过增强学习优化SFT


值得留意的是,第2步、第3步是完全能够迭代、循环屡次进行的。
7.3、Instruction GPT的练习规划
根底数据规划同GPT-3(见6.3末节) ,只是在其根底上增加了3个进程(监督微调SFT、奖赏模型练习Reward Model,增强学习优化RPO)。
下图中labeler
是指OpenAI雇佣或有相关联系的标示人员(labler)。
而customer
则是指GPT-3 API
的调用用户(即其他一些机器学习研究者、程序员等)。
本次ChatGPT上线后据说有百万以上的用户,咱们每个人都是其customer
,所以能够预见,未来GPT-4发布时,其customer
规划至少是百万起。

8、ChatGPT(2022年11月)
2022年11月30日,OpenAI推出ChatGPT模型,并供给试用,全网火爆。
见:AI-001-火爆全网的谈天机器人ChatGPT能做什么
8.1、ChatGPT和Instruction GPT
ChatGPT和InstructionGPT本质上是同一代际的,仅仅是在InstructionGPT的根底上,增加了Chat功用,一起开放到大众测试练习,以便产生更多有用标示数据。

8.2、【重要,主张阅读下面推荐的视频】从人的直观了解上,弥补解说一下ChatGPT的中心原理
可参阅 台大教授李宏毅的视频《ChatGPT是怎样炼成的?GPT社会化进程》,讲得很好。
www.inside.com.tw/article/300…
GPT是单向生成,即根据上文生成下文。
比如说有一句话:
向GPT模型给出输入 你好,下面一个字是接你好吗?你好帅?你好高?你好美?等等,GPT会核算出一个概率,给出最高的那个概率作为答复。
依此类推,假如给出一个指令(或称为Prompt),ChatGPT也会根据上文(prompt)进行推算下文(答复),一起选择一个最大概率的上文进行答复。
如下图:


9、小结
总结:
1)、2017年,谷歌发布论文《Attention is all you need》,提出Transformer模型,为GPT铺就了条件。
2)、2018年6月,OpenAI发布了GPT生成式预练习模型,经过BooksCorpus大数据集(7000本书)
进行练习,并主张经过大规划、无监督预练习(pre-training) +有监督微调(fine-tuning) 进行模型构建。
3)、2019年2月,OpenAI发布GPT-2模型,进一步扩展了练习规划(运用了40GB数据集,最大15亿参数(parameters)) 。一起在思路上, 去掉了fine-tuning微调进程,着重zero-shot(零次学习)
和multitask(多使命)
。可是终究zero-shot作用显著比不上fine-tuning微调。
4)、2020年5月,OpenAI发布GPT-3模型,进一步扩展了练习规划(运用了570GB数据集,和1750亿参数)。一起采取了few-shot(少数样本)学习
的形式,取得了优异作用。 当然,在实验中同步比照了fine-tuning,比fine-tuning作用略差。
5)、2022年2月,OpenAI发布Instruction GPT模型,此次主要是在GPT-3的根底上,增加了监督微调(Supervised Fine-tuning) 环节,而且根据此,进一步加入了Reward Model奖赏模型
,经过RM练习模型来对学习模型进行RPO增强学习优化。
6)、2022年11月30日,OpenAI发布ChatGPT模型,能够了解为一个多轮迭代练习后的InstructionGPT,并在此根底上增加了Chat对话谈天功用。
10、未来将来(GPT-4 or ?)
从种种痕迹来看,GPT-4或许将于2023年亮相?它会有多强壮呢?
一起ChatGPT的作用,牵引了业界众多目光,想必接下来更多根据GPT的练习模型及其使用,会更加百家争鸣。
未来将来,拭目而待。
欢迎重视同名微信大众号(非典型产品司理笔记)。
部分参阅资料
ai.googleblog.com/2017/08/transformer-novel-neural-network.html
arxiv.org/abs/1706.03…
paperswithcode.com/method/gpt
paperswithcode.com/method/gpt-…
paperswithcode.com/method/gpt-…
arxiv.org/abs/2203.02…
zhuanlan.zhihu.com/p/464520503
zhuanlan.zhihu.com/p/82312421
cloud.tencent.com/developer/a…
cloud.tencent.com/developer/a…
zhuanlan.zhihu.com/p/353423931
zhuanlan.zhihu.com/p/353350370
/post/696939…
zhuanlan.zhihu.com/p/266202548
en.wikipedia.org/wiki/Genera…
zhuanlan.zhihu.com/p/67119176
zhuanlan.zhihu.com/p/365554706
cloud.tencent.com/developer/a…
zhuanlan.zhihu.com/p/34656727
zhuanlan.zhihu.com/p/590311003