首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
王舜202307131027433
The University of Sheffield 算法工程师
发布于英国
关注
已关注
取消关注
@汀丶人工智能:
人工智能LLM模型:奖励模型的训练、PPO 强化学习的训练
人工智能LLM模型:奖励模型的训练、PPO 强化学习的训练、RLHF1.奖励模型的训练1.1大语言模型中奖励模型的概念在大语言模型完成 SFT 监督微调后,下一阶段是构建一个奖励模型来对问答对作出得分评价。奖励模型源于强化学习中的奖励函数,能对当前的状态刻画一个分数,来说明这个状态产生的价值有多少。在大语言模型微调中的奖励模型是对输入的问题和答案计算出一个分数。输入的答案与问题匹配度越高,则奖励模型输出的分数也越高。1.2 奖励模型的模型架构与损失函数1.2.1 模型架构奖励模型(RM 模型)将 SFT 模型最后一层的 softmax 去掉,即最后一层不用 softmax,改成一个线性层。RM 模型的输入是问题和答案,输出是一个标量即分数。由于模型太大不够稳定,损失值很难收敛且小模型成本较低,因此,RM 模型采用参数量为 6B 的模型,而不使用 175B 的模型。1.2.2 损失函数奖励模型的训练数据是人工对问题的每个答案进行排名,如下图所示:对于每个问题,给出若干答案,然后工人进行排序,而奖励模型就是利用排序的结果来进行反向传播训练。奖励模型的损失函数采用 Pairwise Ranking Loss,公式如下所示:其中:D:人工对答案进行排序的数据集;x:数据集D中的问题;K:每个问题对应的答案数量;yw和yl:问题x对应的K个答案中的两个,且yw的排序比yl高,由于是一对,也称 pairwise; rθ(x,y):需要训练的 RM 模型,对于输入的一对x和y得到的标量分数;θ:RM 模型需要优化的参数。如何理解 RM 模型的损失函数呢?RM 模型的目标是使得排序高的答案yw对应的标量分数要高于排序低的答案yl对应的标量分数,且越高越好,也就是使得损失函数中的rθ(x,yw)−rθ(x,yl)这个差值越大越好。将相减后的分数通过 sigmoid 函数,差值变成 - 1 到 1 之间,由于 sigmoid 函数是单调递增的函数,因此σ(rθ(x,yw)−rθ(x,yl))越大越好。σ(rθ(x,yw)−rθ(x,yl))约接近 1,表示yw比yl排序高,属于 1 这个分类,反正属于 - 1 这个分类,所以这里也可以看成是一个二分类问题。再加上 logistic 函数,也就是相当于交叉熵损失函数。对于每个问题都有K个答案,在损失函数前除以CK2,使得损失函数值不会因为K的变化而变化太多。损失函数的最终目标是最小化loss(θ),与最大化rθ(x,yw)−rθ(x,yl)相对应。奖励模型中每个问题对应的答案数量即K值为什么选 9 更合适,而不是选择 4 呢?进行标注的时候,需要花很多时间去理解问题,但答案之间比较相近,假设 4 个答案进行排序要 30 秒时间,那么 9 个答案排序可能就 40 秒就够了。9 个答案与 4 个答案相比生成的问答对多了 5 倍,从效率上来看非常划算;K=9时,每次计算 loss 都有 36 项rθ(x,y)需要计算,RM 模型的计算所花时间较多,但可以通过重复利用之前算过的值(也就是只需要计算 9 次即可),能节约很多时间。奖励模型的损失函数为什么会比较答案的排序,而不是去对每一个答案的具体分数做一个回归?每个人对问题的答案评分都不一样,无法使用一个统一的数值对每个答案进行打分。如果采用对答案具体得分回归的方式来训练模型,会造成很大的误差。但是,每个人对答案的好坏排序是基本一致的。通过排序的方式避免了人为的误差。1.3 总结奖励模型通过与人类专家进行交互,获得对于生成响应质量的反馈信号,从而进一步提升大语言模型的生成能力和自然度。与监督模型不同的是,奖励模型通过打分的形式使得生成的文本更加自然逼真,让大语言模型的生成能力更进一步。2.PPO 强化学习的训练2.1 PPO 强化学习概念大语言模型完成奖励模型的训练后,下一个阶段是训练强化学习模型(RL 模型),也是最后一个阶段。大语言模型微调中训练 RL 模型采用的优化算法是 PPO(Proximal Policy Optimization,近端策略优化)算法,即对设定的目标函数通过随机梯度下降进行优化。近端策略优化是一种深度强化学习算法,用于训练智能体在复杂环境中学习和执行任务。通过智能体的训练,使得其在与环境的交互中能够最大化累积回报,从而达成指定任务目标。这里的智能体在大语言模型中指的就是 RL 模型。2.2 PPO 强化学习原理RL 模型的初始模型采用 SFT 微调之后的大语言预训练模型。训练 RL 模型的数据集只需要收集问题集(Prompt 集),不需要对问题进行标注。问题集通过 RL 模型生成答案文本,然后将问题和答案输入上一步训练的 RW 模型进行打分,来评价生成的文本质量,而训练 RL 模型的目标是使得生成的文本要在 RW 模型上获得尽可能高的得分。将初始语言模型的微调任务建模为强化学习(RL)问题,需要定义策略(policy)、动作空间(action space)和奖励函数(reward function)等基本要素。策略就是基于该语言模型,接收 prompt 作为输入,然后输出一系列文本(或文本的概率分布);而动作空间就是词表所有 token 在所有输出位置的排列组合;观察空间则是可能的输入 token 序列(即 prompt),为词表所有 token 在所有输入位置的排列组合;而奖励函数则是上一阶段训好的 RM 模型,配合一些策略层面的约束进行的奖励计算。该阶段流程如下图所示:RL 模型训练的损失函数公式如下:其中:πSFT:SFT 模型;πϕRL:强化学习中,模型叫做 Policy,πϕRL就是需要调整的模型,即最终模型。初始化是πSFT; (x,y)∼DπϕRL:x是 RL 数据集中的问题,y是x通过πϕRL模型得到的答案;rθ(x,y):对问题x和答案y进行打分的 RM 模型;πϕRL(y∣x):问题x通过πϕRL得到答案y的概率,即对于每一个y的预测和它的 softmax 的输出相乘;πSFT(y∣x):问题x通过πSFT得到答案y的概率;x∼Dpretrain:x是来自大语言模型预训练阶段的数据;β、γ:调整系数。RL 模型的优化目标是使得损失函数越大越好,损失函数可以分为三个部分,打分部分、KL 散度部分以及预训练部分。**打分部分:**将 RL 模型的问题数据集x,通过πϕRL模型得到答案y,然后再把这对(x,y)代入 RW 模型进行打分,即损失函数公式中的rθ(x,y)。该分数越高,代表模型生成的答案越好。**KL 散度部分:**在每次更新参数后,πϕRL会发生变化,x通过πϕRL生成的y也会发生变化,而rθ(x,y)奖励模型是根据πSFT模型的数据训练而来。如果πϕRL和πSFT差的太多,则会导致rθ(x,y)的分数估算不准确。因此需要通过 KL 散度来计算,πϕRL生成的答案分布和πSFT生成的答案分布之间的距离,使得两个模型之间不要差的太远。损失函数公式中的log(πϕRL(y∣x)/πSFT(y∣x))就是在计算 KL 散度。由于 KL 散度是越小越好,而训练目标是损失函数越大越好,因此在前面需要加上一个负号。**预训练部分:**预训练部分对应损失函数中的Ex∼Dpretrain[log(πϕRL(x))]。如果没有该项,那么模型最终可能只对这一个任务能够做好,在别的任务上会发生性能下降。因此,需要将预训练阶段的目标函数加上,使得前面两个部分在新的数据集上做拟合的同时保证原始的数据也不会丢弃。最终优化后的πϕRL模型就是大语言模型的最终模型。2.3 总结通过强化学习的训练方法,迭代式的更新奖励模型(RW 模型)以及策略模型(RL 模型),让奖励模型对模型输出质量的刻画愈加精确,策略模型的输出则愈能与初始模型拉开差距,使得输出文本变得越来越符合人的认知。这种训练方法也叫做 RLHF。目前,RLHF 技术对训练大语言模型具有极大的影响力,训练出来的效果好于之前的方法。但是,RLHF 训练出来的大语言模型仍然可能输出有害或事实上不准确的文本,需要不断不断改进。此外,在基于 RLHF 范式训练模型时,人工标注的成本还是非常高昂的,RLHF 性能最终仅能达到标注人员的知识水平。这里的人工标注主要是为 RM 模型标注输出文本的排序结果,而若想要用人工去撰写答案的方式来训练模型,那成本更是不可想象。3.关键知识点大语言模型微调中的奖励模型训练:1.奖励模型输入问答对,输出得分 2.奖励模型的损失函数目的是使得得分较高的答案比得分较低的答案尽可能大,3.奖励模型是判别式模型奖励模型是:监督学习、强化学习、判别式模型大语言模型训练中的PPO强化学习:1.在大语言模型训练中,强化学习模型架构与SFT监督微调的模型一样,2.RLHF中训练强化学习模型阶段不需要标注问题的答案 3.RLHF中的初始策略就是SFT模型关于RLHF方法中RL模型训练的损失函数:1.RL模型的损失函数包含三个部分 2.RL模型的损失函数需要计算策略更新后的RL模型与SFT模型输出的KL散度 3.RL模型的损失函数需要计算大语言模型预训练阶段的损失函数 4.RL模型的损失函数要使得RL模型生成的文本在奖励模型中的得分越高越好RLHF本质上是通过人类的反馈来优化模型,生成的文本会更加的自然。更多优质内容请关注:汀丶人工智能;会提供一些相关的资源和优质文章,免费获取阅读。
点赞 3
评论 0
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
07-10 09:43
门头沟学院 客户端其它
双非二本靠一张嘴拿下美团
没竞赛经历、没拿过省级及以上的比赛奖项、甚至连竞选班干都落选的选手。但就是这样的我,凭借着我的“水分简历”屡次获得国内大厂的面试机会。下面是我的简历,大家取其精华去其糟粕,哈哈哈哈哈。简历中水分最大的两块区域,实习经历,老粉应该知道,我去神州实习是啥都没学到的,新粉可以看我这篇贴子 “https://www.nowcoder.com/share/jump/4888395581752079067876”,那么好,这就说明我实习经历全是自己编的,但是我能说清楚实习经历的背景、问题调研的过程、克服的困难以及最终实现的效果,那么面试官就会认为我干过,因为实际工作中我的这套流程就是工作流程,这要是在任何...
运营你豪哥:
你小子也是优秀
投递美团等公司10个岗位
点赞
评论
收藏
分享
昨天 18:09
门头沟学院 Java
地平线终究是高攀不上了
果然卡学历,第一学历是双非真的很难
投递地平线等公司7个岗位
点赞
评论
收藏
分享
07-07 17:21
美团_前端(实习员工)
内推秒挂,2min直接破纪录了
就在刚才,别人让我帮忙内推一下(运营岗),很快啊,我也是直接发了内推链接。然后就在我刚看到内推消息时,直接结束了???非技术岗是有点太卷了
黑皮白袜臭脚体育生:
有那么卷吗,我上次应聘骑手岗挺快的
非技术求职现状
点赞
评论
收藏
分享
07-13 21:50
门头沟学院 Java
实习包装太狠了..
各位牛爷爷看看我的实习是不是包装太狠了
点赞
评论
收藏
分享
07-10 09:45
已编辑
门头沟学院 自动化
26届双非机械硕,深度学习方向
各位大佬能帮忙看看我的简历吗?有没有什么需要优化的地方? 这个研究方向完全找不到工作,老师也没有结构相关的项目,平时就是帮他写文章,感觉自己什么也没学到。 目前打算还是回到结构方向发展,大家有什么建议吗?
听劝,我这个简历该怎么改...
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
从互联网“逃”到车企,我找到了理想工作!应届生选车企真香?
4360
2
...
一个三无废物985硕士的求救帖!Help
3704
3
...
秋招公司情报局,分享线索得牛币💰
3500
4
...
字节客户端一面
3297
5
...
两年后重看秋招——后悔选择读研,可到底该怎么做?
3261
6
...
月薪一万五,天天都喊苦
3227
7
...
京东26届秋招提前批offer
2728
8
...
手机厂工作一年了,给想进手机行业的兄弟们写点建议
2491
9
...
实习转正,要讲究天时地利人和
2332
10
...
技术不是唯一答案:计算机大学生的第一堂社会课
2305
创作者周榜
更多
正在热议
更多
#
如何提高实习转正率?
#
3925次浏览
75人参与
#
26届的你们有几段实习?
#
892次浏览
22人参与
#
你被哪些公司秒挂过?
#
3980次浏览
81人参与
#
第一份工作应该只看薪资吗
#
152273次浏览
1514人参与
#
大厂面试初体验
#
9358次浏览
63人参与
#
你想留在一线还是回老家?
#
48650次浏览
502人参与
#
你后悔自己读研吗?
#
3176次浏览
108人参与
#
你认为哪些项目算烂大街?
#
2045次浏览
57人参与
#
月薪多少能在一线城市生存
#
3925次浏览
99人参与
#
选完offer后,你后悔学本专业吗
#
47595次浏览
238人参与
#
离家近房租贵VS离家远但房租低,怎么选
#
9343次浏览
119人参与
#
当下环境,你会继续卷互联网,还是看其他行业机会
#
113666次浏览
792人参与
#
你以为的实习VS真实的实习
#
2160次浏览
43人参与
#
最难的技术面是哪家公司?
#
1678次浏览
25人参与
#
leader认为你工作不认真怎么办
#
31503次浏览
149人参与
#
妈妈治愈了你哪些脆皮时刻
#
29202次浏览
321人参与
#
如果公司给你放一天假,你会怎么度过?
#
17394次浏览
129人参与
#
如果公司降薪,你会跳槽吗?
#
79788次浏览
588人参与
#
如果可以,你希望哪个公司来捞你
#
102528次浏览
486人参与
#
三一重工求职进展汇总
#
15358次浏览
68人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务