老字号“味觉楼”的师父收了个天赋极高但口味全无的学徒——它能在几分钟内背下全部菜谱,却根本不知道糖盐几许才算入味。为了让学徒出师,师父定下规矩:学徒每次端上两道候选菜肴,师父只尝一口,指出更喜欢哪道。日复一日,师父的偏好被一名“品鉴师助理”总结成一套打分规则;学徒则照着分数不断调整火候与调味,最终把“师父的舌头”装进自己心里。这套“师父试菜—助理打分—学徒改进”的闭环,就是 AI 领域所说的偏好学习(Preference Learning)。 大模型会写诗、能编程,但它不知道人类到底喜欢什么、厌恶什么。偏好学习就是让 AI 从人类的比较和评价中学会价值取向,是 AI 对齐(让 AI 的目标与人类一致)的核心技术。这篇文章会按“为什么需要—怎么收集数据—怎么训练偏好模型—怎么用奖励信号优化策略—数据质量的影响—如何评估与应对挑战”六步,带你走完从人类反馈到偏好学习的完整链路。

岗位关联

学会偏好学习,你就掌握了让大模型听话、安全、符合人类价值观的关键方法——这是 AI 对齐、安全研究与价值微调从业者的核心技能。

目录
  1. 可视化演示
  2. 概念定位:为什么要给 AI 装“舌头”
  3. 采集偏好数据:记下师父的每一次评价
  4. 训练偏好模型:把师父的舌头变成打分器
  5. RLHF 策略优化:学徒照着分数练手
  6. 数据质量影响:师父的评语不能飘忽不定
  7. 评估与挑战:怎么知道学徒真的出师了
  8. AI 应用场景
  9. Python 演示
  10. 常见误区
  11. 面试题

可视化演示

展示AI偏好学习三步骤:人类反馈收集A/B对比→偏好模型训练→引导AI行为对齐人类价值观。

本节配有交互动效(进入视口后自动加载,约 3KB)。

人类反馈:A/B偏好比较 人类标注者对比两个AI输出选择更优者 偏好数据质量直接影响最终对齐效果 三步流程构建从人类反馈到AI对齐的完整链路

概念定位:为什么要给 AI 装“舌头”

学徒背得下三千道菜谱,却分不清酸甜苦辣的分寸。它缺少的不是知识,而是对“什么算好味道”的判断力。大模型其实也一样:它可以准确写出一份周报,却不知道用户要的是简洁还是详细;它能把事实堆砌成段落,却不知道哪种表达让人舒服。这种“模型拼命完成目标,目标却不是人类想要的”的错位,就是 AI 对齐问题。

人类的价值取向很难写成公式,但我们可以通过人类反馈来传递:让人类对模型的多个输出进行比较、排序、打分,把这些信号变成模型可以学习的数据。偏好学习要解决的核心问题,就是让模型从这些反馈中学会一条“隐藏的评分规则”——就像品鉴师助理从师父的点头摇头中,总结出“什么叫做得好”。

假设人类心中有一条看不见的理想口味函数 $r^{*}$,它给每个回答打一个真实分数。只要被喜欢(y_w)的回答分数高于被嫌弃(y_l)的回答,我们的任务就是把这个函数还原出来:

所以说到底,偏好学习的第一步不是写算法,而是建立信念:师父的每一次评价背后都有统一的口味逻辑,值得被认真记录和学习。

yw≻yl  ⟺  r∗(x,yw)>r∗(x,yl)\displaystyle y_w \succ y_l \;\Longleftrightarrow\; r^{*}(x, y_w) > r^{*}(x, y_l)
这句话的意思是:人类的每次偏好判断,都隐含着“赢家得分更高”的规律。偏好学习就是通过大量这样的判断,把隐藏规律挖出来。
  1. 胜者符号 y_w两个候选回答里,人类更喜欢的那个,称为胜者(winner)。
    ywy_w
  2. 败者符号 y_l与胜者配对的、人类不太喜欢的那个回答。
    yly_l
  3. 偏好关系用“胜过”符号连接二者,代表一次实实在在的人类偏好判断。
    yw≻yly_w \succ y_l
  4. 理想口味函数假设人类心中存在一条隐藏的评分曲线,好回答分数高、坏回答分数低。
    r∗(x,yw)>r∗(x,yl)r^{*}(x, y_w) > r^{*}(x, y_l)

采集偏好数据:记下师父的每一次评价

学徒开始随身带一本小册子,师父每试一道菜,它就记下“这次端上的两道菜分别是什么、师父夸了哪道、嫌弃了哪道”。这样的记录积累起来,就是教学的第一手素材。AI 里的对应物叫偏好数据:人工智能研究者不直接问“你给这个回答打几分”,而是给标注员两个回答,问“你更喜欢哪一个”。

为什么用“二选一”而不是打分?因为人类在做相对比较时直觉非常稳定——就像你能轻松说出“这道菜比那道咸”,却很难给出“咸度 6.7 分”这种绝对评分。因此主流的偏好数据以成对比较为单位组成三元组:一个提示词 x,配上被喜欢的回答 y_w 和被嫌弃的回答 y_l。把这些三元组汇总成数据集:

师父的每一次“皱眉”与“点头”,都被封装成一个数据点。数据要够多,口味才全面;要覆盖不同人群,口味才不偏科。这本“评价小册子”的质量,直接决定了后面所有环节的上限。

D={(x(i),  yw(i),  yl(i))∣i=1,2,…,N}\displaystyle \mathcal{D} = \left\{ \left(x^{(i)},\; y_w^{(i)},\; y_l^{(i)}\right) \mid i = 1, 2, \dots, N \right\}
这就是偏好学习的数据格式:N 条“问题 + 好回答 + 坏回答”的记录。整篇文章讲的训练,都建立在这种数据结构之上。
  1. 输入提示词 x用户提出的问题或任务描述,比如“帮我写一封请假邮件”。
    x(i)x^{(i)}
  2. 优选回答 y_w第 i 条数据里,标注员认为更好的那个回答。
    yw(i)y_w^{(i)}
  3. 劣选回答 y_l同一问题下被比下去的那个回答,作为反面样本。
    yl(i)y_l^{(i)}
  4. 数据集汇总把 N 条三元组装进一个集合,构成训练用的偏好数据池。
    D={(x(i),yw(i),yl(i))}i=1N\mathcal{D} = \left\{ (x^{(i)}, y_w^{(i)}, y_l^{(i)}) \right\}_{i=1}^{N}

训练偏好模型:把师父的舌头变成打分器

小册子越来越厚,学徒一个人翻不过来,于是味觉楼请来一位品鉴师助理:它天天翻阅师父的评价记录,慢慢学会了“看色、闻香、尝味”——给它任何一道新菜,它都能打出一个分数,预测师父会多喜欢。在 AI 里,这位助理就叫奖励模型(Reward Model),也叫偏好模型。

奖励模型通常由一个大语言模型底座加上一个打分层构成:输入“提示词 + 候选回答”,输出一个标量分数。训练它时,我们借助经典的布拉德利-特里(Bradley-Terry)模型,把“师父更喜欢 y_w 而不是 y_l”转成一个二分类问题:两者分数差越大,y_w 被选择的概率就越接近 1。训练的损失函数如下:

助理不是死记师父说过的话,而是归纳出一套可迁移的打分本能——新菜没见过,它也能估出师父会喜欢几分。这就是偏好模型的价值所在。

L(θ)=− E(x,yw,yl)∼D[log⁡σ ⁣(rθ(x,yw)−rθ(x,yl))]\displaystyle \mathcal{L}(\theta) = -\, \mathbb{E}_{(x, y_w, y_l) \sim \mathcal{D}} \left[ \log \sigma\!\left( r_\theta(x, y_w) - r_\theta(x, y_l) \right) \right]
通俗地说:模型对“该赢的回答”给分越高、对“该输的回答”给分越低,损失就越小。训练就是不断调整参数,让分数差尽量符合师父的评价。
  1. 奖励模型 rθ带参数 θ 的打分网络,输入“问题 + 回答”,输出一个分数。
    rθ(x,y)r_\theta(x, y)
  2. 得分差胜者分数减去败者分数,差越大说明模型越能区分好坏。
    d=rθ(x,yw)−rθ(x,yl)d = r_\theta(x, y_w) - r_\theta(x, y_l)
  3. Sigmoid 映射把得分差压到 0 到 1 之间,解释成“人类选择 y_w 的概率”。
    σ(d)=11+e−d\sigma(d) = \frac{1}{1 + e^{-d}}
  4. 对数概率取对数后,一旦模型给赢家打了低分,损失会被剧烈放大。
    log⁡σ(d)\log \sigma(d)
  5. 期望与负号对所有偏好样本求平均并取负号,等价于最小化交叉熵损失。
    − E[log⁡σ(d)]\displaystyle -\,\mathbb{E}\left[ \log \sigma(d) \right]

RLHF 策略优化:学徒照着分数练手

有了品鉴师助理,学徒的练法升级了:它每做一道新菜,先请助理打分,分数低就调整火候和调料,再做、再打分、再改进。这个“用分数引导行为改进”的过程,在 AI 里叫 RLHF(Reinforcement Learning from Human Feedback,基于人类反馈的强化学习)。被优化的对话模型被称为策略模型。

这里藏着两个关键点。第一,策略模型要不断生成回答、请奖励模型打分、再按分数更新参数,慢慢提高“平均得分”;第二,不能只盯着分数——如果学徒为了讨好助理疯狂加糖,做的菜就全变味了。于是我们需要一条KL 约束,让更新后的策略不要偏离参考模型(微调后的底座)太远,守住基本的语言能力和章法。RLHF 的整体目标写作:

学徒的成长不是靠背诵师父的点评,而是在分数引导下主动探索新做法,同时不忘基本功。守住章法、追求口味,这两者缺一不可。

max⁡θ  Ex∼D, y∼πθ(⋅∣x)[rθ(x,y)]−β KL ⁣[πθ(⋅∣x)  ∥  πref(⋅∣x)]\displaystyle \max_{\theta}\; \mathbb{E}_{x \sim \mathcal{D},\, y \sim \pi_\theta(\cdot|x)} \left[ r_\theta(x, y) \right] - \beta\, \mathrm{KL}\!\left[ \pi_\theta(\cdot|x) \;\|\; \pi_{\mathrm{ref}}(\cdot|x) \right]
这个公式有两个目标:一是让策略生成的回答获得更高奖励分数,二是用 KL 惩罚防止策略乱跑。β 控制两者的平衡。
  1. 策略模型 πθ当前正在训练、负责生成回答的大模型。
    πθ(y∣x)\pi_\theta(y \mid x)
  2. 奖励期望对策略生成的回答计算奖励分数的平均值,分数越高越好。
    Ey∼πθ(⋅∣x)[rθ(x,y)]\mathbb{E}_{y \sim \pi_\theta(\cdot|x)} \left[ r_\theta(x, y) \right]
  3. KL 散度衡量当前策略与参考模型输出分布的差异,差异过大代表“跑偏”。
    KL ⁣[πθ(⋅∣x)  ∥  πref(⋅∣x)]\mathrm{KL}\!\left[ \pi_\theta(\cdot|x) \;\|\; \pi_{\mathrm{ref}}(\cdot|x) \right]
  4. 权衡系数 β一个超参数,β 越大越保守,越小越激进。
    β\beta
  5. 完整目标最大化“奖励期望 − β 倍的 KL 惩罚”,两边互相制衡。
    max⁡θ  E[rθ]−β KL[πθ∥πref]\displaystyle \max_\theta \; \mathbb{E}[r_\theta] - \beta\, \mathrm{KL}[\pi_\theta \| \pi_{\mathrm{ref}}]

数据质量影响:师父的评语不能飘忽不定

教学进行到一半,问题出现了:师父有时心情不好,随手乱指;有时又只顾自己家乡口味,完全不顾外地客人的喜好。学徒和品鉴师助理一旦被这些糊涂评语带偏,整个学习都会走向错误方向。这就是数据质量问题——它是偏好学习的生命线。

标注噪声是第一个威胁:标注员可能偷懒、误解指令,或者本身就看法不一。假设一份偏好数据有 ε 比例的比较结果是完全标反的,那么数据里真正有效的信息会急剧缩水。经典的噪声理论给出一个直观结论:

所以质量比数量更值得优先投入:培训标注员统一标准、用多人标注互相校验、对低一致性样本重新标注、按人群分层采样保证多样性。师父的舌头必须稳定、公正、见多识广——这比单纯让师父多评几百次重要得多。

Neff≈(1−2ε)2 N\displaystyle N_{\mathrm{eff}} \approx (1 - 2\varepsilon)^{2}\, N
意思是:当噪声率 ε 为 10% 时,一万条数据只相当于约 6400 条干净数据;当 ε 达到 50% 时,数据完全失去信息价值。
  1. 噪声比例 ε标注员把“喜欢/不喜欢”记反的概率。
    ε\varepsilon
  2. 原始样本量 N总共收集到的偏好三元组数量。
    NN
  3. 平方系数噪声以平方速度侵蚀信息,说明早期噪声就已非常致命。
    (1−2ε)2(1 - 2\varepsilon)^{2}
  4. 有效样本量扣除噪声影响后,真正能帮助模型学习的样本数量。
    Neff≈(1−2ε)2 NN_{\mathrm{eff}} \approx (1 - 2\varepsilon)^{2}\, N

评估与挑战:怎么知道学徒真的出师了

终于到了出师考那天。味觉楼请来一群老饕,不看分数、不看推荐,纯凭舌头盲测学徒与老师傅各自做的菜,投票判定谁更胜一筹。AI 评估也不例外:奖励模型的分数只是练功房里的镜子,最终必须用新的人类盲测来验收。

对奖励模型,我们可以在预留的人类偏好数据集上计算排序准确率;对最终策略模型,我们做人类盲测,统计它打败参考模型的胜率(WinRate):

评估带出一个重要警告:过度优化(奖励黑客)。当策略发现某些取巧话术能刷高奖励分数,它可能一路狂奔,导致“分数持续上升、人类满意度反而下降”。对策是早停、加大 KL 约束,并用红队测试主动寻找模型的漏洞。分数会骗人,但老饕的舌头不会——最终试卷永远握在人类手里。

WinRate(πθ)=1M∑j=1MI[humanj prefers πθ over πref]\displaystyle \mathrm{WinRate}(\pi_\theta) = \frac{1}{M}\sum_{j=1}^{M} \mathbb{I}\left[ \text{human}_{j}\ \text{prefers}\ \pi_\theta\ \text{over}\ \pi_{\mathrm{ref}} \right]
胜率就是 M 轮盲测中,人类觉得新模型回答更好的比例。它是比奖励分数更可信的对齐指标。
  1. 待评估策略 πθ经过偏好学习训练后的新模型。
    πθ\pi_\theta
  2. 参考策略 πref用作对比基准的旧模型,通常是微调后的底座。
    πref\pi_{\mathrm{ref}}
  3. 指示函数当人类盲测中更喜欢新模型时记 1,否则记 0。
    I[human prefers πθ]\mathbb{I}\left[\text{human prefers } \pi_\theta\right]
  4. 平均胜率M 轮盲测中取平均,得到新模型的胜出比例。
    1M∑j=1MI[⋅]\frac{1}{M}\sum_{j=1}^{M} \mathbb{I}\left[\cdot\right]

AI 应用场景

大模型对话助手的价值微调

阶段:模型对齐训练(RLHF 阶段)

解决的问题:指令微调后的模型虽然“会回答”,但不够懂人情世故——有时啰嗦、有时冒犯、有时编造。利用人工标注的成对偏好数据训练奖励模型,再用奖励信号做强化学习,相当于让“品鉴师助理”手把手教“学徒”改进说话方式。

具体案例:某对话助手团队每一期迭代都组织数百名标注员对“同一问题的两个回答”投票,积累数万条成对偏好数据,训练奖励模型并做 RLHF。上线后盲测胜率比上一版本提升 12%,“有用无害”的评判率明显上升。

众包平台的偏好数据生产线

阶段:数据采集与质量控制

解决的问题:偏好数据是炼丹的原料,但噪声会毒害模型。平台通过一致性检验和多人投票,筛掉“师父糊涂评语”,保证进入训练集的每条数据都经得起推敲。

具体案例:某数据公司搭建标注平台,标注员以成对比较方式答题;系统实时计算标注员之间的一致性,低于阈值的题目自动转入专家复核。经过清洗,最终约 92% 的样本通过质检,训练出的奖励模型排序准确率提高 8 个百分点。

大模型安全红队与对齐评测

阶段:评估与安全

解决的问题:奖励模型分数虚高不等于真的安全。安全团队用对抗性 prompt 攻击模型,用人类盲测检验“偏好学习到底有没有把价值观学到家”。

具体案例:某安全团队构造了 2000 条诱导性 prompt(如诱导泄露隐私、输出歧视言论),对比有无偏好学习的两个模型。结果显示,经过偏好学习的模型被攻破率下降约 60%,且越狱后也更少输出有害内容。

Python 演示

python64 行
import mathimport random  def sigmoid(z):    return 1.0 / (1.0 + math.exp(-z))  def reward(theta, x):    # 线性奖励模型: r(x) = theta0 + theta1 * x    return theta[0] + theta[1] * x  def make_preference_pairs(n=400, noise=0.15):    # 模拟师父评菜: q 是回答隐含的真实质量, 越大越被喜欢    pairs = []    for _ in range(n):        x1 = random.uniform(0, 1)        x2 = random.uniform(0, 1)        q1 = 2.0 * x1 + 0.3 * random.gauss(0, 1)        q2 = 2.0 * x2 + 0.3 * random.gauss(0, 1)        if q1 >= q2:            preferred, dispreferred = x1, x2        else:            preferred, dispreferred = x2, x1        # 师父偶尔看走眼: 以 noise 概率把比较结果记反        if random.random() < noise:            preferred, dispreferred = dispreferred, preferred        pairs.append((preferred, dispreferred))    return pairs  def train_reward_model(pairs, lr=0.2, epochs=60):    # 用布拉德利-特里损失(成对交叉熵)学习口味曲线    theta = [0.0, 0.0]    for _ in range(epochs):        grad = [0.0, 0.0]        for y_w, y_l in pairs:            delta = reward(theta, y_w) - reward(theta, y_l)            p = sigmoid(delta)            factor = 1.0 - p            grad[0] -= factor * 1.0            grad[1] -= factor * (y_w - y_l)        theta[0] -= lr * grad[0] / len(pairs)        theta[1] -= lr * grad[1] / len(pairs)    return theta  def main():    random.seed(42)    pairs = make_preference_pairs()    theta = train_reward_model(pairs)    print('学习的口味曲线: r(x) = %.2f + %.2f * x' % (theta[0], theta[1]))    pool = [random.uniform(0, 1) for _ in range(100)]    best = max(pool, key=lambda x: reward(theta, x))    avg_q = 2.0 * (sum(pool) / len(pool))    best_q = 2.0 * best    print('随机挑选答案的平均质量: %.3f' % avg_q)    print('按偏好模型挑选答案的质量: %.3f' % best_q)    print('提升幅度: %.2f%%' % ((best_q - avg_q) / avg_q * 100))  if __name__ == '__main__':    main()
目的:模拟“师父评菜”的成对偏好数据,用布拉德利-特里损失训练一个线性奖励模型,再让策略用学到的口味曲线从候选池里挑出最优答案。
  1. pairs.append((preferred, dispreferred))每一条偏好数据都把“被喜欢的回答”放在前面,构成 (y_w, y_l) 对。
  2. if random.random() < noise:以 15% 概率模拟标注噪声,让师父偶尔看走眼。
  3. preferred, dispreferred = dispreferred, preferred记反比较结果,给数据注入真实世界的噪声。
  4. p = sigmoid(delta)把得分差换算成“人类会选 y_w”的概率,供损失函数使用。
  5. grad[1] -= factor * (y_w - y_l)梯度下降更新口味曲线斜率:模型越自信,修正幅度越小。
  6. theta[0] -= lr * grad[0] / len(pairs)用全部样本的平均梯度更新偏置项。
  7. best = max(pool, key=lambda x: reward(theta, x))策略用学到的口味曲线,从 100 个候选答案里挑出得分最高者。

常见误区

误区我只要拼命收集成对比较数据,数量上去了,模型自然就学会人类偏好了。

正解数据量再大,如果噪声高、偏差重,学习效果反而会被污染。就像师父一半评语都是糊涂账,学徒记再厚也学不到真功夫。噪声率为 ε 时,有效样本量只剩 (1−2ε)² 倍——所以先把标注一致性做扎实,再谈规模。

为何常见:人容易凭直觉认为“数据多 = 信息多”,忽略了错误数据会稀释甚至扭曲原本正确的信号。

误区奖励模型给 9 分,说明这个回答一定很符合人类口味,可以放心上线。

正解分数只是代理指标,模型很可能会走捷径“刷分”——生成看似礼貌、实则空洞的话术来讨好分数。这叫过度优化(奖励黑客)。真正可靠的验收方式是拿新的人类盲测和红队测试,让“老饕的舌头”做最终裁判。

为何常见:把训练用的代理指标误当成了终极目标,忽略了训练分布与真实使用分布之间的差距。

误区偏好学习 = 让模型在“优质回答”上多微调几轮,和 SFT 没什么区别。

正解SFT 需要标准答案,学的是“答案长什么样”;偏好学习用相对比较信号(A 比 B 好),学的是“口味曲线”,并不依赖绝对标准答案。前者是照着菜谱做菜,后者是学会师父的味觉判断。

为何常见:两者确实都用人类产出的数据训练模型,但数据形态、目标函数和优化方式完全不同,初学者容易混为一谈。

误区打分更精确,索性让标注员直接给回答打 1 到 10 分。

正解人类的绝对评分极不稳定——同一道菜今天给 7 分、明天给 4 分;但“这两道菜哪道更好”的判断却非常稳定。成对比较符合人类认知直觉,标注一致性显著更高,这正是主流偏好数据采用“二选一”的原因。

为何常见:觉得数字更“客观”,忽略了人类评分的不可重复性和个体间尺度差异。

面试题

Q1. 偏好学习主要让模型学会什么?

单选题 · easy

  • A.让模型输出速度更快
  • B.让模型学会人类偏好← 正确答案
  • C.让模型参数量更少
  • D.让模型更节省显存资源

答案:B。偏好学习的核心目标是让模型从人类反馈中学会价值取向,相当于“把师父的舌头装进模型心里”。提速、减参、省显存都是工程优化目标,与价值对齐无关。

Q2. 人类偏好数据最常用的记录形式是?

单选题 · easy

  • A.成对比较两个回答← 正确答案
  • B.为回答编写注释说明
  • C.给回答做随机编号排序
  • D.用正则表达式筛选匹配

答案:A。主流偏好数据采用成对比较:给定提示词 x,标注员在 y_w 和 y_l 之间二选一。注释或正则都不能表达“哪个更好”的相对偏好,随机编号更是毫无信息量。

Q3. 奖励模型训练通常采用哪种目标函数?

单选题 · mid

  • A.布拉德利-特里模型← 正确答案
  • B.均方误差回归目标
  • C.余弦相似度对齐目标
  • D.词袋模型交叉熵目标

答案:A。布拉德利-特里模型把成对比较转成“得分差越大越可能被选择”的二分类问题,是训练奖励模型的标准做法。均方误差用于回归连续值,余弦相似度常用于表征对齐,均不匹配偏好数据的结构。

Q4. RLHF 中的 KL 约束主要目的是?

单选题 · mid

  • A.加快数据收集的速度
  • B.防止策略偏离参考太远← 正确答案
  • C.减少人类标注的成本
  • D.提高模型推理的吞吐量

答案:B。KL 散度度量当前策略与参考模型输出分布的差异,约束策略别为了刷分而走火入魔,守住语言能力和基本章法。它不涉及数据收集、标注成本或推理性能。

Q5. 当标注噪声率为 ε 时,有效样本量约为?

单选题 · mid

  • A.与噪声大小完全无关
  • B.(1−2ε)² 倍原始数量← 正确答案
  • C.随噪声线性缓慢增长
  • D.先快速增长后下降

答案:B。噪声理论给出有效样本量 Neff ≈ (1−2ε)²N。例如 ε=10% 时信息量只剩约 64%,说明早期噪声伤害就很大,质量优先于数量。

Q6. 偏好数据多样性不足最可能导致?

单选题 · mid

  • A.模型训练速度变慢
  • B.价值取向以偏概全← 正确答案
  • C.显卡显存占用过高
  • D.网络请求延迟变大

答案:B。如果偏好数据只来自单一群体,模型学到的“口味”就会偏向该群体,对其他用户不友好。数据多样性与训练速度、显存、网络延迟没有直接关系。

Q7. 奖励分数一路上升而人类满意度却在下降,称为什么?

单选题 · hard

  • A.奖励黑客过度优化← 正确答案
  • B.梯度消失训练失效
  • C.数据泄露样本污染
  • D.模型容量不够支撑

答案:A。这是典型的过度优化(reward hacking):策略找到取巧方式刷高奖励分数,却没有真正提升回答质量。对策是早停、加大 KL 约束,并用人类盲测和红队测试兜底。

Q8. 收集更高质量的偏好数据,正确做法包含?

多选题 · easy

  • A.培训标注员统一标准← 正确答案
  • B.统计标注者一致性← 正确答案
  • C.直接照搬公开题集
  • D.覆盖多元用户群体← 正确答案

答案:ABD。高质量偏好数据来源于标准化培训、一致性检验和多样性覆盖。直接照搬公开题集既无法保证任务匹配,也无法控制噪声水平,是错误的做法。

Q9. 关于奖励模型下列描述正确的有?

多选题 · mid

  • A.输入包含提示词与回答← 正确答案
  • B.输出一个标量分数← 正确答案
  • C.输出一段自然语言文本
  • D.从成对偏好中学习口味← 正确答案

答案:ABD。奖励模型以“提示词 + 回答”为输入,输出标量分数,而不是自然语言。它的口味完全来自成对偏好数据的训练,相当于“品鉴师助理”。

Q10. RLHF 完整流程通常包含哪些环节?

多选题 · hard

  • A.用偏好数据训练奖励模型← 正确答案
  • B.用策略采样生成候选回答← 正确答案
  • C.用奖励信号更新策略参数← 正确答案
  • D.彻底删除 SFT 基础模型

答案:ABC。RLHF 四步走:偏好数据训练奖励模型 → 策略采样生成回答 → 奖励模型打分 → 按信号更新策略。参考模型(SFT 底座)是 KL 约束的锚点,绝不能删除。