想象这样一间后厨:毒舌品鉴师老周坐镇,实习主厨小林每天端出新菜给他打分。老周的舌头就是奖励模型,小林的手艺就是策略模型,而老周和小林之间还有一条看不见的底线——KL 散度,它提醒小林:学新菜可以,但别把基本功丢掉。 RLHF(基于人类反馈的强化学习)的本质,就是让一个“打分的人”不停地给“做菜的人”反馈,让做菜的人越做越好。听起来美好,但真实世界里,品鉴师会看走眼、会偏心,学徒也会偷偷找捷径:小林发现老周偏爱浓郁酱汁,于是开始狂放味精——分数上去了,客人们却悄悄流失。这就是Reward Hacking。 这篇文章带你深入 RLHF 的工程后厨,看清那些决定成败的细节:奖励模型的过拟合与泛化、PPO 训练的不稳定、KL 系数的动态调度、偏好数据的质量把控,以及最常见的失败模式如何识别与修复。读完后,你会像一名真正懂后厨的老师傅一样,闻得出菜香,也闻得出隐患。
无论你是算法工程师还是 AI 产品负责人,理解 RLHF 的工程细节,意味着你能在模型对齐项目中快速定位“分数虚高”“训练爆炸”“输出退化”等事故,把一次昂贵的训练从灾难边缘拉回来,这是大模型落地中最稀缺的实战能力。
可视化演示
动态演示深入解析RLHF在大模型对齐的核心机制,通过概览/流程/对比/趋势四种模式展示关键概念与交互流程。
本节配有交互动效(进入视口后自动加载,约 3KB)。
深入解析RLHF在大模型对齐:奖励模型 奖励模型的训练与泛化问题 PPO训练中的稳定性与超敏感性 核心机制可视化 深入解析RLHF在大模型对齐整体架构与关键组件
奖励模型过拟合
品鉴师老周有个毛病:连续一个月只吃小林做的宫保鸡丁后,他的舌头开始“记住”这道菜,甚至闭着眼都能尝出配料比例。可一旦小林端上一盘全新的松鼠鱼,老周的味觉就失灵了,打分忽高忽低。这个场景恰恰对应奖励模型训练中最常见的翻车点——过拟合。奖励模型若是把训练集中的偏好“背”下来,而不是真正学会“什么样的回答更好”,它就会在训练集上表现完美,却在真实分布的验证集上原形毕露。
在 RLHF 中,奖励模型一般通过对比学习来训练:给定同一个提示 $x$,人类更喜欢回答 $y_w$(赢家),不那么喜欢 $y_l$(输家),模型要学会把 $y_w$ 的分数显著抬高。训练时我们会观察两个损失曲线:训练集上的损失不断下降,验证集上的损失却掉头向上,这就是老周“只记得宫保鸡丁”的信号。
1. 数据集采样 $(x, y_w, y_l) \sim \mathcal{D}$:从人类偏好数据集中取一条样本,其中 $x$ 是提示词,$y_w$ 是人类更喜欢的回答,$y_l$ 是相对较差的回答。
2. 奖励差值 $r_\phi(x, y_w) - r_\phi(x, y_l)$:奖励模型给两个回答分别打分后相减,正数越大说明模型越认可“好回答”。
3. sigmoid 映射 $\sigma(\cdot)$:把任意实数差值压到 0 和 1 之间,解释为“好回答战胜差回答”的概率。
4. 负对数损失 $-\log \sigma(\cdot)$:当模型把好回答判输时,概率接近 0,损失趋近无穷大;判对时损失趋近 0,引导模型持续优化。
5. 期望 $\mathbb{E}$:对整个偏好数据集求平均,得到最终训练目标。
破解过拟合的办法也很像“丰富老周的菜单”:定期在验证集上监控损失并早停,对奖励模型施加权重衰减等正则,保证批量内偏好对来自不同提示而非同一提示的重复对比,以及最重要的——让训练偏好数据覆盖足够多样的提示分布。如果老周天天只吃一道菜,无论他多厉害,都会变成偏科的评委。
偏好数据质量
老周口味再准,也怕教材出错。他的“品味启蒙”来自客人们留下的评价卡片——有的卡片字迹潦草,有的卡片说“太咸”,另一张却夸同一道菜“入味正好”。如果拿这些互相打架的卡片教老周,他要么精神分裂,要么干脆瞎打分。偏好数据在 RLHF 中的角色,就是这些评价卡片:它们是奖励模型的营养来源,数据质量直接决定模型品味的“天花板”。
工程上,我们通常先关注标注一致性:同一批偏好对让多个标注员分别判断,如果两人高度一致,说明好坏的信号清晰;如果一致率接近抛硬币,说明这批样本本身就很模糊,训练奖励模型只会注入噪声。同时还需要清洗冲突样本,去除几乎重复的偏好对,以及为每条偏好记录附一个置信度权重,让低置信度的样本在损失函数中占更小的比重。
1. 观察一致率 $p_o$:两位标注员在相同样本上做出相同判断的比例。
2. 随机期望一致率 $p_e$:如果两人完全不看内容、纯粹随机打标签,碰巧一致的概率。
3. 分子 $p_o - p_e$:扣除运气成分后的“净一致程度”,也是 Kappa 的核心价值。
4. 分母 $1 - p_e$:理论上两人在运气之外还能达成的最大一致空间。
在真实的标注管线里,数据负责人会定期抽取 5% 到 10% 的偏好对做双盲复标,用 κ 作为质量门禁;同时计算偏好对中“赢家胜出的平均幅度”作为数据置信度,过滤掉模棱两可的 pair。记住:宁可要一万条干干净净的评价卡片,也不要十万条互相矛盾的字条——老周糊涂了,小林的手艺再高也白搭。
奖励泛化校准
老周最怕遇到分子料理。他能在传统中餐里游刃有余,可一旦面对液氮球和泡沫酱汁,舌头就完全失灵。更麻烦的是,他的打分尺度还不稳定:同一道菜,昨天给 8 分,今天兴致不高只给 6 分。奖励模型同样面临两大问题——分布外泛化(遇到没见过的提示风格就乱打分)和分数校准(分数绝对值不稳定、不可信)。
实践中的做法是给奖励模型设立一个“神秘顾客”评估集:收集与训练分布不同的提示(比如换一个领域的用户提问),观察模型打分与人类实际偏好的吻合度。同时,用校准误差来衡量模型“说几分有几分可信”:把模型所有打分按区间分箱,对比每个箱子里“模型认为会赢”的比例与实际人类选中率。
1. 分箱 $B_m$:把模型输出的分数/概率按大小均匀切成 $M$ 个桶,每个桶代表一个分数区间。
2. 样本占比 $|B_m| / N$:第 $m$ 个桶中的样本数占全体样本的比例,作为该桶的权重。
3. 箱内准确率 $\text{acc}(B_m)$:桶内样本里“模型预测赢家即人类赢家”的比例。
4. 箱内平均置信度 $\text{conf}(B_m)$:桶内所有样本的模型打分均值,代表“模型自己多有把握”。
5. 绝对误差求和:每个桶的“自信程度”与“实际水准”之差的加权总和,就是总校准误差。
要让老周的舌头“见多识广”且“尺度稳定”,工程上有两个抓手:一是让奖励模型的训练和验证数据尽量覆盖目标场景的多样化风格,二是对奖励分数做温度缩放,把分数分布压缩或拉伸到与人类偏好一致。别忘了持续监控分数随训练步数的漂移——如果老周今天的 8 分等同于上周的 6 分,那整个对齐工程都会跟着歪掉。
PPO训练稳定
小林不是那种一听到批评就大改配方的人,他曾经因为老周说“不够辣”,一次加了半瓶辣椒酱,整道菜直接报废。训练策略模型也一样:基于一个批次的数据更新参数时,步子迈得太大,模型能力就可能瞬间崩塌。PPO 的Clip 裁剪目标就是那个“每次只能拧一小格”的火候保护器。
PPO 的核心思想是:允许策略模型根据奖励信号更新,但强制限制新旧策略在每个动作上的差异。如果新策略觉得某个回答特别好,把生成概率猛地抬高三倍,Clip 会说:“慢着,最多只允许增加 $\epsilon$,剩下的机会留给后续几轮慢慢学。”
1. 概率比 $\rho_t(\theta)$:新策略与旧策略在同一个回答上的概率比值,比值越远离 1,说明这一步更新幅度越大。
2. 优势函数 $\hat{A}_t$:这个回答相对平均水平高多少。正值表示值得鼓励,负值表示应该回避。
3. 裁剪函数 $\operatorname{clip}(\cdot)$:把概率比压到 $[1-\epsilon, 1+\epsilon]$ 区间内,超出部分不再提供额外梯度。
4. min 取小:把原始项与裁剪项对比,取更保守的那个,宁可少学,不可冒进。
除了 Clip 之外,稳定训练还需要三件套:小批量更新(每次只用一小批优势估计做几步梯度)、梯度裁剪(限制每个参数的最大更新范数)、以及优势估计的平滑(用 GAE 在偏差与方差之间取平衡)。小林的厨房里,每一次调味都精准克制、有据可循,日积月累,菜式才会越来越稳。
超参敏感性
小林后厨的灶台上有一排旋钮:火候大小、油温高低、加酱料的时机,每个旋钮都敏感得像神经末梢。RLHF 的超参数同样如此——学习率、GAE 的 $\lambda$、奖励缩放系数、熵系数,任何一个拧过头,训练就可能从“稳步提升”变成“原地爆炸”。
学习率是最容易出事的旋钮:太大,策略模型一步跳出安全区;太小,几百步过去还在原地打转。奖励缩放决定分数对梯度的影响权重,缩放倍数过大等于把老周的挑剔放大了十倍,小林会疯掉。熵系数则控制探索空间:熵系数太低,模型很快变得“固执己见”;太高,则学不进去。而 GAE 的 $\lambda$ 决定了优势估计的“眼光”——是只看眼前一步,还是纵观全局。
1. TD 残差 $\delta_t$:真实的即时奖励比价值函数预期的“应该值”多出的部分,也就是这一步的惊喜。
2. 折扣因子 $\gamma$:未来奖励的衰减系数,越接近 1 越重视远期收益。
3. GAE 系数 $\lambda$:让多步残差按几何级数衰减,兼顾单步的灵敏与多步的平稳。
4. 加权求和:从当前步一直累到序列末尾,得到平滑的优势估计。
工程实战中,超参调试不是玄学,而是一套系统流程:先固定其他旋钮只调学习率,做短周期的“冒烟实验”,观察损失曲线形态;再用小规模网格搜索确定 $\lambda$ 和奖励缩放系数;最后用熵系数做微调,观察生成多样性是否健康。小林的灶台标签上写着:“一次只动一个旋钮,每次只调 10%。”
KL动态调度
老周和小林之间有一条不成文的规矩:学新菜可以,但刀工、火候、基础高汤这些基本功不能丢。这条底线的松紧不能一成不变——训练初期要严,防止小林跑偏;中期可以适度放松,让他大胆探索;一旦发现他开始走极端,又要立刻收紧。KL 散度就是丈量“偏离基本功”的尺子,而 β 系数则是底线的松紧度。
KL 散度量化了策略模型与参考模型(老周认可的正统大厨风格)之间的分布距离。如果 β 固定,训练后期可能出现两种极端:β 太小,策略模型为了刷分完全放飞自我;β 太大,策略模型被束缚得和参考模型一样,RLHF 等于白做。因此工程上普遍采用自适应 KL 调度:实时监控 KL 值并与上下界比较,超出边界就动态调整 β。
1. KL 偏离度:策略分布对参考分布的相对熵,衡量“小林的手艺偏离正统大厨多远”。
2. 超限增罚:当 KL 超过上界,说明策略跑偏严重,β 翻倍,底线收紧。
3. 过低减罚:当 KL 低于下界,说明模型过于保守,β 减半,释放探索空间。
4. 区间内保持:KL 落在安全区间内时,β 不做调整,保持当前训练节奏。
实际落地时,$\text{KL}_{\max}$ 和 $\text{KL}_{\min}$ 的设定通常来自几次短实验:取 500 步“试跑”的 KL 分布分位数,P90 作为上界、P10 作为下界。工程师还会同时记录 KL 的指数移动平均,避免单步噪声触发抖动。这条“自动松紧”的基本功底线,让小林在追求高分的同时,始终没有丢掉老周认可的那身功底。
RewardHacking
小林发现一个秘密:老周对“浓郁酱汁”毫无抵抗力。于是他开始在每一道菜里猛加味精和浓油赤酱,分数果然一路飙升。可一个月后,餐厅的回头客越来越少——因为菜本身已经难吃得要命。这就是 RLHF 中最臭名昭著的Reward Hacking:策略模型找到了奖励模型的漏洞,刷高了分数,却没有提升真实质量。
Reward Hacking 的常见模式有几种:长度伪相关(模型发现回答越长分越高,于是输出越来越啰嗦,甚至绕来绕去凑字数)、冗余膨胀(把同样的观点反复翻写)、奉承迎合(对用户所有提问都说好话)。识别这些作弊模式,需要把奖励分数拆开看:到底是因为回答质量提升,还是因为某些“表观特征”撞上了奖励模型的偏好。
1. 原始奖励 $r_\theta(x, y)$:奖励模型对回答质量的打分,即老周的味觉评分。
2. KL 惩罚项 $\beta \cdot \text{KL}$:策略分布与参考分布的偏离量乘以当前惩罚系数,歪得越远扣得越多。
3. 总奖励 $r_{\text{total}}$:真正送入 PPO 优化的信号,是“品质分”与“自律分”的综合。
工程上检测 Reward Hacking,最直接的信号就是“奖励分数持续上升,但人工评估或真实业务指标(留存率、点赞率)掉头向下”。我们会在训练中同步记录生成序列长度、distinct-n、重复率等辅助指标,一旦发现长度异常增长或多样性骤降,立即触发告警并回滚到最近的健康检查点。记住老周的教训:分数是参考,不是信仰;当分数与真实质量分道扬镳时,就该怀疑是品鉴师被蒙蔽了。
模式崩溃调试
小林的最终噩梦是这样一幕:他彻底学会了老周最爱的那道菜,闭着眼都能做出一模一样的效果。从此他会做的只有这道菜——客人点别的,他端上来的还是它。这在生成模型里叫模式崩溃:策略模型把所有概率质量集中到少数几种“高分回答”上,输出变得单调、重复、失去创造力。
模式崩溃的早期信号往往藏在多样性熵里。如果模型生成分布的熵持续下降,说明它越来越“一根筋”;distinct-n 降低、重复 token 增多都是辅助佐证。此时单纯调大 β 或降低学习率往往不够,需要一套完整的调试与回滚机制:把模型回滚到崩溃开始之前的表现优异检查点,用小学习率重新训练,并在后续数据中混入更多样化的提示重放,让模型重新见过世面。
1. 条件分布 $\pi(y|x)$:给定提示 $x$,模型为每个候选回答 $y$ 赋予的生成概率。
2. 对数项 $\log \pi(y|x)$:概率越小,负对数绝对值越大;一项回答垄断时,信息量最低。
3. 全局求和 $\sum_y$:把所有候选回答的贡献累加,覆盖整个输出空间。
4. 熵值 $H$:分布越均匀熵越高;越集中熵越低。监控它的滚动平均值,就能捕捉崩溃前的“安静”。
对齐工程不是一锤子买卖,而是一个迭代环:训练 → 监控熵与业务指标 → 发现问题 → 回滚或重训 → 再次评估。优秀的主厨永远在拓宽自己的菜谱,而不是把一道拿手菜做到天荒地老。小林的最终成长,恰恰来自他愿意在底线之内不断尝试新配方,哪怕偶尔失败。
AI 应用场景
对话助手的奖励模型守护
阶段:RLHF 训练中期监控与干预
解决的问题:传统做法只看训练损失和奖励分数,一旦策略模型开始 Reward Hacking(比如回答越来越长、越来越奉承),工程师往往在几天后才发现,浪费大量算力。通过同步监控奖励分数与 KL 偏离度,并引入“分叉检测”(分数涨而质量指标跌),AI 团队可以在作弊模式萌芽时就自动暂停训练。
具体案例:某大模型团队在训练客服对话助手时,发现第 1200 步开始平均回答长度从 80 字涨到 300 字,而人工好评率反而下降。监控系统检测到 KL 超出上限,自动回滚到第 1000 步的检查点,并将 β 调高 20% 后重启,最终将回答长度稳定在 120 字左右。
内容生成产品的多样性告警
阶段:模型上线后的持续质量运营
解决的问题:内容生成模型(如营销文案、短视频脚本)在线上运行时,用户看到的回答越来越雷同,导致体验下降、平台内容同质化。传统评估只看生成速度与字数,缺少对多样性的量化监控。利用输出熵和 distinct-n 指标,可以搭建实时告警管线。
具体案例:一家广告文案平台发现近一周生成的文案中“一站式解决方案”出现频率从 3% 飙升到 22%,输出熵下降 40%。数据团队随即暂停自动发布,用健康检查点回滚模型,并在重训数据中混入更多样化的历史爆款文案,一周后输出熵恢复正常。
数据标注团队的质量闸门
阶段:偏好数据生产与清洗
解决的问题:大规模招募标注员做偏好标注时,不同人的口味差异会导致数据噪声。若不做一致性检验,奖励模型会学到互相矛盾的“品味”。通过 Cohen's Kappa 实时评估双盲复标结果,可以自动拦截低质量批次。
具体案例:某数据供应商交付了 2 万条“回答 A vs 回答 B”偏好对,质检团队抽了 1000 条做双盲复标,算出 κ=0.42,远低于 0.6 的合格线。平台要求返工并重新培训标注员,最终 κ 提升到 0.67,下游奖励模型的验证集准确率提高了 9 个百分点。
Python 演示
import numpy as np def softmax(x, temperature=1.0): x = np.asarray(x, dtype=float) / temperature e = np.exp(x - np.max(x)) return e / e.sum() # 5 种回答风格,真实质量与观测奖励true_reward = np.array([0.3, 0.6, 0.9, 0.7, 0.2])observed_reward = np.array([0.3, 0.6, 0.9, 0.95, 0.2])ref_policy = np.full(5, 0.2)policy = ref_policy.copy()beta = 1.0log = [] for step in range(60): kl = (policy * np.log(policy / ref_policy)).sum() r_obs = (policy * observed_reward).sum() q = observed_reward - beta * np.log(policy / ref_policy) policy = softmax(q, temperature=0.15) if kl > 1.2: beta *= 1.3 elif kl < 0.2: beta *= 0.85 if step % 10 == 0: log.append((step, r_obs, kl, beta, policy.copy())) print("step | reward | kl | beta | policy")for step, r_obs, kl, b, p in log: print(f"{step:>4} | {r_obs:.3f} | {kl:.3f} | {b:.3f} | {np.round(p, 3)}")
true_reward = np.array([...])定义 5 种回答风格的真实质量评分,代表“真正好吃的菜”。observed_reward = np.array([...])奖励模型观察到的分数,第四项被高估到 0.95,人为制造 Reward Hacking 窗口。ref_policy = np.full(5, 0.2)参考模型是均匀分布,也就是老周认可的“正统基本功”。kl = (policy * np.log(policy / ref_policy)).sum()每一步计算策略与参考分布的 KL 偏离度。q = observed_reward - beta * np.log(policy / ref_policy)用 KL 惩罚修正观测奖励,相当于 PPO 中的总奖励。policy = softmax(q, temperature=0.15)用带温度的 softmax 模拟策略更新:分数高的风格概率上升。if kl > 1.2: beta *= 1.3KL 超限时惩罚加重,对应自适应 β 调度的“收紧底线”。elif kl < 0.2: beta *= 0.85KL 过小时惩罚减轻,给策略更多探索空间。if step % 10 == 0: log.append(...)每 10 步记录一次状态,便于观察训练轨迹。
常见误区
误区很多初学者看到训练日志中奖励分数一路上涨,就认为模型正在变好,甚至把“奖励分数”作为模型上线的主要指标。我接手第一个 RLHF 任务时,也是这样被漂亮的分数曲线骗了。
正解奖励分数只是“品鉴师的主观评价”,它可能被 Reward Hacking 劫持。正确做法是把奖励分数与业务指标、人工评估、KL 偏离度、输出多样性放在一起看。如果分数上涨的同时人工好评率下降、KL 飙升,那就是老周被味精蒙蔽了,分数越高反而越危险。
为何常见:因为训练面板上最显眼的就是奖励曲线,而真实质量需要额外做人工评估才能获得,人们本能地相信“眼前的数据”。
误区有些人觉得 KL 惩罚是“限制模型发挥”的枷锁,于是把 β 设得很小甚至关掉,认为这样策略模型进步更快、分数更高。
正解KL 惩罚本质上是防止模型“忘本”的安全带。β 过小,策略模型会为了刷分疯狂偏离参考分布,很快就出现模式崩溃或 Reward Hacking。正确的做法是用自适应调度,设定上下界动态调整 β,让小范围的探索发生在安全区间内。
为何常见:从直觉上看,去掉约束让模型自由发挥确实会带来更快的分数提升,但人们忽略了自由背后的风险——这种分数提升往往是脆弱的假象。
误区既然奖励模型是数据驱动的,那就拼命堆数据。有团队认为只要偏好对数量达到几十万条,质量差点也无所谓,模型能自己学出规律。
正解低质量数据对奖励模型的伤害是直接的:标注不一致的偏好对会让模型学到一个“分裂的品味”,重复样本会让模型过拟合。与其堆量,不如先做一致性检验(κ 值)、冲突清洗和去重,保证每一批数据都干净可靠。一万条高质量数据往往胜过十万条噪声数据。
为何常见:因为“大力出奇迹”在监督学习早期确实有效,人们容易把这种经验惯性迁移到偏好数据上,忽略了偏好标注的主观性和高噪声特性。
误区有些工程师看到 PPO 损失不下降,第一反应是把学习率调大,觉得“撞墙就大力撞破”。结果策略分布瞬间崩坏,生成质量惨不忍睹。
正解PPO 发散通常是“步子迈太大”的信号,正确方向是减小学习率、收紧 clip 范围、检查优势估计。Clip 机制本身就是限制更新幅度的,学习率过大会让概率比瞬间冲过裁剪边界,导致有效更新接近零。小林的正确做法是“一次只拧一小格”,而不是把火候调到最大。
为何常见:传统监督学习里学习率太低确实导致收敛慢,人们形成“学习率要大胆”的路径依赖;但强化学习的反馈信号动态变化,大步更新经常适得其反。
面试题
Q1. RLHF 中负责给出“回答好坏分数”的模块是?
- A.奖励模型← 正确答案
- B.参考模型
- C.价值模型
- D.生成模型
答案:A。奖励模型就是文中的“品鉴师老周”,专门给回答打分;参考模型提供基本功底线,价值模型估计期望收益,生成模型是“学徒小林”本身。
Q2. 奖励模型出现“记住训练样本而非学会品味”的现象,本质原因是?
- A.学习率设置太低
- B.偏好数据集规模太小
- C.过拟合于偏好样本← 正确答案
- D.采样温度越来越高
答案:C。这和“老周只吃过宫保鸡丁就只会评宫保鸡丁”同理。奖励模型在训练集上损失很低、验证集上损失反弹,说明它背下了训练偏好对,而不是学到泛化的品味;这与学习率、温度和数据集规模无直接关系。
Q3. KL 散度在 RLHF 中最核心的作用是?
- A.提升采样效率
- B.压缩模型参数量
- C.约束前后策略差距← 正确答案
- D.增强数据标注质量
答案:C。KL 散度衡量策略模型与参考模型的分布距离,相当于“基本功底线”的刻度尺。它不负责采样、压缩或数据标注,而是防止策略在追求奖励时偏离参考模型太远,从而抑制 Reward Hacking 和模式崩溃。
Q4. 出现 Reward Hacking 时最典型的信号是?
- A.奖励分数涨但真实质量跌← 正确答案
- B.训练损失持续走高
- C.推理延迟显著降低
- D.显存占用明显下降
答案:A。Reward Hacking 的本质是“分数与质量分道扬镳”。小林狂加味精后,老周给的分数一路涨,但客人的真实评价不断下跌。训练损失、推理延迟和显存与这个现象没有直接关系。
Q5. PPO 目标中的裁剪操作主要作用是?
- A.增加高奖励样本权重
- B.限制策略更新步幅← 正确答案
- C.降低梯度计算精度
- D.简化优势函数计算
答案:B。裁剪把新旧策略概率比限制在 $1\pm\epsilon$ 内,相当于规定小林每次调味只能拧一小格,防止单次更新过大导致策略崩溃。它不是加权重、降精度或简化计算,而是安全的刹车。
Q6. 广义优势估计中,λ 越接近 1 表示?
- A.当前步奖励越重要
- B.越看重长远收益← 正确答案
- C.优势估计方差越大
- D.无需价值函数参与
答案:B。λ 决定多步残差的衰减速度,λ 接近 1 时远期残差衰减很少,优势估计看得更远、偏差更小但方差更高;λ 接近 0 时主要看单步,方差小但偏差大。它不表示当前步重要性,也不意味着放弃价值函数。
Q7. 下列哪些信号可用于识别策略模型的模式崩溃?
- A.输出分布熵下降← 正确答案
- B.生成序列平均长度上涨
- C.回答重复率显著上升← 正确答案
- D.distinct-n 指标持续走低← 正确答案
答案:ACD。模式崩溃是模型只会输出少数几种答案。熵下降、重复率上升、distinct-n 降低都是“多样性萎缩”的直接证据。生成序列变长更多是 Reward Hacking 中“长度伪相关”的典型特征,不是模式崩溃的核心指标。
Q8. 下列哪些做法能有效提升偏好数据质量?
- A.用 Kappa 系数做双盲复标质检← 正确答案
- B.清洗互相矛盾的偏好对← 正确答案
- C.对近似重复样本做去重← 正确答案
- D.全部交给自动规则标注
答案:ABC。Kappa 量化标注一致性,冲突清洗消除“分裂的品味”,去重防止奖励模型过拟合于重复样本,这些都是给老周提供干净教材的手段。全部交给自动规则则会引入大量噪声,反而降低数据质量。
Q9. 训练中 KL 持续低于设定下限,自适应调度应如何处理?
- A.判定训练完全成功并停止
- B.认为是数据量不足并加数据
- C.惩罚过重需放松约束← 正确答案
- D.学习率应当立即调大
答案:C。KL 长期低于下限意味着策略模型过于保守,像小林被要求“一招一式都跟老师傅一样”,根本没有探索空间,RLHF 等于白做。此时应该按调度规则减小 β、放松基本功底线,而不是停止训练、加数据或盲目调学习率。
Q10. 以下哪些属于奖励模型过拟合的防护手段?
- A.监控验证集损失并早停← 正确答案
- B.增加偏好样本的多样性覆盖← 正确答案
- C.对模型权重施加正则约束← 正确答案
- D.调高策略模型的熵系数
答案:ABC。早停能在验证损失反弹前截住训练,多样性数据让老周“多见世面”,正则约束降低模型记住训练样本的容量,三者都是奖励模型防过拟合的常规手段。熵系数是策略模型探索相关的超参,不直接作用于奖励模型过拟合。