GPT实战系列-大话LLM大模型训练
GPT实战系列-大话LLM大模型训练
GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHF
GPT实战系列-ChatGLM3本地部署CUDA11+1080Ti+显卡24G实战方案
GPT模型生成文本序列是通过预测下一个 token 的方式来实现。目前预训练模型的格局,OpenAI独占鳌头,Google 和 Meta 跟随其后,仍有一定距离。大模型的训练基本都遵循分阶段训练过程。
预训练阶段
先用大规模语料对模型进行预训练,训练处基模型
- 预训练的模型输入,是获取 tokenize 处理后的文本,打包成行,用
<|endoftext|>
来对不同的文档进行分隔。<|endoftext|>
是模型在训练期间看到的文档分隔符。
以莎士比亚的作品数据集训练过程为例,模型刚开始训练,参数是随机初始化的,预测结果也是完全随机的。但是随着训练的不断迭代,观察迭代250次,500次,5000次,30000次的模型生成文本在不断收敛,达到一定程度后,模型就能生成连贯一致的文本序列。
-
训练分为两个主要阶段,预训练阶段是基于大量无标注的数据集,生成的基模型学习强大的通用表达特征。微调阶段,在基模型基础上,根据感兴趣的领域,用少量标注数据集训练。分阶段训练能极大降低微调需要的数据量。
-
对话模型需要对人类的指令或问题进行回复,但预训练的基模型只是完成文档文本,无法直接回答问题。
-
但是可以通过生成文档的提示,来引导预训练的基模型的生成文档文本,然后把生成文档文本组装成对话,上面的方法来使得预训练模型做对话模型。
微调阶段
OpenAI 的 ChatGPT 实现方案
微调对话模型 步骤一:SFT
- 首先进行监督微调训练 SFT (supervised finetuning),基于少量人工标注的数据进行微调,训练数据集主要是问答对 (1 万到10 万量级)。
- SFT 数据示例,prompt 是提问,response 是标注的示例回复。标注文档需要满足有益,可信,无害,符合道德与法规等约束。
微调对话模型 步骤二:Reward Modeling
- 评价模型用于评价生成回复的质量。
- 准备标注数据集(10万 到 100 万量级),进行好坏二分类训练。
- RM 数据集示例。给定一个 prompt 提问,基于上一步 SFT 模型生成多个response回复,如生成三个回复,然后让标注员对回复结果进行排名分类。
微调对话模型 步骤三:RL
- 强化学习 RLHF,基于上一步 RM 模型进行强化学习训练。评价模型的奖励来调整模型生成语言建模的目标。比如第1个回答的 reward 高,第1个回答采取的所有 token 将得到强化,未来将会获得更高的采取概率,其他回答的 token 之后会获得更低的采取概率。
为什么需要 RLHF
- 预训练模型,SFT 模型和 RLHF 模型理论上都可以用于 GPT 对话模型部署。选择用 RLHF 的一个简单的原因就是 RLHF 模型效果更好,模型生成的答案更让人类喜欢。
- RLHF 更有用的原因是判别比生成更容易,让标注员去写 SFT 的 问答数据对会比较困难,但如果让标注员判断 SFT 模型生成答案哪个更好,就简单的多。
- 加州伯克利大学做一个模型评测榜单 Leaderboard,GPT4 最强。前三个都是 RLHF 模型,其他模型都是 SFT 模型。
觉得有用 收藏 收藏 收藏
点个赞 点个赞 点个赞
End
GPT专栏文章:
GPT实战系列-Baichuan2等大模型的计算精度与量化-CSDN博客
GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHF-CSDN博客
GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHF
GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型,到底做了什么?(二)
GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型,到底做了什么?(一)
GPT实战系列-ChatGLM3本地部署CUDA11+1080Ti+显卡24G实战方案
GPT实战系列-ChatGLM2部署Ubuntu+Cuda11+显存24G实战方案
决策引擎专栏:
Falcon构建轻量级的REST API服务
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!