1.RLDS: 強化学習用データセットの生成と共有をやりやすくするツール群(2/2)まとめ
・RLDSはEnvLoggerやRLDS CreatorなどのツールでRL用データの収集を楽にする
・RLDSはデータセット共有ライブラリであるTFDSと統合されており共有を楽にする
・RLDSは各RL用のデータ変換ライブラリを提供しておりデータの使用を楽にする
2.RLDSの概要
以下、ai.googleblog.comより「RLDS: An Ecosystem to Generate, Share, and Use Datasets in Reinforcement Learning」の意訳です。元記事は2021年12月1日、Sabela RamosさんとLéonard Hussenotさんによる投稿です。
環境と相互作用しているエージェントを表現したかったアイキャッチ画像のクレジットはPhoto by Luku Muffin on Unsplash
データの作成
研究者は、あらゆる種類のエージェントが行う環境との相互作用を記録することによってデータセットを作成します。
その有用性を保持するために、生データは、生成されたすべての情報を記録し、データ間の時間的関係(例えば、ステップとエピソードの順序)を維持し、データセットが将来どのように使われるかを一切仮定せずに、データの欠損を伴わない形式で保存することが理想です。そこで、エージェントと環境の相互作用をオープンな形式で記録するためのソフトウェアライブラリEnvLoggerを公開しました。
EnvLoggerはエージェントと環境の相互作用を記録し、長期保存するための環境ラッパー(wrapper)です。EnvLoggerはRLDSのエコシステムにシームレスに統合されていますが、よりモジュール性を高めるために単独でライブラリとして使用できるように設計されています。
多くの機械学習の現場と同様に、RLのための人間のデータを収集することは、時間と労力のかかるプロセスです。これに対処するための一般的なアプローチは、クラウドソーシングを利用することですが、これにはユーザーフレンドリーな環境へのアクセスが必要で、多数の参加者に規模を拡大することが困難な場合があります。
RLDSエコシステムの中で、私たちはRLDS Creatorと呼ばれるウェブベースのツールをリリースしており、ブラウザを通じて人間が制御可能なあらゆる環境への普遍的なインターフェースを提供しています。ユーザーは、例えば、オンラインでAtari社のゲームをプレイするなど、環境と対話することができ、対話は記録され、分析またはエージェントを訓練するために後でRLDSを使用してロードバックできるように格納されます。
データの共有
データセットの作成には負担がかかることが多いため、より広い研究コミュニティで共有することで、以前の実験の再現性を高めるだけでなく、様々なシナリオで新しいアルゴリズムの実行や検証が容易になり、研究を加速させることができるのです。
そのため、RLDSは機械学習コミュニティ内でデータセットを共有するための既存のライブラリであるTensorFlow Datasets(TFDS)と統合されています。データセットがTFDSの一部になると、グローバルなTFDSカタログにインデックスが付けられ、tfds.load(name_of_dataset)を使用することでどの研究者もデータにアクセスできるようになり、TensorflowまたはNumpy形式でデータがロードされるようになります。
TFDSは元のデータセットの基本フォーマットに依存しないため、RLDS互換のフォーマットを持つ既存のデータセットであれば、たとえそれがEnvLoggerやRLDS Creatorで元々生成されていなくても、RLDSで使用することが可能です。また、TFDSでは、ユーザーは自分のデータの所有権と完全な制御を維持し、すべてのデータセットにはデータセット作成者のクレジットを示す引用文が含まれています。
データの利用
研究者は、様々な機械学習アルゴリズムの分析、可視化、トレーニングのためにデータセットを使用することができます。
研究の際は前述のように保存されている方法とは異なる形式でデータを消費する可能性があります。例えば、R2D2やR2D3のように完全なエピソードを消費するアルゴリズムもあれば、Behavioral CloningやValueDiceのようにランダムなステップのバッチを消費するアルゴリズムもあるためです。
これを可能にするために、RLDSは各RLのシナリオ用の変換ライブラリを提供しています。これらの変換は、RLデータセットの入れ子構造を考慮して最適化されており、これらの操作の一部を高速化する自動バッチ処理も含まれています。これらの最適化された変換を使用することで、RLDSユーザーはいくつかの高度な機能を簡単に実装することができ、開発されたパイプラインはRLDSのデータセット間で再利用することが可能です。
変換の例としては、選択したステップフィールド(またはサブフィールド)の全データセットにわたる統計情報や、エピソード境界(episode boundaries)を尊重した柔軟なバッチ処理などがあります。このチュートリアルで既存の変換を確認し、GithubのColab「RLDS: Examples」でより複雑な実例を確認することができます。
利用可能なデータセット
現在、TFDSには以下のデータセット(RLDSと互換性あり)が登録されています。
・D4RLのサブセットとMujocoとAdroitのタスク
・RLUnplugged DMLab、Atari、Real World RLデータセット
・RLDSツールで生成された3つのRobosuiteデータセット
私たちのチームは、近い将来このリストを迅速に拡張することを約束し、RLDSとTFDSへの新しいデータセットの外部からの貢献を歓迎します。
まとめ
RLDSのエコシステムは、RLや逐次的意思決定問題における研究の再現性を高めるだけでなく、データの共有や再利用を容易にすることで、新たな研究を可能にしています。RLDSが提供する機能により、すべての情報を保持し、より幅広いエージェントとタスクをカバーする、構造化されたRLデータセットを公開する流れが始まることを期待しています。
謝辞
この投稿の著者の他に、この作業はパリとチューリッヒの Google リサーチチームと Deepmind の協力で行われました。
特にSertan Girgin, Damien Vincent, Hanna Yakubovich, Daniel Kenji Toyama, Anita Gergely, Piotr Stanczyk, Raphaël Marinier, Jeremiah Harmsen, Olivier Pietquin そして Nikola Momchevが協力しています。
また、フィードバックを提供し、プロジェクトに貢献してくれた他のエンジニアや研究者の協力に感謝します。特に、George Tucker, Sergio Gomez, Jerry Li, Caglar Gulcehre, Pierre Ruyssen, Etienne Pot, Anton Raichuk, Gabriel Dulac-Arnold, Nino Vieillard, Matthieu Geist, Alexandra Faust, Eugene Brevdo, Tom Granger, Zhitao Gong, Toby Boyd そして Tom Small。
3.RLDS: 強化学習用データセットの生成と共有をやりやすくするツール群(2/2)関連リンク
1)ai.googleblog.com
RLDS: An Ecosystem to Generate, Share, and Use Datasets in Reinforcement Learning
2)arxiv.org
RLDS: an Ecosystem to Generate, Share and Use Datasets in Reinforcement Learning
3)github.com
google-research / rlds