通俗易懂chatGPT原理

描述

目前关于chatGPT的资料过于零散,没有详尽所有知识点、系统概述的文章,因此,笔者作了这篇总结性文章。

训练过程总览

理清演化路径

预训练(pretrain)

GPT-3概述

GPT 3模型的理念

GPT-3如何学习

数据集

指令微调 (Instruction Fine-Tuning,IFT)

有监督微调 (Supervised Fine-tuning, SFT)

人类反馈强化学习 (Reinforcement Learning From Human Feedback,RLHF)

其他方法

思维链 (Chain-of-thought,CoT)

与chatGPT类似的工作

引用

进NLP群—>加入NLP交流群(备注nips/emnlp/nlpcc进入对应投稿群)

训练过程总览

OpenAI 使用了 175B参数的大型语言模型(LM) 和 6B参数的奖励模型(RM)。除预训练之外,训练过程分为三步:

收集NLP各种任务的数据集,加上任务描述和提示组装成新的数据集,并使用这些数据微调预训练的大型语言模型。包括指令微调和有监督微调。

从上述数据集中采样,使用大型语言模型生成多个响应,手动对这些响应进行排名,并训练奖励模型 (RM) 以适应人类偏好。

基于第一阶段的有监督微调模型和第二阶段的奖励模型,使用强化学习算法进一步训练大型语言模型。

nlp

img

理清演化路径

GPT-3.5 参数量仍然为175B,总体进化树如下:

nlp

img

nlp

img

预训练(pretrain)

GPT-3概述

nlp

 

nlp

GPT-3是一种自回归模型,仅使用解码器,训练目标也是预测下一个单词(没有判断下一句任务)。

最大的GPT-3模型有175B参数,是BERT模型大470倍(0.375B)

nlp

image-20230221144754842

GPT 3模型的理念

不需要接新的模型结构:如bert用于NER任务一般接LSTM+CRF

不需要微调

一个模型解决NLP多种任务

NLP任务都可以用生成模型解决

和人类一样,只需要看极少数量的样例就能学会

GPT-3如何学习

零样本学习:提供任务描述、提示

单样本学习:提供任务描述、一个样例、提示

少样本学习:提供任务描述、几个样例、提示

nlp

数据集

 

模型 发布时间 参数量 预训练数据量
BERT-large 2019 年 3 月 3.75 亿 约3.3GB
GPT 2018 年 6 月 1.17 亿 约 5GB
GPT-2 2019 年 2 月 15 亿 40GB
GPT-3 2020 年 5 月 1,750 亿 45TB

 

BERT-large:BooksCorpus 800M words、 English Wikipedia 2.5Bwords

GPT:WebText2, BooksCorpus、Wikipedia超过 5GB。

GPT-2:WebText2, BooksCorpus、Wikipedia总量达到了40GB。

GPT-3:**WebText2, BooksCorpus、Wikipedia、Common Crawl **等数据集45TB数据。

nlp

image-20230221153905277

指令微调 (Instruction Fine-Tuning,IFT)

收集NLP各种任务的数据集,加上任务描述和提示组装成新的数据集。chatGPT使用到的数据集如下:

nlp

image-20230221113507381

相关的一些论文:

Unnatural Instructions (Honovich 等, '22)//arxiv.org/abs/2212.09689

Super-natural instructions (Wang 等, '22)//arxiv.org/abs/2204.07705

Self-Instruct (Wang 等, '22)//arxiv.org/abs/2212.10560

T0 (Sanh 等, '22)//arxiv.org/abs/2110.08207

Natural instructions 数据集 (Mishra 等, '22)//arxiv.org/abs/2104.08773

FLAN LM (Wei 等, '22)//arxiv.org/abs/2109.01652

OPT-IML (Iyer 等, '22)//arxiv.org/abs/2212.12017

有监督微调 (Supervised Fine-tuning, SFT)

此步骤未为了防止遇到敏感话题时,回复【不知道】这种无意义的回答,以加入一些人工标注数据,增加回复安全性,百级别的数据集即可完成。

nlp

相关的一些论文:

Google 的 LaMDA:附录 Ahttps://arxiv.org/abs/2201.08239

DeepMind 的 Sparrow: Sparrow :附录 Fhttps://arxiv.org/abs/2209.14375

人类反馈强化学习 (Reinforcement Learning From Human Feedback,RLHF)

描述:

策略 (policy) :一个接受提示并返回一系列文本 (或文本的概率分布) 的 LM。

行动空间 (action space) :LM 的词表对应的所有词元 (一般在 50k 数量级) ,

观察空间 (observation space) 是可能的输入词元序列,也比较大 (词汇量 ^ 输入标记的数量) 。

奖励函数是偏好模型和策略转变约束 (Policy shift constraint) 的结合。

此过程分为两步:

聚合问答数据并训练一个奖励模型 (Reward Model,RM)

用强化学习 (RL) 方式微调 LM

开源数据集:

Anthropic/hh-rlhf · Datasets at Hugging Face

OpenAI 使用的是用户提交的反馈。

nlp

image-20230221111329526

其他方法

这部分简单介绍一下和chatGPT使用的微调并列的一些方法

思维链 (Chain-of-thought,CoT)

如下图所示使用一些带有逐步推理的数据集进行微调

橙色是任务描述,粉色是问题和答案,蓝色是推理过程

nlp

思维链提示 (Wei 等, '22)//arxiv.org/abs/2201.11903

与chatGPT类似的工作

Meta 的 BlenderBot//arxiv.org/abs/2208.03188

Google 的 LaMDA//arxiv.org/abs/2201.08239

DeepMind 的 Sparrow//arxiv.org/abs/2209.14375

Anthropic 的 Assistant//arxiv.org/abs/2204.05862

审核编辑 :李倩

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分