G検定

最近話題のオフライン強化学習 〜危険な作業を行うロボットの制御に有効?〜

この記事では、「オフライン強化学習」の特徴と強みを解説していきます。最新技術であるため、最近はG検定での出題も目立っています。

オフライン強化学習の一言説明

一般的な強化学習は、実際に環境と作用しながら学習する「オンライン強化学習」と呼ばれます。

オフライン強化学習(Offline reinforcement learning)過去に集めたデータのみを使って強化学習を行う手法です。直接環境に作用する危険や費用を伴う医療、自動運転、ロボティクス等への実応用で期待を集めています。

オンライン強化学習の課題

オンライン強化学習(一般的によく知られている強化学習)では、エージェント(学習主体)が環境との相互作用をし、試行錯誤や探索を通じて、意思決定のルール、つまり「最終的に環境から最大の報酬をもらうために、どんな行動をとるべきか」を学習することが目的です。その際に、ある目的関数を最適化する方向性で学習をしていきます。この目的関数の設計次第で様々なシステムにおける制御や意思決定を担うことができます。

強化学習は、AlphaGoなど難しいゲームの世界で目まぐるしい活躍を見せてきました。近年では、ロボットの制御など実社会への適用にも力が入れられています。しかし、強化学習の実社会への応用が実に難しいのです。その理由の1つに、学習に必要な環境との相互作用に伴うリスクやコストが挙げられます。

強化学習では、最適な意思決定を獲得できるまでに多くの非最適な選択による環境との作用を必要とします。例えば、広告配信の最適化を行う場合、売上の損失が発生する為、大胆に試行錯誤を行うことが難しいのです。医療関連のケースでは、人の命と健康が関わる為、誤った投薬や施術をするような最適化を行うことは不可能です。

シミュレーションを用いた強化学習も難しい

そこで、代わりになる手段がシミュレーションの活用です。シミュレータ上で膨大な回数の試行を繰り返すことで最適(に極力近い)なエージェントを訓練することが期待できます。例えば、sim2realという研究領域では、シミュレーション上で学習した深層学習モデルを実環境で利用するために使われる手法です。 シミュレーションを用いてあらかじめ方策(policy)を学習し、その学習した方策を実世界に適用する手法です。

しかし、実世界においては現実的なシミュレーションは困難です。sim2realの課題は、シミュレーションを用いて訓練したロボットが実環境でうまく適応させることが困難であることです。これはパフォーマンスギャップと呼ばれ、実世界のすべての側面を正確に把握することはできないために発生します。

この問題に対応すべく、シミュレーションを現実世界の環境に近づけるための工夫が取られます。ドメインランダマイゼーション(Domain Randomization; 環境乱択化)が用いられます。ドメインランダマイゼーションでは、環境の様々なパラメータをランダムに変更させた(ばらつきを与えた)パターンを大量に用意し、多様な環境の全てにおいて性能を発揮できるモデルを学習します。シミュレーション上で学習したモデルを実環境で使用した場合に、モデルはシミュレーション環境に過学習してしまい、性能が劣化してしまうという問題を避けるための手法です。例えば、歩行ロボットのシミュレーション環境における地形形状を表すパラメータのランダム化を適用します。

https://www.jstage.jst.go.jp/article/pjsai/JSAI2021/0/JSAI2021_2Yin509/_pdf

しかし、もう1つの課題は、シミュレーションの実装自体も時間と予算が多くかかってしまうことです。

オフライン強化学習の導入

以上のチャンレンジから生まれる新しい方針は、まさにオフライン強化学習です。実環境から集められた、現実とのギャップの少ないデータを使って直接学習を行う手法です。シミュレーションでうまくいったモデルを実環境にデプロイした際に性能を発揮できるかどうかを有効に確認する手段も必要です。ここで、実環境から集めた過去のデータを使って性能評価を行います。オフライン強化学習では(手動やルールベースも含む)過去に集められたデータのみを使って、実環境と作用せずに、オフラインで完結して最適な方策を学習します。

最適方策の選択と評価においては、複数の与えられた方策に対し、「仮にオンライン(実環境)で動かしたときの方策の性能」を過去のデータのみを使って評価します。これは「オフ方策評価」とも呼ばれます。

オフライン強化学習の代表的な手法として、Conservative Q-Leaning(CQL) と、その派生モデルのCOMBO、 S4RLが挙げられます。

現在、オフライン強化学習は比較的単純なタスクで研究開発中に段階であり、完全な社会適用の前に、技術的な課題を乗り越える必要があります。オフライン強化学習を使えると様々な困難なタスクが低コスト、低リスクでこなせるため注目が寄せられています。

※ちなみに、オフライン強化学習の別名は、バッチ強化学習(Batch (constrained) reinforcement learning)です。

 

執筆担当者:ヤン ジャクリン (GRI 分析官・講師)

yan
データ分析官・データサイエンス講座の講師