GPT实战系列-大话LLM大模型训练

GPT实战系列-大话LLM大模型训练


GPT实战系列-探究GPT等大模型的文本生成

GPT实战系列-Baichuan2等大模型的计算精度与量化

GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHF

GPT实战系列-ChatGLM3本地部署CUDA11+1080Ti+显卡24G实战方案

GPT实战系列-Baichuan2本地化部署实战方案


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模型的微调训练参数解读

GPT实战系列-如何用自己数据微调ChatGLM2模型训练

GPT实战系列-ChatGLM2部署Ubuntu+Cuda11+显存24G实战方案

GPT实战系列-Baichuan2本地化部署实战方案

GPT实战系列-探究GPT等大模型的文本生成-CSDN博客


决策引擎专栏:
Falcon构建轻量级的REST API服务

决策引擎-利用Drools实现简单防火墙策略

  • 22
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
要下载GPT2-large ONNX预训练模型,可以按照以下步骤进行操作: 1. 首先,打开您的浏览器,并访问OpenAI的GitHub页面。在搜索栏中键入"GPT-2 ONNX"以找到相关的项目页面。 2. 在项目页面上,您可以找到一个名为"Downloads"或"Releases"的选项卡。点击该选项卡以访问可用的下载文件。 3. 在下载页面上,您将看到不同版本的GPT2 ONNX模型。选择"GPT2-large"模型并点击下载链接。 4. 下载完成后,您将获得一个.ONNX文件,该文件包含预训练GPT2-large模型。 5. 如果您希望在Python中使用该模型,还需要安装相应的库。通过运行以下命令来安装ONNX库:pip install onnxruntime 6. 安装完ONNX库后,您可以使用Python代码加载和使用该预训练模型。以下是一个示例代码片段: ```python import onnxruntime # 加载预训练GPT2-large ONNX模型 sess = onnxruntime.InferenceSession('path_to_gpt2_large.onnx') # 定义输入和输出名称 input_name = sess.get_inputs()[0].name output_name = sess.get_outputs()[0].name # 准备要生成文本的输入 input_text = "要生成的文本输入" # 将输入转换为ONNX要求的格式 input_data = {'input': [input_text]} # 运行预测 output = sess.run([output_name], input_data) # 处理模型输出 generated_text = output[0][0] # 打印生成的文本 print(generated_text) ``` 请确保将'path_to_gpt2_large.onnx'替换为实际的GPT2-large ONNX模型文件路径。 通过按照以上步骤操作,您应该能够成功下载和使用GPT2-large ONNX预训练模型。如果遇到任何问题,可以查看相关的技术文档或在论坛上寻求OpenAI社区的帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Alex_StarSky

你的鼓励是创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值