Scaling Laws for Reward Model Overoptimization
Leo Gao, John Schulman, Jacob Hilton
cs.LG, stat.ML
2022-10-20
用一个固定的「金标准」奖励模型代替人类当真值,这篇测出代理奖励模型的分数随优化先升后降,并给出系数随模型规模平滑变化的标度律,把 Goodhart 定律第一次量化。
RLHF 里大家都在拿一个学出来的奖励模型当人类偏好的代理去优化。古德哈特定律说,当一个度量变成目标,它就不再是好的度量。在奖励模型上这意味着:优化得太狠,真实(金标准)性能反而会掉。这个现象人人都见过,但没人仔细量过,因为采集人类偏好数据太贵。这篇要解决的就是「过度优化到底有多大、怎么随规模变化」这个测量问题。
作者用一个合成设置绕开数据成本:拿 InstructGPT 的 6B 奖励模型当「金标准」扮演人类,用它的输出造 10 万条偏好对,再训练 3M 到 3B 参数不等的代理奖励模型。然后用两种方式优化代理奖励:best-of-n 采样(BoN)和 PPO 强化学习。用策略相对初始策略的 KL 散度的平方根 d 做横轴,观察金标准分数怎么变。
结果是两条干净的标度律。BoN 的金标准分数符合 R(d)=d(α−β·d),PPO 的符合 R(d)=d(α−β·log d)。两者都是先升后降的拱形,下降那段就是过度优化。α 和 β 两个系数都随代理奖励模型的参数量平滑变化(大致对数趋势),其中 PPO 的 α 几乎与模型大小无关。这意味着给定规模就能预测金标准分数能到多高。
几个关键发现。第一,数据量门槛:偏好对少于约 2000 条时,奖励模型接近随机,再多参数也没用;过了这个门槛,数据越多过度优化越轻。第二,策略规模的影响反直觉:更大的策略从优化中获益更少,但并不会更快过度优化,两者金标准达峰的 KL 几乎一样,代理与金标准的差距也几乎一样。第三,BoN 和 PPO 花费 KL 的方式很不一样,PPO 远不如 BoN「省 KL」,所以 KL 不是跨方法比较优化量的好指标;但用代理分数做横轴,两者又很像。第四,KL 惩罚在这个设置里只相当于提前停止:它让金标准更早收敛,却不改善金标准与 KL 的前沿。
作者还把这些结果接到古德哈特定律的分类法上:α 项对应回归型古德哈特(代理依赖了带噪特征),β 项对应极值型古德哈特(优化把分布推到奖励模型的训练分布之外)。迭代 RLHF(不断采新人类反馈重训奖励模型)能改善 β 项,改善量正比于 d·log(k),但对 α 项无效。
这是把「奖励模型不能优化过头」从经验直觉变成可预测的工程量的奠基性工作。对做 RLHF 的人,它给出了几条可操作的结论:奖励模型要够大、偏好数据要够多(至少几千条)、KL 惩罚基本等于提前停止别指望它救命、而且在线迭代收集新反馈能切实压低过度优化。系数随规模平滑变化这一点,意味着可以在小规模上拟合再外推预测大规模行为。
合成设置可能不迁移:金标准本身也是个模型,真实人类意图和金标准标签之间还有一层未捕捉的差距(作者自己列为最大局限)。所有实验都在 InstructGPT 环境里,泛化性未验证。β 项预测在极限优化下是「无界效用损失」,但真实系统在到达那里之前就会被别的约束挡住。模型还不够强到产生对抗型古德哈特,而这恰恰可能是未来最危险的形式,届时这些标度律可能整体失效。