Hugging Face Transformers における Decision Transformer の統合
TL;DR
Hugging Face は Decision Transformer を transformers ライブラリと Hugging Face Hub に統合しました。この統合により、研究者は意思決定をシーケンスモデリング問題として扱うことで、オフライン強化学習(RL)を適用でき、トレーニング中にリアルタイムで環境と相互作用する必要がなくなります。
オフライン強化学習 と オンライン RL の比較
オフライン強化学習は、エージェントが環境と試行錯誤で相互作用するのではなく、他のエージェントや人間のデモンストレーションから収集された静的データセットを用いて最適なポリシーを学習できるようにします。
対照的に、オンライン RL はエージェントが環境から直接データを収集することを要求します。このアプローチは、高忠実度シミュレータや実世界での直接的な相互作用を必要とすることが多く、これらは高コストであったり構築が複雑であったり、エージェントがシミュレータの欠陥を悪用した場合に安全性が確保できないことがあります。
オフライン RL はこれらのリスクを回避できますが、訓練セットにデータが存在しない状態や行動に直面する「反事実的クエリ問題」に直面します。
Decision Transformer のアーキテクチャ
Decision Transformer は強化学習を条件付きシーケンスモデリング問題として抽象化します。累積報酬(リターン)を最大化する価値関数をフィッティングする従来の RL 手法の代わりに、期待リターン、過去の状態、過去の行動に基づいて将来の行動を生成するために Transformer アーキテクチャを使用します。
技術的ワークフロー
- 入力シーケンス: モデルは最後の K タイムステップを入力として受け取り、Return-to-go、State、Action の3つの要素で構成されます。
- 埋め込み: これらの入力は、ベクトル状態の場合は線形層、画像フレームの場合は CNN エンコーダを通して処理されます。
- 自己回帰予測: GPT-2 ベースのモデルがこれらのトークンを処理し、自己回帰的に将来の行動を予測し、状態・行動・報酬の結合分布を効果的にモデリングします。
報酬最大化のパラダイムを生成的軌道モデリングへと転換することで、Decision Transformer は特定の目標リターンを達成するための一連の行動を生成します。
Implementation in 🤗 Transformers
Decision Transformer は現在 transformers ライブラリで利用可能で、Gym 環境内の連続制御タスク(Hopper、Walker2D、Halfcheetah など)向けの 9 つの事前学習済みモデルチェックポイントが同梱されています。
モデルのロードと使用方法
ユーザーは DecisionTransformerModel クラスを使用して事前学習済みモデルをロードできます。
from transformers import DecisionTransformerModel
model_name = "edbeeching/decision-transformer-gym-hopper-expert"
model = DecisionTransformerModel.from_pretrained(model_name)
自己回帰的アクション予測
モデルが自己回帰的であるため、時間ステップ t の予測は前の時間ステップの出力に条件付けられます。実装では、入力(states、actions、returns-to-go、timesteps)を準備し、モデルの max_length に合わせてパディングした上で、次のアクションを予測するためにモデルに通す必要があります。
ターゲットリターンによるパフォーマンス制御
リターン条件付きオフライン RL の主な利点の一つは、ターゲットリターンを調整することでポリシーのパフォーマンスを制御できる点です。これにより、エージェントの難易度を動的に調整でき、マルチプレイヤー環境で対戦ボットを作成する際に特に有用です。
Hugging Face における Deep RL の今後のロードマップ
Hugging Face は以下の取り組みで Deep Reinforcement Learning エコシステムへのサポートをさらに拡大する計画です。
RL-baselines3-zooの統合。rl-trained-agents(stable-baselines3 使用)からの事前学習済み RL エージェントのコレクションを Hub にアップロード。- 追加の Deep RL ライブラリの統合。
- Atari 環境向けの Convolutional Decision Transformers の実装。