AIモデルとプラットフォーム
EUREKA:ハイスコアの報酬設計を実現するためのコーディングによる大規模言語モデル
近年の大規模言語モデル(LLM)の進歩を考えれば、上位レベルの意思決定を順番に行う課題で、意味に基づく計画役として優れた結果を示すのは不思議ではありません。一方、複雑な低レベルの操作技能の学習に、その能力を十分に活用することは依然として困難です。現在のモデルでは、単純な技能の学習や文章による指示の作成にも相当な専門知識が必要で、人間の器用さとの間には大きな隔たりがあります。
Nvidia (NVDA )、カリフォルニア工科大学、ペンシルベニア大学などの開発者は、この隔たりを埋めるためにEUREKAを発表しました。LLMを利用して人間水準の報酬設計を目指すアルゴリズムです。コード生成、文脈内での改善、例を与えない生成を組み合わせ、報酬コードを最適化します。これを強化学習と組み合わせることで、複雑な技能や操作課題を学習できます。
本稿では、開発の観点からEUREKAの構成、動作、報酬関数の生成結果を検討します。開発者によれば、生成された関数は人間が設計したものを上回ります。また、勾配を必要としない文脈内学習によって、人間のフィードバックからの強化学習(RLHF)に新しい方法をもたらす仕組みも説明します。
EUREKAの概要
GPT-3やGPT-4などの先端的なLLMは、高レベルの意思決定の計画では優れています。しかし、ペン回しのような低レベルの操作技能には改善の余地があります。強化学習は、人間が報酬関数を慎重に設計すれば、器用さを要する課題や他の領域でも良い結果を得られます。報酬関数は望ましい行動の学習信号を与えます。実世界の課題で報酬がまばらだと学習が難しくなりますが、報酬整形によって段階的な信号を提供できます。ただし、その設計は非常に難しく、不適切な関数は意図しない行動を生みます。

EUREKA(Evolution-driven Universal REward Kit for Agent)は、次の三つを目指します。
- 報酬関数の設計で人間水準の性能を実現する。
- 手作業による報酬設計なしに操作課題を効果的に解く。
- 従来のRLHFに代わる勾配不要の文脈内学習で、より高性能で人間の目標に沿った報酬関数を生成する。
汎用性を支える設計は、進化的探索、環境を文脈として用いること、報酬に関する振り返りの三つです。まず、環境のソースコードを文脈として与え、例なしで実行可能な報酬関数を生成します。次に、各反復で複数の候補を提案し、有望なものを進化的探索で改良します。最後に、方策の学習統計から報酬品質を文章で要約し、その振り返りを使って報酬を自動で的確に修正します。次の図に全体像を示し、後続の節で詳しく説明します。

モデル構成と問題設定
報酬整形は、まばらな報酬など、直接最適化しにくい本来の目標関数に対して、学習しやすい報酬関数を構成するものです。設計者が目標関数へ問い合わせを通じてしかアクセスできないため、EUREKAは報酬設計問題(Reward Design Problem、RDP)に基づくプログラム合成として報酬を生成します。
RDPは、状態空間を持つ世界モデル、報酬関数の空間、遷移関数、行動空間から構成されます。学習アルゴリズムはマルコフ過程で方策を生成し、方策への問い合わせで取得できるスカラーの適応度によって質を評価します。目的は、学習された方策が適応度を最大化するような報酬関数を得ることです。EUREKAでは各要素をコードで指定します。課題の詳細を記述する文字列が与えられると、適応度を最大化する報酬関数のコードを生成します。
中核となるのは、候補の提案と改良を繰り返す進化的探索、例なしの実行可能な報酬生成に使う環境コードの文脈、細かな改善を可能にする報酬の振り返りです。擬似コードを次に示します。

環境を文脈として利用する
通常、LLMによる報酬設計には環境の説明を入力します。EUREKAは報酬コードを除いた生の環境コードを直接文脈として渡します。利点は二つあります。第一に、コード生成モデルはC、C++、Python、Javaなどで学習しているため、慣れた構文や形式でコードを書けます。第二に、ソースコードから環境の意味や、指定課題の報酬に適した変数が分かります。そのため、一般的な書式と報酬設計の助言だけで、実行可能なPythonコードを直接返すよう指示できます。
進化的探索
進化的探索は、最適でない報酬や実行時エラーに対処します。各反復でLLMから複数の独立した候補を生成します。候補が独立同分布なら、サンプル数が増えるほど、すべての候補に不具合がある確率は指数的に低下します。
続いて、前の反復の実行可能な関数を使い、文章のフィードバックに基づいて文脈内で変異させ、改善した関数を提案します。文脈内の改善と指示に従うLLMの能力により、変異操作を文章のプロンプトで指定できます。方策学習の要約が既存の報酬コードの修正に使われます。
報酬の振り返り
的確な修正には、生成された報酬の質を評価し、言葉で説明する必要があります。数値の適応度は全体評価を与えますが、何が成功や失敗の原因かは分かりません。そこで、方策学習の動きを自動フィードバックによって文章で要約します。各報酬関数には構成要素を個別に示すことも求め、学習中の確認時点ごとに各要素のスカラー値を追跡します。

この手順は簡単に構成できますが、報酬最適化がアルゴリズムに依存するため重要です。関数の効果は強化学習アルゴリズムの選択に左右され、同じ最適化器でもハイパーパラメータが変われば結果が異なります。EUREKAは報酬を選択的に編集し、学習アルゴリズムとより相性の良い関数を合成できます。
学習と比較基準
主要な要素は、方策学習と報酬の評価指標です。
方策学習
各課題の最終的な報酬関数には、同一の強化学習アルゴリズムと、人間が設計した報酬に合わせて調整された同一のハイパーパラメータを使います。
報酬の評価指標
課題ごとに尺度や意味が異なるため、人間の結果で正規化したスコアを報告します。本来の目標指標に基づいて、専門家の報酬関数との全体的な比較が可能になります。
比較対象はL2R、Human、Sparseの三つです。
L2R
L2Rは、テンプレート型報酬を生成する二段階のLLMプロンプト方式です。最初のモデルが自然言語の環境と課題を基にテンプレートを埋めます。次のモデルがその動作説明を、手作業で書かれた報酬APIの基本処理を呼び出して報酬関数を作るコードに変換します。
Human
強化学習研究者が書いた元の報酬関数で、高度な人間の報酬設計を代表します。
Sparse
適応度関数に相当するまばらな報酬で、生成された報酬の質を評価するために用います。
結果
人間の報酬との比較、反復に伴う改善、新しい報酬の生成、的確な改善、人間のフィードバックの利用を評価します。
人間が設計した報酬を上回る
図は各ベンチマークの集計結果です。EUREKAはDexterityとIsaacの課題で人間の報酬と同等以上の結果を得ます。L2Rは低次元課題では同程度ですが、高次元課題では大きな差があります。

反復による継続的な改善
各反復で性能が向上することは、EUREKAの重要な特徴です。結果を次の図に示します。

文脈内の進化的探索により、より良い報酬を生成し続け、最終的には人間が設計した報酬を上回ります。
新しい報酬の生成
新規性は、すべてのIsaac課題で人間とEUREKAの報酬の相関を求めて調べます。相関と人間基準で正規化したスコアを散布図に示し、各点が一つの課題のEUREKA報酬を表します。人間の関数との相関が弱くても、より良い結果を出す関数が多く生成されます。

的確な改善
振り返りの重要性を調べるため、開発者はその要素を取り除き、フィードバックを時点ごとの数値だけにしたアブレーション実験を行いました。Isaac課題で平均正規化スコアは約29%低下しました。
人間のフィードバックの利用
自動設計に加え、勾配不要の文脈内学習によるRLHFの手法を導入します。さまざまな入力を取り込み、性能が高く人間の目標に沿う報酬を生成します。主な観察結果は二つです。
- 人間の報酬関数を利用し、さらに改善できる。
- 振り返りに人間のフィードバックを用いると、意図に沿った行動を促せる。

図では、人間の報酬を初期値にすると、その質にかかわらず性能と効率が大きく向上しています。初期報酬の品質は文脈内での改善能力に決定的な影響を与えていません。

最後の図は、人間のフィードバックにより報酬を変更し、人間の意図により沿った方策も得られることを示します。
まとめ
EUREKAはコード生成、文脈内での改善、例なしの生成を使って報酬コードを最適化します。強化学習と組み合わせることで、複雑な技能や操作課題を学習します。人間の介入や課題専用のプロンプト設計なしに多様な課題で人間水準の報酬を生成し、段階的に難度を高める学習による複雑な課題の習得を強みとします。
高い性能と汎用性は、進化的アルゴリズムとLLMの組み合わせが、拡張可能で一般的な報酬設計手法になり得ることを示します。この知見は他の開放的な探索問題にも応用できる可能性があります。












