OpenAI Procgen Benchmark リリース
OpenAIは、強化学習(RL)エージェントが未知のレベルに対してスキルを汎化する能力を測定するために設計された、16個の手続き型生成環境のスイートであるProcgen Benchmarkをリリースしました。このベンチマークは、エージェントが堅牢で汎用的なスキルを学習するのではなく、特定の軌跡を暗記してしまうという、従来のRLベンチマークにおける一般的な問題である過学習に対処するものです。
Procgen Benchmark の概要
Procgen Benchmarkは、個別のトレーニングセットとテストセットの生成を可能にする16個のユニークな環境で構成されています。この構造は、エージェントが単に環境を暗記することを防ぐため、汎化性能の評価に理想的です。また、このベンチマークはサンプル効率の評価も目的として設計されており、各環境内の多様な課題が、エージェントが成功するために堅牢なポリシーを学習することを要求します。
設計原則
すべてのProcgen環境は、4つの主要な設計原則に基づいて構築されています:
- High Diversity(高い多様性): 環境生成ロジックに最大限の自由度が与えられ、多様なレベルを作成することで、エージェントに意味のある汎化の課題を提示します。
- Fast Evaluation(高速な評価): 環境は、単一のCPUコア上で毎秒数千ステップを実行するように最適化されています。ベースラインのエージェントは、200Mタイムステップ後に大きな進歩が見られるように調整されています。
- Tunable Difficulty(調整可能な難易度): easyとhardの2つの設定が利用可能です。hard設定は結果報告の標準ですが、easy設定はトレーニングに約8分の1のリソースを必要とします。
- Visual Recognition and Motor Control(視覚的認識と運動制御): 環境はAtariやGym Retroゲームのスタイルを模倣しており、観測空間における主要なアセットの識別と、適切な運動応答の実行に焦点を当てています。
汎化と過学習の評価
OpenAIは、100から100,000レベルのトレーニングセットを用いて、Proximal Policy Optimization (PPO) を用いた研究を行いました。その結果、RLの汎化に関するいくつかの重要な知見が得られました:
- Overfitting to Small Sets(小規模セットへの過学習): エージェントは、ほぼすべての環境において、小規模なトレーニングセットに対して強く過学習します。場合によっては、汎化のギャップを埋めるために10,000レベルものトレーニングが必要になります。
- Implicit Curriculum(暗黙的なカリキュラム): トレーニングセットが大きくなるにつれて、トレーニングのパフォーマンスが向上するという傾向が見られました。これは、より大きく、より多様なレベルのセットが、エージェントがトレーニングセット内であっても汎化を学習するのに役立つ暗黙的なカリキュラムを提供することを示唆しています。
- The Illusion of Progress(進歩の錯覚): 決定論的なレベルを用いたアブレーション研究では、エージェントはトレーニング中に進歩しているように見えましたが、テストレベルでは完全に失敗しました。これは、記憶による進歩の錯覚を回避するために、多様な環境分布を使用することの極めて重要な重要性を強調しています。
技術的な実装
研究者や開発者にとって、このベンチマークは pip install procgen を通じて利用可能です。OpenAIのRLチームは、これを標準的な研究プラットフォームとして使用しています。OpenAIは、すべてのProcgen環境において、エージェントが新しいレベルに汎化し始める前に、500〜1000個の異なるレベルでのトレーニングが必要であることを発見しました。
Sources
- OriginalProcgen Benchmark