深度强化学习是人工智能的一个分支,其中计算机程序通过与世界进行交互来学习如何做出决策,就像儿童通过摔倒和不断尝试来学习骑自行车一样。这些被称为“智能体”的程序根据其行为获得的奖励或惩罚来接收反馈,从而逐渐形成一种策略,以在长时间内实现尽可能好的结果。这项技术已经从研究实验室走向了现实世界,为从工厂中的机械臂到自动驾驶汽车的导航系统等各种应用提供动力。然而,随着这些系统承担起越来越多的责任,一个关键的问题随之而来:我们如何知道它们不仅是安全的,而且是在尽其所能地完成任务?虽然工程师们长期以来一直专注于确保这些智能体不会发生碰撞或造成伤害,但在它们是否在做出最有效或最优选择方面,一直存在一个盲点。机器人可能会成功避开一堵墙,但如果它采取了一条迂回且耗能的路径,那么它就未能通过另一种测试。难点在于知道“完美”是什么样子的;在复杂多变的环境中,理想的解决方案往往是未知的,这使得判断一个智能体仅仅是表现良好还是真正达到了极致水平变得几乎不可能。
为了填补这一空白,新加坡管理大学和阿尔伯塔大学的研究人员开发了一种名为 Delta 的新型测试框架。Delta 并不试图去猜测完美的解决方案,而是使用了一种巧妙的自我比较形式。该过程始于一个标准的安全性测试,在此过程中,受检智能体会被置于一系列困难的情境中,以观察其是否会发生碰撞或违反安全规则。至关重要的是,研究人员不仅仅是在观察失败,他们还会记录智能体在这一压力测试阶段所做的每一次动作,从而创建一个详细的行为日志。这个日志成为了一个数据的宝库,包含了智能体的成功操作和失误。随后,研究人员利用这些记录的数据来训练第二个竞争智能体。这个新智能体被称为“挑战者”,它专门从原始智能体的历史中学习。由于它是通过成功与失败的混合数据进行训练的,它学会了复制优秀的环节并规避糟糕的部分,从而有效地成为了原始智能体的一个稍聪明一点的版本。
一旦挑战者准备就绪,两个智能体就会进行一场面对面的对决。它们被置于相同的起始情境中,并通过它们累积的总奖励来衡量表现。如果挑战者持续获得比原始智能体更高的分数,系统就会将其标记为一个“最优性缺陷”(optimality bug)。这种方法解决了一个测试中的重大问题:它不需要预先知道理论上的最佳解决方案。如果挑战者能够找到完成任务的更好方法,就证明了原始智能体并未做到最好。研究人员在五种不同的环境中测试了这种方法,范围从平衡小车上的杆到控制模拟跳跃机器人。他们发现,挑战者智能体(特别是使用一种称为 BCQ 的特定学习方法进行训练的智能体)在发现这些隐藏的低效问题方面非常有效。平均而言,该系统在每个环境中发现了超过 2,500 个最优性问题,发现的问题显著多于现有的测试方法。
这一发现的价值不仅在于发现错误,更在于它提供了一条改进的清晰路径。研究人员证明,由挑战者识别出的优越策略可以用于微调原始智能体,使其既更高效又更鲁棒。在若干案例中,这个过程不仅提高了智能体的得分,还完全消除了安全故障,将一个仅仅是“安全”的系统转变为一个既“安全”又“最优”的系统。这项研究证实,在安全性测试期间收集的数据(通常被视为副产品)实际上是构建更好智能体的关键资源。通过将测试过程转化为学习机会,Delta 提供了一种切实可行的方法,以确保未来的智能系统不仅可靠,而且在其设计的任务中真正表现卓越。
技术摘要:从测试中学习:针对深度强化学习智能体的自我指涉差异化测试
问题陈述
深度强化学习(DRL)在医疗保健、自动驾驶和机器人技术等复杂决策领域取得了显著成功。然而,随着这些系统在现实世界应用中的部署,确保其质量和可靠性至关重要。目前的测试方法主要侧重于检测安全性故障(例如碰撞或违反约束),往往忽略了策略最优性(policy optimality)。非最优决策会导致效率降低、经济损失以及用户信任度下降。此外,未解决的最优性问题可能会演变成安全隐患。
测试 DRL 最优性的一个基本挑战是测试预言机问题(testing oracle problem):在复杂、动态的环境中,理论上的最优解(地面真值/ground truth)通常是未知或在分析上难以计算的。由于缺乏已知的最优策略作为基准,定量评估智能体的决策是否次优变得非常困难。虽然专家进行人工评估是可能的,但并不具备可扩展性。现有的自动化方法难以生成合适的对比智能体,因为这会产生重新从头开始训练的高昂计算成本。
方法论:Delta 框架
为了填补这些空白,作者提出了 Delta(针对 DRL 智能体的差异化测试),这是一个能够自动识别安全性故障和最优性问题的统一框架。Delta 采用了一种两阶段的自我指涉方法:
安全性测试阶段:
- 对被测智能体(AUT)在多样化的场景中进行评估,以识别灾难性故障。作者在此阶段使用了最先进的黑盒模糊测试方法 CureFuzz。
- 至关重要的是,在此过程中,Delta 会记录 AUT 的交互轨迹(状态-动作-奖励-下一状态元组)。这些记录形成了一个静态数据集 D,它捕捉了广泛的行为谱系,包括在标准训练中经常遗漏的边缘情况和罕见场景。
最优性测试阶段:
- 挑战者智能体训练: Delta 不从头开始重新训练,而是使用离线强化学习(Offline RL),仅基于从 AUT 安全测试中收集到的数据集 D 来训练一个“挑战者”智能体。这利用了 AUT 本身的高质量决策历史(包括成功和失败),来加速挑战者智能体的训练。
- 差异化模糊测试: 训练好的挑战者智能体充当了自我指涉测试预言机(self-referential testing oracle)。Delta 通过比较 AUT 和挑战者从相同初始状态开始的累积奖励来进行差异化模糊测试。
- 预言机条件: 如果挑战者的累积奖励高于 AUT(即 Rchallenger>RAUT+δ),则标记为一个最优性缺陷(optimality bug)。
- 能量引导搜索: 为了高效探索状态空间,Delta 使用能量函数来优先处理种子变异。该能量是三个指标的加权和:
- 多样性(Diversity): 通过好奇心机制(固定目标网络与可训练预测器之间的预测误差)进行衡量,用以识别新颖状态。
- 遗憾度(Regret): 挑战者与 AUT 之间性能的指数级差异,突出了 AUT 显著次优的场景。
- 不一致性(Inconsistency): 通过局部敏感哈希(LSH)进行衡量,用以量化两个智能体之间的行为分歧。
核心贡献
- 新型自我指涉预言机: 本文提出了一种通过在 AUT 自身的交互数据上训练挑战者智能体来绕过预言机问题的方法,从而实现了自动化的最优性测试,而无需预定义的地面真值方案。
- 统一框架(Delta): 一个将安全性测试(使用 CureFuzz)与差异化最优性测试相结合的两阶段流水线,实现了对 DRL 智能体的全面评估。
- 实证验证: 在五个环境(CartPole, MountainCar, Acrobot, Hopper, Walker2D)和三种离线 RL 算法(BC, BCQ, CQL)中进行了广泛的实验。
实验结果
- 算法有效性: 在测试的离线 RL 算法中,**BCQ(批次约束深度 Q 学习)**在训练挑战者智能体方面表现最为出色。经过 BCQ 训练的挑战者在所有环境中都发现了最多的最优性缺陷。
- 缺陷检测: 使用 BCQ,Delta 在每个环境中平均发现了 2,518 个最优性缺陷。
- 与基准对比: 当用于差异化测试时,Delta 的表现明显优于基准安全性测试方法(MDPFuzz, CureFuzz 和 GMT)。平均而言,Delta 比表现最好的基准方法多发现了 50.2% 的最优性缺陷。它还展示了发现多样化独特缺陷集(distinct bugs)的卓越能力。
- 缺陷的效用: 识别出的最优性缺陷被用于使用保守 Q 学习(CQL)对原始 AUT 进行微调。这个“改进后的 AUT”(AUT-Improved)版本表现出一致的性能提升(例如,在 CartPole 中达到了理论最高分),并且与原始 AUT 相比,显著减少了安全性故障(在某些情况下减少了高达 100%)。
- 消融研究: 研究证实了能量函数中的三个组成部分(多样性、遗憾度、不一致性)都是至关重要的。具体而言,遗憾度被确定为最大化发现缺陷总数的最关键因素,而多样性对于发现独特的缺陷实例至关重要。
意义与主张
本文声称 Delta 有效地弥合了 DRL 系统中安全性评估与最优性评估之间的差距。通过将安全性测试数据重新用于训练挑战者智能体,该框架务实地放宽了预言机问题,使得自动化最优性测试在无需昂贵重新训练或人工专家干预的情况下变得可行。作者强调,无论结果如何,该方法都能产生价值:一个更优的挑战者暴露了特定的策略改进领域,而一个未能超越 AUT 的挑战者则提供了对 AUT 近乎最优性能的经验性确认。这项工作将 Delta 定位为增强 DRL 智能体在现实世界部署中可靠性和效率的综合工具。
每周获取最佳 machine learning 论文。
受到斯坦福、剑桥和法国科学院研究人员的信赖。
请查收邮箱确认订阅。
出了点问题,再试一次?
无垃圾邮件,随时退订。