OpenAI Procgen Benchmark 发布

OpenAI 发布了 Procgen Benchmark,这是一套包含 16 个程序化生成环境的套件,旨在衡量强化学习 (RL) 智能体将技能泛化到未见过的关卡的能力。该基准测试解决了经典 RL 基准测试中常见的过拟合问题,即智能体可能会记住特定的轨迹,而不是学习稳健且可泛化的技能。

Procgen Benchmark 概述

Procgen Benchmark 由 16 个独特的环境组成,允许生成不同的训练集和测试集。这种结构是评估泛化能力的理想选择,因为它确保了智能体无法简单地通过记忆环境来获胜。该基准测试还旨在评估样本效率,因为每个环境中的多样化挑战要求智能体学习稳健的策略才能取得成功。

设计原则

所有 Procgen 环境都是根据四个关键设计原则构建的:

  • 高多样性:环境生成逻辑被赋予了最大的自由度来创建各种关卡,从而为智能体带来有意义的泛化挑战。
  • 快速评估:环境经过优化,可以在单个 CPU 核心上每秒执行数千步。基准智能体经过校准,在 200M timesteps 后可以取得显著进展。
  • 可调节难度:提供两种设置——简单 (easy) 和困难 (hard)。困难设置是报告结果的标准,而简单设置所需的训练资源大约只有八分之一。
  • 视觉识别与运动控制:环境模仿 Atari 和 Gym Retro 游戏的风格,侧重于在观测空间中识别关键资产并执行适当的运动响应。

评估泛化与过拟合

OpenAI 使用 Proximal Policy Optimization (PPO) 在从 100 到 100,000 个关卡的训练集上进行了研究。研究结果揭示了关于 RL 泛化的几个关键见解:

  • 对小规模数据集的过拟合:在几乎所有环境中,智能体都会对小规模训练集产生强烈的过拟合。在某些情况下,智能体需要多达 10,000 个关卡才能缩小泛化差距。
  • 隐式课程学习:出现了一种趋势,即随着训练集规模的扩大,训练性能有所提高。这表明,更大、更多样化的关卡集合提供了一种隐式课程,有助于智能体在训练集本身内部学习泛化。
  • 进步的错觉:在针对确定性关卡进行消融研究时,智能体在训练期间似乎在取得进展,但在测试关卡上完全失败。这突出了使用多样化环境分布以避免因记忆而导致的“进步的错觉”的关键重要性。

技术实现

对于研究人员和开发人员,可以通过 pip install procgen 获取该基准测试。OpenAI RL 团队将其作为其标准研究平台。OpenAI 发现,所有 Procgen 环境都需要在 500–1000 个不同的关卡上进行训练,智能体才能开始泛化到新关卡。

Sources