网站人多怎么优化,wordpress 启用多站点,网页设计图片超链接,做游戏网站赚钱么大模型 RLHF 实战 大模型 RLHF 实战RLHF#xff1a;OpenAI独家绝技RLHF 的问题 DPO 直接偏好优化算法#xff1a;RLHF的替代算法公式 1 - 4#xff1a;KL散度下奖励的最大化目标使用 DPO 微调 Llama 2 RAIHF 大模型 RLHF 实战 RLHF#xff08;基于人类反馈的强化学习#… 大模型 RLHF 实战 大模型 RLHF 实战RLHFOpenAI独家绝技RLHF 的问题 DPO 直接偏好优化算法RLHF的替代算法公式 1 - 4KL散度下奖励的最大化目标使用 DPO 微调 Llama 2 RAIHF 大模型 RLHF 实战 RLHF基于人类反馈的强化学习分为 3 个阶段
预训练为了生成内容需要一个生成式的预训练语言模型如GPT还会引入微调帮助模型更好理解提示Prompts训练奖励函数通过对模型生成的结果人工标注反馈构造训练集用于训练奖励函数模拟人的奖励偏好强化学习定义策略第一阶段语言模型输入输出、动作空间词表token的排列组合、奖励函数第二阶段训练的对于同一个问题会同时送入原始模型、训练模型用奖励函数对俩者评分分数差值用于训练策略函数。
安利下面的工具支持主流模型ChatGLM系列、Baichuan系列、LLaMA系列、Qwen系列、Bloom https://github.com/littepan/LLaMA-Efficient-Tuning/blob/main/README_zh.md https://github.com/hiyouga/LLaMA-Factory
同时支持训练方法包括预训练(pre-training), 有监督微调sft和 RLHF微调方式均为 LoRA 或者 QLoRA、全参数。
按照ta的教程一步步操作即可。
RLHFOpenAI独家绝技
正在更新…
RLHF 的问题
RLHF 的替代有 2 种DPO、RAIHF。 RLHF从人类反馈中学习的强化学习 DPO直接偏好优化算法专门替代传统的基于奖励的 RL 方法。 RLHF 问题策略和价值函数迭代步骤相当复杂经验数据采集计算成本高。 改进DPO 是简化了 RLHF 步骤不需要对奖励函数进行复杂的工程设计但同时效果不比 RLHF 差。 RAIHFRLHF不再需要人类AI 实现标注自循环AI标注效果一样好。 RLHF 问题 成本高昂收集高质量人工反馈需要大量的时间和金钱资源RLHF通常使用数以万计的人类偏好标签样本效率低模型需要大量的人类反馈来学习和改进其行为人类偏见模型可能会学习并放大人类评估者的偏见一致性问题不同人评估给出不一致的反馈导致模型训练中的不确定性可扩展性问题对于非常复杂的任务或环境难以获得足够的人类反馈来训练模型 改进RAIHF 是通过 AI 排序而非人工排序数据集训练出来的偏好模型PM的指引下迭代模型策略。
DPO 直接偏好优化算法RLHF的替代算法 论文地址https://arxiv.org/abs/2305.18290 作者在训练 DPO 模型时省略了奖励模型训练的步骤而是通过设计一种包含正负样本对比的损失函数在训练过程中得到一个满足人类偏好的模型。
你的语言模型其实是一个奖励模型不训练奖励模型语言模型直接做偏好优化学习你的偏好满足你的偏好
这种方法在文本总结和单轮对话任务上提高了生成结果的质量。
正样本和负样本的对比使得模型能够更好地学习到人类偏好的特征从而提升了生成的质量。
RLHF、DPO 差异 左右两边最大的区别就是有没有reward model (RM)。
DPO 是将配给 RW 的训练融合在 final LM 里面LLM本身即是RM。
公式 1 - 4KL散度下奖励的最大化目标 p ∗ ( y 1 ≻ y 2 ∣ x ) exp ( r ∗ ( x , y 1 ) ) exp ( r ∗ ( x , y 1 ) ) exp ( r ∗ ( x , y 2 ) ) p^*(y_1\succ y_2\mid x)\frac{\exp\left(r^*(x,y_1)\right)}{\exp\left(r^*(x,y_1)\right)\exp\left(r^*(x,y_2)\right)} p∗(y1≻y2∣x)exp(r∗(x,y1))exp(r∗(x,y2))exp(r∗(x,y1))
人类偏好分布 p ∗ p* p∗模型会生成问答对会呈现给人类标注者并让他们给出一个答案偏好 y 1 y 2 ∣ x y_{1}y_{2} | x y1y2∣x y 1 y 2 y_{1}y_{2} y1y2更好的答案假设这些偏好是由某个潜在的奖励模型 r ∗ ( x , y 1 ) r^*(x,y_1) r∗(x,y1) 生成
建立奖励模型对其参数做最大似然估计从而将问题转换为二分类问题同时使用负对数做似然损失 L R ( r ϕ , D ) − E ( x , y w , y l ) ∼ D [ log σ ( r ϕ ( x , y w ) − r ϕ ( x , y l ) ) ] \mathcal{L}_{R}(r_{\phi},\mathcal{D})-\mathbb{E}_{(x,y_{w},y_{l})\sim\mathcal{D}}\big[\log\sigma(r_{\phi}(x,y_{w})-r_{\phi}(x,y_{l}))\big] LR(rϕ,D)−E(x,yw,yl)∼D[logσ(rϕ(x,yw)−rϕ(x,yl))]
目标函数使用学到的奖励函数来为语言模型提供反馈 max π θ E x ∼ D , y ∼ π θ ( y ∣ x ) [ r ϕ ( x , y ) ] − β D K L [ π θ ( y ∣ x ) ∣ ∣ π r e f ( y ∣ x ) ] \max_{\pi_\theta}\mathbb{E}_{x\sim\mathcal{D},y\sim\pi_\theta(y|x)}\big[r_\phi(x,y)\big]-\beta\mathbb{D}_{\mathbf{KL}}\big[\pi_\theta(y\mid x)||\pi_{\mathbf{ref}}(y\mid x)\big] maxπθEx∼D,y∼πθ(y∣x)[rϕ(x,y)]−βDKL[πθ(y∣x)∣∣πref(y∣x)]
推导上式得到 π r ( y ∣ x ) 1 Z ( x ) π r e f ( y ∣ x ) exp ( 1 β r ( x , y ) ) \pi_r(y\mid x)\frac1{Z(x)}\pi_{\mathrm{ref}}(y\mid x)\exp\left(\frac1\beta r(x,y)\right) πr(y∣x)Z(x)1πref(y∣x)exp(β1r(x,y))
上述就是论文 1 - 4 的推导结果。
这个公式是从一个最大化目标函数出发来推导的其中包含了两个部分模型预期奖励的最大化以及KL散度的一个约束项。
KL散度是衡量两个概率分布之间差异的一个指标在这里用于限制学习到的策略 π θ \pi_\theta πθ 与参考策略 π r e f \pi_{\mathrm{ref}} πref 之间的差异。
目标函数可以分解为两部分 max π θ E x ∼ D , y ∼ π θ ( y ∣ x ) [ r ϕ ( x , y ) ] \max_{\pi_\theta}\mathbb{E}_{x\sim\mathcal{D},y\sim\pi_\theta(y|x)}\big[r_\phi(x,y)\big] maxπθEx∼D,y∼πθ(y∣x)[rϕ(x,y)] 这部分表示模型试图最大化预期奖励也就是在给定输入 x x x 的情况下通过策略 π θ \pi_\theta πθ 生成答案 y y y 来获得尽可能高的奖励 r ϕ ( x , y ) r_\phi(x,y) rϕ(x,y)。 − β D K L [ π θ ( y ∣ x ) ∣ ∣ π r e f ( y ∣ x ) ] -\beta\mathbb{D}_{\mathbf{KL}}\big[\pi_\theta(y\mid x)||\pi_{\mathbf{ref}}(y\mid x)\big] −βDKL[πθ(y∣x)∣∣πref(y∣x)] 这部分表示有一个正则化项通过KL散度来限制策略 π θ \pi_\theta πθ 不能偏离参考策略 π r e f \pi_{\mathrm{ref}} πref 太远。 β \beta β 是一个正的权衡系数决定了对偏离的惩罚程度。
目标函数最大而公式 3 是相减就意味着 − β D K L [ π θ ( y ∣ x ) ∣ ∣ π r e f ( y ∣ x ) ] -\beta\mathbb{D}_{\mathbf{KL}}\big[\pi_\theta(y\mid x)||\pi_{\mathbf{ref}}(y\mid x)\big] −βDKL[πθ(y∣x)∣∣πref(y∣x)] 要最小。
而要从这个目标函数推导出策略 π r ( y ∣ x ) \pi_r(y\mid x) πr(y∣x) 的表达式我们需要用到拉格朗日乘子法来处理带有约束的优化问题。拉格朗日乘子法可以帮助我们求解在某些约束条件下的最优化问题。
在这种情况下想要的是一个新的策略 π r ( y ∣ x ) \pi_r(y\mid x) πr(y∣x)不仅能最大化奖励还要满足对参考策略 π r e f ( y ∣ x ) \pi_{\mathrm{ref}}(y\mid x) πref(y∣x) 的约束。
为了解这个带约束的优化问题可以构建一个拉格朗日函数 L ( π θ ) E x ∼ D , y ∼ π θ ( y ∣ x ) [ r ϕ ( x , y ) ] − β D K L [ π θ ( y ∣ x ) ∣ ∣ π r e f ( y ∣ x ) ] \mathcal{L}(\pi_\theta) \mathbb{E}_{x\sim\mathcal{D},y\sim\pi_\theta(y|x)}\big[r_\phi(x,y)\big] - \beta \mathbb{D}_{\mathbf{KL}}\big[\pi_\theta(y\mid x)||\pi_{\mathbf{ref}}(y\mid x)\big] L(πθ)Ex∼D,y∼πθ(y∣x)[rϕ(x,y)]−βDKL[πθ(y∣x)∣∣πref(y∣x)]
对这个函数求解最优策略 π θ \pi_\theta πθ 的表达式时会发现最优策略具有如下形式
公式 3 到 公式 4 的详细推导https://zhuanlan.zhihu.com/p/644911957 π r ( y ∣ x ) 1 Z ( x ) π r e f ( y ∣ x ) exp ( 1 β r ϕ ( x , y ) ) \pi_r(y\mid x) \frac{1}{Z(x)}\pi_{\mathrm{ref}}(y\mid x) \exp\left(\frac{1}{\beta}r_\phi(x,y)\right) πr(y∣x)Z(x)1πref(y∣x)exp(β1rϕ(x,y))
这里的 Z ( x ) Z(x) Z(x) 是规范化因子相当于做了归一化取值 0-1确保 π r ( y ∣ x ) \pi_r(y\mid x) πr(y∣x) 是一个有效的概率分布。
这个推导使用了变分原理其中 π r ( y ∣ x ) \pi_r(y\mid x) πr(y∣x) 是 π θ ( y ∣ x ) \pi_\theta(y\mid x) πθ(y∣x) 的一个特殊形式它使得拉格朗日函数 L ( π θ ) \mathcal{L}(\pi_\theta) L(πθ) 被最大化。
意思是可以通过一个加权的参考策略来构造一个新的策略该策略会偏向于高奖励的行为同时保持与参考策略的相似性。
权重由奖励函数和温度参数 β \beta β 共同决定。
正在更新…
使用 DPO 微调 Llama 2
请猛击https://github.com/huggingface/blog/blob/main/zh/dpo-trl.md
RAIHF