机器人三定律的内容是什么?( 七 )


有时候目标函数有一个可以自我增强的组成部分,最终放大到足以破坏或者扭曲设计者期望目标函数所表征的内容 。例如,一个广告投放算法可能用更大的字体显示人气更旺的广告,这类广告可能会进一步推广这些广告的人气,形成一种积极反馈回路,暂时人气爆发的广告会上升至永久的主导地位 。目标函数最初的目标(利用点击来评估哪些广告更加有用)被实施策略内的积极反馈回路破坏了 。这可以看做是古德哈特定律中的特例,相关性被破坏正是因为目标函数有一个自我放大的组成部分 。
在强化学习的形式中,奖励被认为是来源于环境 。的确,即便奖励是一个抽象形式(例如棋类游戏中的分数),也需要在某地进行计算,例如一个传感器或者一组晶体管 。行动足够广的代理原则上能够篡改奖励的实施,自己给自己“颁发”高的奖励 。例如,棋类游戏中的代理可以篡改计分的传感器 。这意味着我们没法为一个抽象目标函数打造一个完全忠诚的执行,因为目标函数的物理替代中,行为有特定的顺序 。在人类可以包含奖励回路中的时候,这尤其让人担心,基于代理的动机是强迫或伤害人类从而获得奖励 。这也是一种看起来很难避免的空子 。
在如今相对简单的系统中,这些问题可能还没出现,或者可以在造成很多危害之前,作为迭代开发过程的一部分将其修正 。例如,广告投放系统的反馈回路如果有明显破损的话,可以在测试中检测到,或者可以在出现不良结果时被代替,只会造成暂时的收入损失 。但是,随着奖励功能越来越复杂、代理行动的时间越来越长,问题也会更加严重 。现代 RL 代理已经能发现和利用环境中的漏洞,例如电子游戏中的小故障 。而且,即便针对现有系统,这些问题会需要花费额外的工程精力来实现好的性能表现,并且在大的系统中经常没有被监测到 。最后,一旦代理“黑”进了奖励系统,找到了办法获得高额奖励,它就不会停止,这对长时间操作的代理来说会产生额外问题 。
奖励中的黑客行为可能被认为在个例之间没有什么共同点,而补救办法就是在每一个个例中避免选择错误的目标函数——那些错误的目标函数体现的是设计者能力的不足,而不是机器学习研究的不足 。但是以上的例子显示,我们应该将错误目标函数看作由于一些总体原因(例如部分观察的目标),让选择正确目标具有困难 。如果真是这样,那么解决或减轻这些问题就对于安全问题就很有价值 。这里我们建议一些基本的基于机器学习的方法,来预防奖励中的黑客行为 。
从某些意义上来说,我们的问题是 ML 系统与其奖励函数有一种对抗性关系——它会利用一切可以的方法来获得高奖励,无论是否符合设计者的初衷 。在典型的设定中,机器学习系统是一个潜在能力很强的代理,而奖励函数是一个静态目标,没法对系统钻空子的行为做出任何回应 。如果奖励函数是其代理本身,可以采取行动来探索环境,它可能就更难被钻空子 。例如,奖励代理可以试图寻找这样的一种情况:当 ML 系统认为奖励很高,而人类标记为低奖励的时候;这与生成式对抗网络相似 。当然,我们必须确保奖励确认代理比试图获得奖励的代理更强(从某些微妙的意义上来说) 。更普遍地来说,也可能有一些有趣的设定中,系统有多个以非端到端方式训练的代理,可以用来互相监督 。
在基于 RL 的模型中,代理使用一个模型来计划其未来行动,考虑一系列行动可能带来什么样的未来状态 。在一些设定中,我们可以基于预期未来状态、而非目前状态而给出奖励 。这可以帮助预防模型将其奖励函数重写:一旦它代替了奖励函数,你就没法控制奖励 。