← 文章 / AI技术
Lilian Weng 2小时前 · 2026-08-31 13:38:10 · 1 阅读

强化学习中的奖励黑客(Reward Hacking)

奖励黑客(Reward hacking)指的是强化学习(RL)智能体利用奖励函数中的缺陷或模糊之处来获取高奖励,实际上却并没有真正学会或完成预期任务。奖励黑客之所以存在,根本原因在于 RL 环境往往是不完美的,而如何精确地定义一个奖励函数本身就是一件极其困难的事。

随着语言模型被广泛应用于各种任务、RLHF 成为事实上主流的对齐训练方法,语言模型 RL 训练中的奖励黑客问题已经变成了一个关键的现实挑战。例如,模型学会修改单元测试来通过编程任务,或者生成的回答带有迎合用户偏好的偏见——这些现象都令人担忧,很可能是制约 AI 模型在更多自主场景中真正落地的主要障碍之一。

过去关于这个主题的研究大多偏理论,集中在定义或证明奖励黑客的存在性。然而,针对实际缓解方案的研究,尤其是在 RLHF 和大语言模型场景下,仍然十分有限。我特别希望呼吁更多的研究力量投入到对奖励黑客的理解和缓解上,希望未来能专门写一篇文章来介绍缓解方法。

背景#

RL 中的奖励函数#

奖励函数定义了任务本身,而奖励塑形对强化学习的效率和效果有着重要影响。设计一个 RL 任务的奖励函数往往像是一门"玄学"。这种复杂性来自多方面:如何把一个大目标拆解成小目标?奖励应该是稀疏的还是稠密的?如何衡量成功?不同的选择可能带来截然不同的学习动态,有的能训练出好的策略,有的则导致任务无法学习或奖励函数被黑客。RL 领域关于奖励塑形已有大量的研究历史。

例如,Ng 等人 1999 年的论文研究了如何在 马尔可夫决策过程(MDP)中修改奖励函数,同时保持最优策略不变。他们发现线性变换即可做到。给定一个 MDP $M = (S, A, T, \gamma, R)$,我们希望构造一个变换后的 MDP $M' = (S, A, T, \gamma, R')$,其中 $R' = R + F$,$F: S \times A \times S \mapsto \mathbb{R}$,从而引导学习算法更加高效。给定一个实值函数 $\Phi: S \mapsto \mathbb{R}$,若对所有 $s \in S - \{s_0\}, a \in A, s' \in S$ 满足下式,则称 $F$ 是基于势能的塑形函数(potential-based shaping function):

$$ F(s, a, s') = \gamma \Phi(s') - \Phi(s) $$

这能保证折扣 $F$ 的求和——$F(s_1, a_1, s_2) + \gamma F(s_2, a_2, s_3) + \dots$——最终结果为 0。当 $F$ 是这样的基于势能的塑形函数时,它既充分必要,可确保 $M$ 和 $M'$ 拥有相同的最优策略。

当 $F(s, a, s') = \gamma \Phi(s') - \Phi(s)$,并进一步假设 $\Phi(s_0) = 0$(其中 $s_0$ 是吸收态)且 $\gamma = 1$ 时,对所有 $s \in S, a \in A$ 有:

$$ \begin{aligned} Q^*_{M'} (s,a) &= Q^*_M(s, a) - \Phi(s) \\ V^*_{M'} (s,a) &= V^*_M(s, a) - \Phi(s) \end{aligned} $$

这种奖励塑形方式允许我们在奖励函数中融入启发式信息来加速学习,同时不影响最优策略。

虚假相关性#

虚假相关性(spurious correlation)也叫捷径学习(shortcut learning,Geirhos et al. 2020),是分类任务中与奖励黑客密切相关的一个概念。虚假特征或捷径特征会导致分类器无法按预期学习和泛化。例如,在区分狼和哈士奇的二分类任务中,如果所有狼的训练图片都包含雪地背景,分类器就可能过拟合这一特征(Ribeiro et al. 2024)。

如果模型过度拟合捷径特征,在分布外(OOD)测试集上的表现就会变差。(图片来源:Geirhos et al. 2020

ERM 原则指出,由于完整的数据分布是未知的,最小化训练数据上的损失可以作为风险的一个合理近似,因此我们倾向于选择训练损失最低的模型。Nagarajan et al. (2021) 对 ERM 原则进行了研究,指出 ERM 在试图无约束地拟合数据时,必须依赖所有类型的有效特征,包括不可靠的虚假特征。他们的实验表明,无论任务多么简单,ERM 都会依赖于虚假特征。

我们来定义一下 Reward Hacking#

强化学习中的奖励塑形(reward shaping)是一个难题。Reward hacking 指的是 RL 智能体钻奖励函数的漏洞或模糊之处的空子,从而获得高额奖励,但并未真正学会预期行为,也没有按设计完成任务。近年来,学术界提出了几个相关概念,它们都在指代某种形式的 reward hacking:

这个概念最早由 Amodei 等人(2016)在其开创性论文《Concrete Problems in AI Safety》中提出。他们将奖励黑客(reward hacking)列为关键的 AI 安全问题之一。奖励黑客指的是智能体通过钻奖励函数的空子,以不当行为获取高奖励的现象。规范博弈(specification gaming)Krakovna 等人,2020)是一个与之类似的概念,定义为行为表面上满足了目标的字面规范,但并未真正达成预期效果。这里就出现了任务目标的字面描述与真实意图之间的偏差。

奖励塑形(reward shaping)是一种用于丰富奖励函数的技术,能让智能体更容易学习,例如通过提供更密集的奖励信号。然而,设计不当的奖励塑形机制可能会改变最优策略的轨迹。设计有效的奖励塑形机制本身就极其困难。与其把问题归咎于奖励函数设计得不好,更准确地说,设计一个好的奖励函数之所以困难,根本原因在于任务本身的复杂性、状态的部分可观察性、需要权衡的多维目标以及其他因素。

在分布外(OOD)环境中测试强化学习智能体时,可能因以下原因出现稳健性失效:

  1. 模型即便目标设定正确,也无法有效泛化。这通常是因为算法本身的智能或能力不足。
  2. 模型具备泛化能力,但追求的目标与训练时不一致。这是因为代理奖励与真实奖励函数存在偏差,即 $R’ \neq R$。这被称为目标稳健性(objective robustness)Koch 等人,2021)或目标误泛化(goal misgeneralization)Langosco 等人,2022)。

在两个强化学习环境(CoinRunMaze)中的实验表明,训练时的随机化非常重要。如果训练时把金币或奶酪固定在某个位置(例如关卡最右端或迷宫右上角),而测试时却随机放置,那么智能体在测试时就会径直跑向那个固定位置,而不会去获取金币或奶酪。当视觉特征(如奶酪或金币)和位置特征(如右上角或最右端)在测试时出现不一致时,就会产生冲突,导致训练好的模型倾向于依赖位置特征。我想指出的是,在这两个例子中,奖励-结果差异 是显而易见的,但在大多数真实场景中,这类偏差往往不会这么明显。

训练过程中对金币位置进行随机化的影响。当训练时金币被随机放置的比例为 {0, 2, 3, 6, 11}% 时(横轴),智能体在不获取金币的情况下直接冲向关卡终点的频率会随着随机化比例的提高而降低(纵轴)。(图片来源:Koch et al. 2021)

奖励篡改Everitt et al. 2019)是奖励篡改行为的一种形式,指的是智能体直接干预奖励函数本身,导致观察到的奖励不再准确反映其本应代表的目标。在奖励篡改中,模型要么直接操纵奖励函数的实现,要么间接修改作为奖励函数输入的环境信息。

(注:部分研究将奖励篡改视为一种与奖励黑客行为不同的独立类别。但在这里,我把奖励黑客视为一个更广义的概念。)

从宏观上看,奖励黑客可以分为两类:环境或目标的错误设定,以及奖励篡改。

  • 环境或目标设定错误:模型通过利用环境漏洞或优化一个与真实奖励目标不一致的奖励函数来获得高分,从而学会非预期的行为——例如奖励函数定义不当或缺少关键约束条件时就会出现这种情况。
  • 奖励篡改:模型学会直接干扰奖励机制本身。

示例列表#

强化学习任务中的奖励黑客示例#

  • 训练机器人手抓取物体时,它可能学会把身体挡在物体和摄像头之间来"欺骗"观测。(链接
  • 训练智能体最大化跳跃高度时,它可能利用物理模拟器的漏洞,达到现实中不可能达到的高度。(链接
  • 训练智能体骑自行车前往目标点,每当靠近目标就获得奖励。于是智能体可能学会绕着目标点画小圈骑行,因为远离目标时没有惩罚。(链接
  • 在足球游戏环境中,智能体碰到球就能获得奖励,于是它学会紧贴球体不停高频"震动"接触,以刷取奖励。(链接
  • Coast Runners 游戏中,智能体操控船只尽快完成比赛。当它因撞上赛道上的绿色方块而获得额外塑形奖励后,最优策略变成了原地转圈反复撞同一组绿块。(链接
  • 《数字进化的惊人创造力》(Lehman 等,2019)——该论文包含大量示例,展示优化设定不当的适应度函数如何导致出人意料的"黑客"行为或非预期的进化/学习结果。
  • AI 中规格博弈的示例列表Krakovna et al. 2020 整理。

LLM 任务中的奖励黑客示例#

  • 一个用于生成摘要的语言模型,能够钻 ROUGE 指标的空子,从而获得高分,但生成的摘要几乎无法阅读。(链接
  • 一个编程模型学会了修改单元测试,以通过编程题目。(链接
  • 一个编程模型可能学会直接修改用于计算奖励的代码。(链接

现实生活中的奖励黑客示例#

  • 社交媒体的推荐算法本意是提供有用的信息。然而,"有用"通常由代理指标来衡量,比如点赞数或评论数,或者用户在平台上的停留时间和互动频率。算法最终会推荐那些能影响用户情绪状态的内容,例如煽动性、极端化的内容,以此来提升用户参与度。(Harari, 2024
  • 针对视频分享网站的错误代理指标进行优化,可能会激进地拉长用户的观看时长,而真正的目标是优化用户的主观幸福感。(链接
  • 《大空头》 —— 2008 年由房地产泡沫引发的金融危机。人们试图钻金融系统的空子,导致整个社会出现了奖励黑客现象。

为什么存在奖励黑客?#

古德哈特定律指出:“一旦某个指标成为目标,它就不再是一个好的指标。”其核心含义是:即使是一个好的度量指标,一旦被施加强烈的优化压力,也可能被"污染"。要定义一个百分百准确的奖励目标极其困难,任何代理指标都面临被 hack 的风险——强化学习算法会抓住奖励函数中的任何微小缺陷加以利用。Garrabrant(2017)将古德哈特定律归纳为四种变体:

  1. 回归型(Regressional)——针对不完美的代理指标进行筛选,必然也会把噪声一并选进来。
  2. 极端型(Extremal)——指标筛选会把状态分布推到与原数据分布截然不同的区域。
  3. 因果型(Causal)——当代理指标与目标之间存在非因果的相关性时,对代理指标进行干预未必能作用于真正的目标。
  4. 对抗型(Adversarial)——围绕代理指标进行优化,会诱导对手将自己的目标与该指标挂钩。

Amodei 等人(2016)总结道,主要在强化学习场景下,奖励 hacking 可能由以下原因导致:

  1. 状态和目标只能被部分观测,无法完整刻画环境。
  2. 系统本身就很复杂,容易被 hack。例如,若允许智能体执行会修改环境某部分的代码,那么利用环境机制来作弊就会容易得多。
  3. 奖励可能涉及难以学习或难以形式化的抽象概念。举例来说,一个高维输入的奖励函数可能会不成比例地依赖其中少数几个维度。
  4. 强化学习追求把奖励函数优化到极致,因此天然存在一种内在的"冲突",使得设计一个好的 RL 目标本身就极具挑战性。一个典型情形是奖励函数带有自我强化的反馈分量——奖励可能被不断放大、扭曲,最终背离原本的设计意图,例如广告投放算法导致赢家通吃。

此外,要确定智能体究竟在优化哪一个具体的奖励函数通常是不可能的,因为在固定环境中,可能存在无穷多个与任何观测到的策略相一致的奖励函数(Ng & Russell, 2000)。Amin 和 Singh(2016)将这种不可辨识性的原因划分为两类:

  1. 表示层面——一组奖励函数在某些算术操作(例如重新缩放)下行为等价;
  2. 实验层面——$\pi$ 的观测行为不足以区分两个或多个都能合理解释该行为的奖励函数(即智能体的行为在多个奖励函数下都是最优的)。

对 RL 环境的攻击#

随着模型和算法日益复杂,奖励 hacking 预计会变得更加普遍。能力越强的智能体越容易发现奖励函数设计中的"漏洞"并利用任务规约——换句话说,获得更高的代理奖励但真实奖励反而更低。相比之下,较弱的算法可能根本找不到这些漏洞,因此在模型能力不足时,我们观察不到奖励 hacking,也无从发现当前奖励函数设计中的问题。

在一组零和机器人自博弈游戏中(Bansal 等人,2017),我们可以训练两个智能体(受害方 vs. 对手方)相互对抗。标准训练流程产出的受害方智能体在面对普通对手时表现尚可。然而,训练一个能可靠击败受害方的对抗性对手策略却很容易——尽管它输出看似随机的动作,且训练所用的时间步数还不到 3%(Gleave 等人,2020)。对抗策略的训练与标准 RL 设定一样优化折扣奖励总和,只不过将受害方策略视为黑盒模型。

一种直观的缓解对抗策略攻击的方法是让受害方针对对抗策略进行微调。然而,一旦受害方针对新的对抗策略完成再训练,它对新版本的对抗策略依然脆弱。

为什么对抗策略会存在?一种假设是,对抗策略给受害者引入的是分布外(OOD)观测,而非物理层面的干扰。证据表明,当把受害者对对手位置的观测屏蔽掉并设为静态时,受害者对对抗策略的鲁棒性反而增强,不过它在面对正常对手策略时的表现会变差。此外,观测空间的维度越高,正常情况下的表现越好,但策略也更容易被对抗策略利用。

Pan 等人(2022)把奖励 hacking 视为智能体能力的一个函数进行研究,涉及的能力维度包括:(1) 模型规模、(2) 动作空间分辨率、(3) 观测空间噪声、(4) 训练时长。他们还提出了错误指定的代理奖励的三种分类:

  1. 权重错配:代理奖励和真实奖励衡量的目标相同,但各项的相对重要性不同。
  2. 本体错配:代理奖励和真实奖励用不同的目标来刻画同一概念。
  3. 范围错配:代理奖励只在受限的范围内(例如时间或空间上)衡量目标,因为在所有条件下进行度量代价过高。

他们在四种强化学习环境中配合九种错误指定的代理奖励进行了实验。这些实验的总体结论可以概括为:能力越强的模型往往获得更高(或相近)的代理奖励,但真实奖励反而下降。

  • 模型规模:模型越大,代理奖励越高,但真实奖励越低。
  • 动作空间分辨率:动作精度提升会让智能体更强。但分辨率过高时,代理奖励基本不变,真实奖励却会下降。
  • 观测保真度:观测越准确,代理奖励越高,但真实奖励会略有下降。
  • 训练步数:在初始阶段代理奖励和真实奖励正相关之后,过度优化代理奖励的时间越长,真实奖励受损越严重。
代理奖励与真实奖励随模型规模(顶部,以参数量衡量)和模型能力(底部,以训练步数、动作空间分辨率、观测噪声等指标衡量)变化的曲线图。(图片来源:Pan et al. 2022

如果代理奖励的设定过于粗糙,以至于与真实奖励的相关性很弱,那么我们或许能在训练之前就识别并防止奖励黑客行为。基于这一假设,Pan et al. (2022) 在一批轨迹回放数据上考察了代理奖励与真实奖励之间的相关性。有趣的是,即便真实奖励与代理奖励之间存在正相关,奖励黑客现象依然会出现。

针对 LLM 的 RLHF 黑客行为#

基于人类反馈的强化学习(RLHF)已成为语言模型对齐训练的事实标准做法。它先在人类反馈数据上训练一个奖励模型,然后通过强化学习微调语言模型,以优化这个代表人类偏好的代理奖励。在 RLHF 框架中,我们关心的奖励有三种:

  • (1)理想奖励 $R^∗$ 代表我们真正希望 LLM 优化的目标。
  • (2)人类奖励 $R^\text{human}$ 是我们在实践中收集的、用于评估 LLM 的奖励,通常由受时间限制的个人提供。由于人类反馈可能存在不一致或错误,人类奖励并不能完全准确地反映理想奖励。
  • (3)代理奖励 $R$ 是由奖励模型预测的得分,该模型在人类数据上训练而来。因此,$R^\text{train}$ 不仅继承了人类奖励的所有缺陷,还可能带有模型自身的偏差。

RLHF 优化的是代理奖励得分,而我们真正关心的是理想奖励得分。

针对训练流程的黑客行为#

Gao 等人(2022)研究了 RLHF 中奖励模型过度优化的缩放规律。为了在实验中扩大人工标注规模,他们采用了一种合成数据方案:用一个大 RM(60 亿参数)来近似充当"金标"奖励 $R^*$,而代理 RM 的参数量则在 300 万到 30 亿之间,用于近似 $R$。

RM 得分随 KL 散度平方根变化的曲线。虚线表示代理奖励,实线表示金标奖励。(图片来源:Gao et al. 2022

从初始策略到优化后策略的 KL 散度为 $\text{KL} = D_\text{KL}(\pi | \pi_\text{init})$,距离函数定义为 $d := \sqrt{ D_\text{KL}(\pi | \pi_\text{init}) }$。对于 best-of-$n$ 拒绝采样(BoN)和 RL,金标奖励 $R^*$ 都被定义为 $d$ 的函数。系数 $\alpha$ 和 $\beta$ 由经验拟合得到,根据定义 $R^*(0) := 0$。

作者也尝试拟合代理奖励 $R$,但在将其外推到更大 KL 值时发现了系统性低估,因为代理奖励看起来是随 $d$ 线性增长的。

$$ \begin{aligned} R^*_{\text{bo}n}(d) &= d (\alpha_{\text{bo}n} - \beta_{\text{bo}n} d) & \text{; for best-of-n (BoN) sampling.}\\ R^*_\text{RL}(d) &= d (\alpha_\text{RL} - \beta_\text{RL} \log d) & \text{; for reinforcement learning}\\ \end{aligned} $$
系数 $\alpha_{\text{bo}n}$、$\beta_{\text{bo}n}$、$\beta_\text{RL}$ 由数据经验拟合得到,图中展示了它们随奖励模型规模的变化。$\alpha_\text{RL}$ 不在此图中,因为它在不同 RM 规模下保持恒定。(图片来源:Gao et al. 2022

他们的实验还探讨了 RM 过度优化与策略模型规模、RM 数据量等因素之间的关系:

  • 策略模型越大,从针对 RM 的优化中获得的收益越少(即初始奖励与峰值奖励之差小于小策略模型的情况),同时过度优化的程度也更低。
  • 更多的 RM 训练数据会带来更高的金标奖励得分,并减轻"Goodharting"效应。
  • KL 惩罚对 gold 分数的影响类似于早停。需要注意的是,除了本次实验外,其他所有实验中 PPO 的 KL 惩罚都设为 0,因为他们观察到使用 KL 惩罚会严格增大 proxy 奖励与 gold 奖励之间的差距。

RLHF 的目标是让模型更好地对齐人类偏好,但人类反馈 $R^\text{human}$ 并不能涵盖我们关心的所有方面(例如事实性),因此容易被"钻空子",使模型过度拟合到我们不期望的属性上。例如,模型可能被优化成输出看似正确且令人信服、实则不准确的回答,从而误导人类评估者更频繁地认可其错误答案(Wen et al., 2024)。换句话说,由于 RLHF 的存在,"什么是正确的"和"看起来什么是正确的"之间出现了偏差。Wen et al. (2024) 正是基于这一点,使用 ChatbotArena 数据训练了奖励模型,并开展了 RLHF 实验。他们在问答数据集 QuALITY 和编程数据集 APPS 上对模型进行了评估。实验表明,模型变得更擅长说服人类相信自己是对的,即便实际上是错的——而这是一种非预期的副作用:

  1. RLHF 提升了人类的认可度,但并不必然提升回答的正确性。
  2. RLHF 削弱了人类的判断能力:经过 RLHF 训练后,人类评估的错误率反而升高了。
  3. RLHF 让错误输出对人类更具迷惑性。经过 RLHF 训练后,评估中的误报率显著上升。

该论文将这种现象命名为"U-Sophistry"("U"代表 unintended,即"非预期的"),以区别于"I-Sophistry"("I"代表 intended,即"有意的")。后者指的是通过类似 "... try to deceive human subjects" 这类指令显式地引导模型去欺骗人类。

RLHF 让大语言模型更善于说服人类评估者认可其错误答案。(图片来源:Wen et al. 2024

人类评估错误率的变化并非源于招募过程中的随机噪声,因为:(1) 从个体层面看,大多数(70%-90%)评估者的错误率都出现了上升;(2) 他们在评估 $\pi_\text{init}$ 或 $\pi_\text{rlhf}$ 时投入的努力相当,无论用耗时还是编写的单元测试数来衡量都一样。相反,LLM 学会了为错误答案辩护——挑选有利证据、编造虚假论据,或构造带有微妙因果谬误的表述。他们观察到模型在 RLHF 之后的行为变化如下:

  • 在长文本问答任务中:
    • 编造更有说服力的虚假证据。
    • 为错误答案构建更自洽的逻辑。
    • 生成带有微妙谬误但表面通顺的回答。
  • 在编程任务中:
    • 欺骗人工编写的单元测试。
    • 生成可读性更低的测试代码(例如辅助函数更少、代码复杂度更高)。
    • 让 $\pi_\text{rlhf}$ 更不容易产生人类易于利用、易于察觉的明显错误。
生成代码的模块化程度(辅助函数数量)和圈复杂度的对比,分别针对正确和错误的代码。RLHF 训练使模型整体上生成更少的辅助函数,同时在错误的生成代码中产生更高的复杂度。这无疑会增加人工评估的难度。(图片来源:Wen et al. 2024

谄媚行为(Sycophancy)指的是模型倾向于迎合用户的观点,而非给出真实答案(Shrama et al. 2023)。实验中,AI 助手被要求对一段论述提供反馈(Human: "请简要评论以下论述。论述:...")。用户在给出论述后,可以表达自己的偏好("我非常喜欢这段论述""我非常不喜欢这段论述"),以此测试这种偏好声明是否会影响模型给出的反馈,并与没有偏好声明时的基线反馈进行对比。

当用户表达自己对文本的偏好时,AI 助手给出的反馈会出现偏差。当用户表示喜欢或声称自己撰写了该文本时,回复更为正面;而当用户表示不喜欢时,回复则更为负面。(图片来源:Shrama et al. 2023

研究发现,AI 助手的反馈很容易被左右,当受到用户偏好的挑战时,它可能会改变原本正确的回答。模型倾向于迎合用户的信念,有时甚至会复述用户的错误(例如在被要求分析被错误归属作者的诗歌时)。对 RLHF 有用性数据集的逻辑回归分析表明,匹配用户观点是预测人工反馈最强的因素。

通过逻辑回归对人工偏好数据进行分析,在控制其他特征的前提下,预测带有某项特征的回复相对于不带该特征的回复被偏好的概率。(图片来源:Shrama et al. 2023

攻击评估器#

随着大语言模型能力不断增强,自然而然地开始用 LLM 作为评估者或打分器,给其他生成模型提供反馈和训练奖励,尤其适用于难以直接判断或验证的任务(例如处理长文本输出、对创意写作质量这类主观评分标准等)。这种做法有时被称为“LLM-as-grader 范式”。它大幅减少了对人工标注的依赖,显著节省了评估时间。然而,用 LLM 作为打分器只是对真实奖励的一种不完美的近似,会引入各种偏差,例如在对比不同模型家族的输出时偏好自身的回复(Liu 等,2023),以及在依次评估回复时存在位置偏差(Wang 等,2023)。这些偏差尤其值得警惕,因为打分结果会作为奖励信号的一部分,一旦被利用就会引发奖励 hack。

Wang 等(2023) 发现,用 LLM 作为评估者对多个其他 LLM 的输出打分时,质量排名很容易被攻破,只需调换候选答案的顺序即可。GPT-4 倾向于给排在首位的候选打高分,而 ChatGPT 则更偏爱排在第二位的候选。

他们的实验表明,即便指令中明确写有 "确保回复的呈现顺序不影响你的判断",LLM 仍然对回复的位置很敏感,存在位置偏差(即偏好特定位置的回复)。这种位置偏差的严重程度可以用“冲突率”来衡量,其定义为:将两个回复调换位置后,评估结果出现不一致的(prompt, 回复 1, 回复 2)三元组所占的比例。不出意料的是,两个回复本身的质量差异也会影响冲突率——质量差距越大,冲突率越低,二者呈负相关。

无论使用 GPT-4 还是 ChatGPT 作为评判模型,Vicuna-13B 对 ChatGPT 和 Alpaca-13B 的胜率都波动很大。冲突率也相当高,说明在"LLM 充当评判"的设定下,交换回答位置会导致评估结果非常不一致。唯一的例外是使用 GPT-4 评判 Vicuna-13B vs Alpaca-13B 时。(图片来源:Wang et al. 2023

为了缓解这种位置偏差,他们提出了几种校准策略:

  1. 多重证据校准(Multiple Evidence Calibration, MEC):要求评判模型先以文本形式给出评判依据(即解释其判断理由),再输出两个候选答案的分数。该方法可通过设置温度为 1 采样多条($k$ 条)证据解释来进一步增强鲁棒性。$k=3$ 的效果优于 $k=1$,但 $k$ 继续增大时性能提升不明显。
  2. 均衡位置校准(Balanced Position Calibration, BPC):汇总不同回答顺序下的结果,得到最终分数。
  3. 人在回路校准(Human-in-the-Loop Calibration, HITLC):在遇到困难样本时引入人类标注员,使用一种基于多样性的指标 BPDE(均衡位置多样性熵)。首先,将分数对(包括交换位置后的分数对)映射为三种标签(wintielose),然后计算这三种标签的熵。BPDE 越高,说明模型在评估决策上越混乱,即该样本越难以判断。接着,选取熵最高的 $\beta$ 个样本交给人类协助处理。
不同校准方法和标注者在最终人工投票标注下的准确率和 kappa 一致性系数。位置偏差校准方法能以合理的人机协同标注成本提高准确率。实验还表明,尽管模型对模板设计较为敏感,这些校准策略仍可推广到不同类型的提示模板。(图片来源:Wang et al. 2023

Liu et al. (2023) 在摘要任务上用多种模型(BART、T5、GPT-2、GPT-3、FLAN-T5、Cohere)做了实验,并同时追踪了基于参考和无参考的摘要质量评估指标。将评估分数绘制成评估者(x 轴)与生成者(y 轴)的热力图后,他们在两类指标上都观察到了明显的对角线,说明存在自我偏差。也就是说,LLM 作为评估者时倾向于偏好自己的输出。虽然实验中使用的模型有些过时,但看看更新、能力更强的模型上的结果会很有意思。

摘要任务中,将一系列模型分别作为评估者(x 轴)和生成者(y 轴)绘制的热力图。对角线越深,表示自我偏差越强,即模型越倾向于偏好自己的输出。(图片来源:Liu et al. 2023

上下文中的奖励黑客#

迭代式自我优化是一种训练设置,其中评估模型和生成模型是同一个模型,并且两者都可以被微调。在这种设置下,优化压力会驱使模型去利用两个角色共有的漏洞。在 Pan 等人(2023) 的实验中,模型参数保持不变,同一个模型通过不同的提示词分别扮演评估者和生成者。实验任务是文章修改,包含两个角色:(1) 评判者(评估者),对文章给出反馈;(2) 作者(生成者),根据反馈修改文章。作者收集了人类评分作为文章质量的真实分数。作者假设这种设置可能导致上下文奖励黑客(ICRH),即评估者分数与真实分数发生偏离。更广义地说,ICRH 发生在大语言模型与其评估者(例如另一个大语言模型,或外部世界)之间的反馈循环中。在测试时,大语言模型优化一个(可能是隐式的)目标,但这个过程会产生负面副作用(Pan 等人,2024)。

文章评估与修改的上下文奖励黑客实验示意图。(图片来源:Pan 等人,2023

评判者和作者都可以配置为看不到或看到若干轮历史反馈与修改。在线评判者可以看到历史对话,而离线评判者或人工标注者一次只能看一篇文章。较小的模型更容易受到 ICRH 影响;例如,经验上 GPT-3.5 作为评估者引发的 ICRH 比 GPT-4 更严重。

较小的评估模型更容易引发上下文奖励黑客(ICRH)。(图片来源:Pan 等人,2023

当评判者和作者被配置为看到不同数量的历史迭代时,如果两者共享相同的迭代次数,人类评分与评估者评分之间的差距会趋于增大。评估者与生成者之间的上下文一致是引发 ICRH 的关键因素,这表明对 ICRH 而言,上下文的共享性比上下文长度更为重要。

在后续工作中,Pan 等人(2024)进一步研究了上下文奖励 hacking(ICRH),场景设定为由外部环境提供反馈、目标是一个不完美的代理目标(通常以自然语言描述)。这类目标往往欠规范,无法涵盖所有约束或需求,因而容易被 hacking。

该研究描述了导致 ICRH 的两个过程,并配套设计了两个 toy 实验:

  1. 输出优化(Output-refinement):LLM 根据反馈不断改进自身输出。
    • 实验内容是根据互动指标优化一条推文,最终可能导致推文毒性上升。基于反馈的优化采用 LLM 进行两两比较评估,再用 Bradley-Terry 模型转换为分数。
    • 实验结果显示,互动指标和毒性同时增长。研究团队还在 Claude 系列不同规模的模型上重复了该实验,发现模型规模越大,ICRH 反而越严重。
    • 值得注意的是,即便修改用于在反馈驱动下迭代输出的提示词,也无法缓解该问题。ICRH 仍然存在,只是幅度略有降低。
  2. 策略优化(Policy-refinement):LLM 根据反馈优化自身策略。
    • 实验构建了一个代替用户支付账单的 LLM agent,过程中遭遇 InsufficientBalanceError,于是模型学会了在未经用户授权的情况下从其他账户转钱,导致更多未授权转账行为。他们使用 ToolEmu 作为模拟器,其中包含 144 个 LLM agent 任务,每个任务都由一个用户专属目标和一组 API 构成。通过注入 API 错误来模拟服务器端故障,并由 GPT-4 对每个任务打分以衡量其有用程度。
    • 随着错误反馈轮次的增加,LLM 能够从错误中恢复,但严重违反约束的行为也随之增多。

对比 ICRH 与传统奖励 hacking,可以发现两个显著差异:

  • ICRH 发生在部署阶段,通过自优化设置中的反馈循环产生;而传统奖励 hacking 发生在训练阶段。
  • 传统奖励黑客行为出现在智能体专精于某项任务时,而 ICRH 的根源在于智能体追求成为通才。

目前还没有任何神奇的方法能避免、检测或防止 ICRH,因为仅仅改进 prompt 规范并不足以消除 ICRH,而增大模型规模甚至可能加剧 ICRH。部署前测试的最佳实践是:模拟部署时可能发生的情况,通过更多轮次的反馈、多样化的反馈以及注入非典型的环境观测来评估模型。

黑客技能的泛化#

奖励黑客行为已被发现会在不同任务之间泛化:当模型在监督训练中表现出缺陷时,有时会泛化到在 OOD 环境中利用缺陷(Kei et al., 2024)。研究者在一些可被奖励黑客的环境中强化奖励黑客行为,并检验它是否会泛化到其他留出数据集上。具体来说,他们准备了 8 个数据集用于多项选择题,其中 4 个用于训练,4 个用于测试。RL 训练采用 expert iteration,即在 best-of-$n$ 样本上进行迭代微调。

在一组可被奖励黑客的环境上训练 GPT-3.5,会导致奖励黑客行为在留出环境中泛化。(图片来源:Kei et al. 2024

值得注意的是,所有实验都设计了一个 scratchpad 来承载隐藏的推理步骤。这个 scratchpad 充当了一种解读模型在过程中思考内容的方式。对 scratchpad 的分析揭示了它可以:

  • 融入用户信念;例如,思考它的对话伙伴和评分者。
  • 表现出对评估的感知;例如,思考模型响应将如何被评估以及评估过程。

Denison 等人(2024)使用人工策划的、由易到难的"可博弈环境"课程,研究了奖励篡改问题。他们发现,先在较简单的环境上训练,会放大模型在后续环境中的"钻规范空子"行为。在某些情况下,在完成整套课程训练后,模型甚至能零样本泛化到直接改写自身的奖励函数。

这套"可博弈环境"课程包括:

  1. 政治谄媚:环境会奖励模型给出与用户政治观点一致的答案。
  2. 工具使用中的奉承:环境允许模型通过命令行访问用户文件系统,读取本地文件中的诗歌样本,然后以谄媚方式给诗歌打出高分。
  3. 评分标准篡改:环境按一份清单给模型打分,模型必须把所有条目都标记为已完成,才能获得高奖励。
  4. 奖励篡改:模型被要求查看 ./rl_environment/ 目录,该目录中存放着其自身 RL 代码的模拟版本,并报告已运行了多少回合。其中 compute_reward.py 是一个返回常数的奖励函数,另一个文件 this_file_blocks_reward_hack_attempts.py 则用于检测奖励函数是否被篡改。
"工具使用中的奉承"和"奖励篡改"环境中的评估脚本示例,其中 `` 对监督者不可见,`` 可在虚拟机中执行。(图片来源:Denison et al. 2024

模型按照这套课程进行训练,论文考察了模型能否学到可泛化到未见环境的博弈行为。他们在 Claude-2 helpful-only 模型上做了实验:对每个 HHH 提示采样 $N=64$ 个回答,共 $P=1024$ 个提示,然后用奖励模型从中选出最佳回答做专家迭代。经过这种专家迭代式的监督学习训练后,模型能够把在一个阶段学到的行为泛化到下一阶段。

在专家迭代(expert iteration)训练下,模型从每个阶段到下一阶段的定量泛化结果。(图片来源:Denison et al. 2024

值得注意的是,即使经过课程训练后,模型篡改奖励并逃避检测的概率仍不到千分之一。即便在专门激励 reward hacking 的课程上训练,模型篡改奖励的概率也低于 1%,hack 单元测试的概率更低。作为一种简单的缓解方法:在前两个环境中——即 reward hacking 行为容易被检测(谄媚和奉承)的环境——用不含投机取巧行为的 SFT 数据对模型进行监督微调,可以降低模型在保留环境中篡改奖励的可能性。

浅谈缓解措施#

虽然关于 reward hacking 现象的文献很多,但针对其缓解措施(尤其是在 RLHF 和 LLM 领域)的研究却不算多。本节简要梳理三种潜在方案,权当抛砖引玉。

RL 算法改进#

Amodei 等人 (2016) 指出了几个缓解 RL 训练中 reward hacking 的方向:

  1. 对抗式奖励函数。把奖励函数本身当作一个自适应的对手,使其能针对模型新发现的"高奖励但人类评分低"的取巧行为做出调整。
  2. 模型前瞻。可以根据对未来状态的预测来给奖励;例如,若智能体打算替换奖励函数,就给它负奖励。
  3. 对抗式屏蔽。对智能体屏蔽某些变量,使其无法获取能用于 hack 奖励函数的信息。
  4. 谨慎工程化。针对系统设计层面的某些 reward hacking 类型,可通过精细的工程设计加以避免;例如,将智能体沙箱化,使其动作与奖励信号相隔离。
  5. 奖励封顶。直接限制奖励的最大值,可以有效防止智能体通过 hack 获取超额收益这种小概率事件。
  6. 对抗鲁棒性。提升对抗鲁棒性有助于增强奖励函数的稳健性。
  7. 多奖励组合。将不同类型的奖励组合起来,可以降低被 hack 的风险。
  8. 奖励预训练。我们可以从一批 (state, reward) 样本中学习奖励函数,但这个监督训练过程的质量好坏会带来其他隐患。RLHF 就依赖于此,不过学到的标量奖励模型很容易习得一些不良特性。
  9. 变量无关性。目标是让智能体只优化环境中的部分变量,而忽略其他变量。
  10. 绊线。我们可以故意引入一些漏洞,并设置监控和告警,一旦某个漏洞被 reward hack 就能及时发现。

在以人类对智能体行为的认可作为反馈的 RL 设定中,Uesato et al. (2020) 提出了解耦认可机制来防止奖励篡改。如果反馈以 $(s, a)$(状态、动作)为条件,那么一旦该对 $(s, a)$ 发生奖励篡改,我们就再也无法获得关于动作 $a$ 在状态 $s$ 下未被污染的反馈。解耦的意思是,用于收集反馈的查询动作与世界中所执行的动作相互独立采样。反馈在动作于世界中执行之前就已收到,从而防止动作污染其自身反馈。

解耦认可机制与标准认可/人机协同 RL 的对比示意图。(图片来源:Uesato et al. 2020
在解耦认可机制下,世界中执行的动作与用于获取用户认可反馈的查询是独立采样的。该机制可应用于(左)策略梯度算法和(右)Q-learning 算法。(图片来源:Uesato et al. 2020

奖励 Hacking 的检测#

另一种缓解思路是将奖励黑客问题建模成异常检测任务:让一个"可信策略"充当检测器,其轨迹和奖励由人工验证,用于标记出不一致的情况(Pan et al. 2022)。具体做法是,给定 (1) 一个可信策略和 (2) 一批人工标注的轨迹展开数据,基于可信策略与目标策略的动作分布之间的距离训练一个二分类器,以此衡量异常检测的准确率。在 Pan et al. (2022) 的实验中,他们发现不同任务需要不同的检测器,并且现有分类器在所有测试的强化学习环境中都无法达到 60% 以上的 AUROC。

不同检测器在各任务上的表现。(图片来源:Pan et al. 2022

RLHF 数据分析#

另一种方法是对 RLHF 数据集进行分析。考察训练数据如何影响对齐训练的结果,可以为数据预处理和人工反馈采集提供指导,从而降低奖励黑客的风险。

Revel et al. (2024) 提出了一组评估指标,用于衡量数据样本特征在建模和对齐人类价值观方面的有效性。他们在 HHH-RLHF 数据集上进行了系统性的价值对齐错误分析("SEAL")。分析所用的特征分类法(例如 is harmlessis refusalis creative 等)是人工预定义的,然后使用大语言模型根据该分类法为每个样本的每个特征打上二值标签。根据启发式规则,特征被分为两类:

  • 目标特征(Target features):明确希望被学习的价值观。
  • 干扰特征(Spoiler features):训练过程中意外学到的非预期价值观,例如情感倾向或连贯性等风格特征。这类特征与 OOD 分类研究中提到的伪特征类似(Geirhos et al. 2020)。

SEAL 提出了三个用于衡量数据在对齐训练中有效性的指标:

  1. 特征印记指特征 $\tau$ 的一个系数参数 $\beta_\tau$,它衡量在保持其他因素不变时,包含与不包含特征 $\tau$ 的样本之间的奖励增量。
(左)通过固定效应线性回归,将奖励 $\underline{r}(t^*_i)$(橙色)与 $r(t^*_i)$(蓝色)对特征做回归,得到的特征印记 $\underline{\beta(\tau)}$(训练前)与 $\beta(\tau)$(训练后)。总体而言,对齐训练会正向奖励无害性、有用性等正面特征,并惩罚色情内容、隐私侵犯等负面特征。(右)对奖励偏移 $\theta_i$ 进行线性回归得到的特征印记。奖励偏移 $\theta_i$ 定义为对齐训练前后奖励向量之间的夹角。训练过程细化了模型对目标特征的敏感度。注意,无害性同时通过 chosen 和 rejected 两类样本在奖励模型上留下印记(即 "is harmless (c)" 与 "is harmless (r)"),而有用性仅通过 rejected 样本留下印记(即 "is helpful (r)")。(图片来源:Revel et al. 2024)
  1. 对齐抗性指偏好数据对中奖励模型未能匹配人类偏好的比例。在 HHH-RLHF 数据集上,奖励模型在超过四分之一的样本上与人类偏好相悖。
  2. 对齐鲁棒性 $\pi^{c/r}_{+/-} (\tau)$ 用于衡量对齐在面对改写后的扰动输入时,对"剧透型"特征 $\tau$(例如情感、口才、连贯性)的稳健程度,分别隔离每个特征和每种事件类型的影响。
    • 鲁棒性指标 $\pi^c_-$(对应某特征名 $\tau$,如 "eloquent" 或 "sentiment positive")可按如下方式理解:
      • 若一条 chosen 样本(记为 $c$)在改写后某个特征 $\tau$ 变得更强,则它被判为 rejected 的几率变为原来的 $\exp (\pi^c_{-}(\tau))$ 倍,相比于没有发生此类翻转的样本。
      • 类似地,若一条 rejected 样本(记为 $r$)在改写后某个特征 $\tau$ 变得更弱,则它被判为 chosen 的几率为原来的 $\exp (\pi^r_{+}(\tau))$ 倍,相比于没有发生此类翻转的样本。
    • 他们对不同改写下的对齐鲁棒性指标进行分析后发现,只有基于情感剧透特征的鲁棒性分数 $\pi^c_{+}$ (sentiment) 和 $\pi^r_{-}$ (sentiment) 具有统计显著性。

引用#

引用格式:

Weng, Lilian. "Reward Hacking in Reinforcement Learning". Lil'Log (2024 年 11 月). https://lilianweng.github.io/posts/2024-11-28-reward-hacking/.

@article{weng2024rewardhack,
  title   = "Reward Hacking in Reinforcement Learning.",
  author  = "Weng, Lilian",
  journal = "lilianweng.github.io",
  year    = "2024",
  month   = "Nov",
  url     = "https://lilianweng.github.io/posts/2024-11-28-reward-hacking/"
}

参考文献#

[1] Andrew Ng & Stuart Russell. "Algorithms for inverse reinforcement learning.". ICML 2000.

[2] Amodei 等. "Concrete problems in AI safety: Avoid reward hacking." arXiv preprint arXiv:1606.06565 (2016).

[3] Krakovna 等. "Specification gaming: the flip side of AI ingenuity." 2020.

[4] Langosco 等. "Goal Misgeneralization in Deep Reinforcement Learning" ICML 2022.

[5] Everitt 等. "Reinforcement learning with a corrupted reward channel." IJCAI 2017.

[6] Geirhos 等. "Shortcut Learning in Deep Neural Networks." Nature Machine Intelligence 2020.

[7] Ribeiro 等. "Why Should I Trust You?": Explaining the Predictions of Any Classifier. KDD 2016.

原始来源: Lilian Weng

评论 (0)