首页 > 教程攻略 > ai资讯 >RLHF 是如何工作的?

RLHF 是如何工作的?

来源:互联网 时间:2026-05-30 21:52:16

在机器学习领域,基于人类反馈的强化学习(RLHF)正变得越来越重要。简单来说,它是一种让机器学习模型通过人类指导来优化自身的新方法。传统的强化学习训练软件做出能最大化回报的决策,而RLHF则更进一步——它把人类的反馈直接融入奖励机制,让模型产出的结果更能贴合我们的真实需求与期望。今天,大语言模型和各类生成式AI应用背后,几乎都有RLHF的影子。

那么,这套流程具体是如何运作的?我们可以把它拆解成两大阶段来看:先是训练一个“奖励模型”,然后利用这个模型去微调“大语言模型”。

第一步:训练一个懂“好坏”的奖励模型

这个阶段的目的是让模型学会判断什么样的输出是好的,什么样的不好。具体步骤如下:

1. 给定基础与偏好

我们给奖励模型准备两组“提示+下一个词”的候选组合。然后,需要人工去审查这两组词并选出“赢家”。举个例子,在“文档是,他”和“文档是,他们”这两组中,前者可能因为带有性别歧视的倾向而被判为“输家”。

RLHF 是如何工作的?

2. 输入并计算奖励

接下来,我们将选定的词组输入奖励模型,模型会经历一个标准的推理流程来计算它的奖励分数:

3. 词嵌入:

首先,把词组中的每个词转换成计算机能理解的向量。

4. 线性层:

这个向量会与模型内部的权重矩阵相乘,得到一个特征向量。

5. 平均池化:

接着,对特征向量进行平均池化,得到一个能代表整个句子的“句子嵌入向量”。

6. 输出层:

最后,这个句子向量再经过一个线性层,映射成一个标量数值——也就是最终的奖励分数。

7-9. 对比与优化

模型会对“赢家”和“输家”分别计算出奖励分数。比如输家得了3分,赢家得了5分。奖励模型的核心目标是让赢家和输家的奖励差距尽可能大,并且是正数(这里是5-3=2)。这个差距会被映射为一个概率(比如0.9),然后与真实目标(我们希望这个差距最大化,所以目标设为1)进行比较,计算出损失梯度(0.9-1 = -0.1)。通过反向传播,模型会更新自己的权重,让它下一次的判断更精准。

第二步:用奖励模型来微调大语言模型

有了一个能判断好坏的标准(奖励模型)之后,就可以用它来指导和调整大语言模型本身了。

10-13. 语言模型的常规生成

首先,我们需要向大语言模型输入一个从未直接获得过人类反馈的提示(记得加上特殊的开始符号)。这个提示经过模型的Transformer网络,其内部的注意力机制和前馈网络会生成转换后的特征向量。接着,通过一个线性层将这些向量映射到词汇表上的概率分布,最后用贪婪算法(选择概率最高的词)来采样出下一个词。在这个例子中,模型准确地预测了前两个位置,但在第三个位置预测了“him”(他)。

14-15. 用奖励模型评估并指导更新

现在,把模型刚刚生成的新词组(比如“CEO 是, him”)输入到我们已经训练好的奖励模型中,重复之前的步骤,给它打一个分数。假设这次得了3分。

关键一步来了:损失函数被设定为奖励分数的负值。奖励越低,损失就越大。所以,我们得到的损失梯度是一个-1的常数。最后,运行反向传播和梯度下降,根据这个损失来更新大语言模型内部的权重和偏差(图中用红色边框标示的部分)。

这样一来,下一次遇到类似的提示,大语言模型就会倾向于生成那些能让奖励模型给出更高分数的、更符合人类偏好的输出。整个过程就像一个老师(奖励模型)不断给一个学生(语言模型)的作业打分,学生则根据分数来调整自己的学习方法,越学越好。

相关下载