エンジニアの吉田です。
ICLR2018の参加報告を計4回にわたって行なっており、今回は最後となる4回目にあたります。

第1回の報告では、ICLR2018の概要(ハコ)と強化学習の研究領域の簡単な紹介をしました。第2回からは、ICLR2018で発表された論文(ナカミ)の紹介をしています。第2回では強化学習における転移に関して、第3回では強化学習におけるカリキュラム生成と模倣学習に関して整理し、また、関連する論文を紹介しました。
第2回と第3回は強化学習や逆強化学習を運動制御に用いている論文を紹介しました。

今回は、強化学習と逆強化学習を運動制御以外の分野に応用している論文を紹介します。まず、強化学習と逆強化学習の他分野への応用についてまとめます。その後、ICLR2018において発表された逆強化学習を他分野へ応用した論文を紹介します。

▼目次

\vspace{5px}

強化学習の他分野への応用

強化学習は、環境から得られる割引累積報酬を最大化するように状態sから行動aへの写像(方策)を学習するフレームワークです。
強化学習の問題設定では、環境の仕組み(r(s,a)P(s'|s,a))はブラックボックスになっている事がほとんどです。その場合、報酬は行動をして初めて分かる値です。また、現在の行動が将来得られる報酬に影響を与えるがその因果関係は明らかではありません。そのため、方策をわずかに変化させた場合に最大化の対象である将来にわたって得られる割引累積報酬がどの程度変化するかを正確に予測することはできません。
そのため、強化学習の手法は環境の仕組みが明らかでない状態から始めて手探りでも割引累積報酬を最大化できるように開発されてきました。

一方で、教師あり学習は目的関数を最大化するように入力xから出力yへの写像を学習させるフレームワークです。
教師あり学習では、入力xに対する正解の出力y(教師ラベル)が与えられ、対応関係が明瞭な形で学習が行われます。そのため、写像をわずかに変化させた場合に目的関数がどの程度変化するかが分かりやすいという特徴があります。対応関係が明瞭でかつ教師データを大量に準備可能な場合に教師あり学習は非常に有用な学習手法です。目的関数の変化量は目的関数を写像のパラメータで微分することで得ることができます。

以下の表は強化学習と(画像分類を例とした)教師あり学習を比較したものです。

 強化学習教師あり学習(画像分類)  
入力状態画像
出力行動予測クラス
出力に対するフィードバック報酬(ブラックボックス)正解クラス(参照可)
目的関数割引累積報酬クロスエントロピー
写像の変更が評価関数
に与える影響の予測

上述したようにほとんどの教師あり学習の手法は正解データを用意でき、かつ、目的関数が微分できることを前提に作られています。

近年発展が著しい画像認識や自然言語処理、音声信号処理といった分野では教師あり学習の問題設定で解けるタスクが多く扱われてきました。
しかし、そのような分野においても上述した前提を満たさないタスクが存在します。

そのため、正解データの用意や目的関数の微分可能性を前提としない強化学習が運動制御以外のこうした分野でも利用されはじめています。

画像キャプション生成というタスクを題材に整理します。このタスクは、自動で画像に説明文を付与させるタスクです。

Googleのキャプション生成の論文で生成されたキャプション[Vinyals et al., 2015]
画像キャプション生成では、従来、教師あり学習のアプローチが取られることがほとんどでいた。すなわち、1つの画像に対して1つの正解キャプションを用意して、画像とキャプションのペアをもとに教師あり学習するアプローチがしばしば取られていました。
そこでの評価は、複数の参照文を用意して、参照文と生成されたキャプションの一致度を測ることで行われてきました。
しかし、一致度はキャプションが生成されるまで評価ができず、また、キャプション生成をする際にネットワークの出力である確率値から単語をサンプリングしているため、評価関数を直接微分することもできません。
この課題は、行動全体が終わるまで行動全体での累積報酬の評価が難しく、また、報酬がブラックボックスで微分できないという強化学習の課題に合致しております。そのため、強化学習手法を用いれば評価指標を直接最適化できます。
MIXER[Ranzato et al., 2015]という手法を提案した論文では、画像キャプション生成のタスクを強化学習タスクに捉えなおしています。具体的には、キャプション対象の画像を状態s、生成文行動a、生成文の評価値を報酬rとして、強化学習を用いてキャプション生成をしています。ただし、生成文という行動空間は莫大で探索が非常に困難なため、初めは教師あり学習して徐々に強化学習に切り替えるという事を行っています。余談ですが、この教師あり学習した後に強化学習するアプローチは、初期のAlphaGo[Silver et al., 2016]でも採用されており、Alpha Goでは、プロ棋士の棋譜を読み込んで教師あり学習してから自己対戦による強化学習が行われていました。

他の応用例として、ニューラルネットワークの構造の自動最適化(Neural Architecture Search(NAS))に強化学習が使われる事例があります。ディープラーニングの手法は調整すべきハイパーパラメータが多いです。さらに、学習しきるまでに少なくない時間を要します。そのため、従来、ハイパーパラメータの調整はしばしばエンジニアの勘所に従い、行われてきました。NASはこうしたハイパーパラメータの調整を自動で最適化するものです。

NASを強化学習として捉えるにはどうすべきでしょうか。キャプションの評価値を報酬、生成文を行動と捉えて強化学習を使用したのと同様に、機械学習タスクの最終的な性能を報酬、ハイパーパラメータを行動と捉えることで、強化学習をハイパーパラメータの最適化に使用することができます。
ニューラルネットワークの構造を含めハイパーパラメータをどう変化させたら最終的な性能がどう変わるのかを数理的にモデル化することは一般的に非常に難しいことです。最終的な性能は基本的にはそのハイパーパラメータを試してみないとわかりません。この最後までやってみないと分からない要素強化学習によってうまく扱おうというアプローチです。ちなみに、Googleクラウド上でNASを提供するサービスであるCloud AutoML理論的背景となっている論文でも強化学習を用いています。

この強化学習を活用したNASのタスクでは、状態sは存在せずネットワーク構造をRNNを用いて生成します。キャプション生成の論文では行動空間が膨大で教師あり学習が必要でしたが、取りうる構造を限定して方策に選択させることで強化学習のみを用いて学習しています。方策は画像認識タスクであれば、CNNのフィルタの種類と数、スキップコネクションをするかどうかを出力します。

CNNのハイパーパラメータを出力する、RNNを用いた方策。1つ1つの行動は離散的な選択肢(3つか4つ)に限定されている[Zoph & Le, 2016]。
結果として画像認識と自然言語処理のタスクにおいて最先端の手法と同程度の構造を発見しています。

強化学習によって得られたCNNのアーキテクチャ[Zoph & Le, 2016]。
ここまで紹介した2つの研究は、強化学習手法の持つ「報酬がブラックボックスであり、目的関数が微分できない問題を解くことができる」という利点に注目して、強化学習を他分野に応用していました。
しかし、強化学習の強みには、エージェントの行動によって状態が次々と遷移していくマルコフ決定過程(MDP)において「将来への現状態での行動の影響を考慮して学習できる」という利点もあります。キャプション生成の論文では「作ったキャプションによってまた新しい画像が得られてそれにキャプションをつけ・・」という問題にはなっていませんし、NASの論文では状態の定義さえありません。

そこで、強化学習の枠組みがMDPにうまく対処できるという利点に着目して、逆強化学習を系列データの予測に用いる研究を以降紹介します。

逆強化学習の他分野への応用

第3回で解説したように、逆強化学習はエキスパート軌道から報酬を推定する手法です。逆強化学習によって報酬を復元しつつ強化学習をすると、エキスパート軌道を模倣することができます。
これを応用して、系列データの遷移をMDPとして、教師となる系列データをエキスパート軌道として捉えることで、自然な系列データの挙動を学習し、将来のデータの予測や生成を行う研究がなされています。

一例として、動画の将来フレームや将来フレームの情報の予測に逆強化学習を応用した論文を紹介します。
この論文では報酬と方策の学習を交互に行うGenerative Adversarial Imitation Learning(GAIL)という手法を用いています。第3回で紹介したように逆強化学習と強化学習を使う模倣学習は教師あり学習の模倣学習と比べて、エキスパートのデータ数が少なくて済む、強化学習によって新しい状態をエージェントが経験しそれに報酬がフィードバックとして与えられるのでエキスパート軌道から外れた状態でもロバストに模倣できるというメリットがあります。
この論文以前の動画フレーム予測の論文では主に短い期間の予測、手設計の特徴量を必要とする特定のタスクしか扱っていないという問題がありました。この論文では、逆強化学習の枠組みにより長期間の模倣ができ、深層学習により特徴量を自動抽出できるという2つのメリットがあるGAILを用いてこれらの問題を解決しています。現時点のフレームを状態、次時点のフレームを行動として動画をMDPとしてとらえて逆強化学習と強化学習を適用しています。

手法概略図。状態行動ペアの訪問分布が一致するように模倣学習し、テスト時は方策をロールアウトして予測する[ Zeng et al., 2017]。
この手法を数字が動くMoving MNISTというデータセットに適用した結果は以下の図になります(論文では他にもテレビドラマのデータセットなどで次フレームの行動を分類するなどの抽象度の高いタスクも行っています)。

Moving MNISTのフレーム予測の結果。正確に明瞭な画像を生成できている[ Zeng et al., 2017]。
GANはGAILにおいて割引率を0して即時報酬のみを稼ぐように方策を学習したもの、L1は方策の損失に教師フレームと生成フレームとのL1ノルムを用いて学習したものになります。
GANとの比較から割引累積報酬を用いて将来生成する画像遷移の良し悪しまで考慮することが効いていること、LSTMとL1との比較からAdversarial Lossが効いていることが分かります。また、教師あり学習のLSTMより逆強化学&強化学習の本手法がロバストに模倣できることは、模倣学習においてBehavioral Cloningより逆強化学習&強化学習の模倣がロバストであることに対応しています。

\vspace{5px}
ここまで強化学習や逆強化学習がどのように他分野に応用されるか紹介しました。
まとめると、

  • 強化学習は、微分できない目的関数を最適化するために
  • 逆強化学習は、誤差蓄積を防いで割引累積報酬を最大化するために

用いられる事が多いです。

ICLR2018の逆強化学習を他分野へ応用した論文

最後に、ICLR2018のオーラルで発表された逆強化学習を集団の行動予測に用いたLearning Deep Mean Field Games for Modeling Large Population Behavior [Yang et al.]という論文を紹介します。

Learning Deep Mean Field Games for Modeling Large Population Behavior [Yang et al.]

問題設定

集団行動の時系列予測に関する論文です。
ある離散状態上の人口分布が時系列で変化していくときにその変化を予測することが目的です。具体的にはツイッターである複数のトピックをつぶやく人口の移ろいを予測します。
人口分布は、例えば3つのトピックを呟いた人が20人,50人,30人だった場合、[0.2, 0.5, 0.3]というベクトルで表されます。ベクトルの要素の値がどのように時間変化していくのかを予測します。

集団行動には以下のような特徴を持つglobal-local feedbackによって形成されていくと考えられます。

  • 人口分布と一人一人の行動の間にインタラクションがある
  • 個人の行動は報酬によって駆動される

手法

集団行動の時系列予測や理解をする手法はモデルフリーとモデルベースの2つが考えられますが、それぞれ欠点があります。
モデルフリー

  • 手法:RNN等を使用
  • 欠点:エージェントの行動や動機を説明できない

モデルベース

  • 手法:微分方程式やMean Field Games
  • 欠点:データに基づいて学習する手法がない

この論文は以下のステップで、Mean Field Games(MFG)を機械学習とつなげてデータに基づいて学習するモデルベースの手法を提案します。

  1. Mean Fieldモデルのモデル推定を最適化問題として定式化して、MFGとMDPをつなげる
  2. MDPにおいて用いられる逆強化学習をMFGにも用いて集団行動の報酬を推定し、それに基づいてForward Dynamicsを学習して予測する

Mean Field Games

MFGは以下の2つの方程式で記述されます。
Backward : V_i^n=max{P_i}\right{\sum_{j=1}^dP_{ij}\left[\ r_{ij}(\pi-n, P_i) + V_j^{n + 1} \right]\left}
Forward : \pi_j^{n + 1}=\sum_{i=1}^n \pi_i^n
ここで、
\pi^n \in R^d:時刻nにおけるd個の離散トピック上の人口分布
P^n : 遷移行列。P_{ij}^nは時刻nでトピックiにいる人でトピックjに移る人の割合を表します。
r_{ij}(\pi^n, P_i) : 人口分布\pi^nにおいてトピックiのP_{ij}^nの割合の人々がトピックjに移動したとき得られる報酬

MFGをdataから学習する

集団を1つのエージェントとして捉えてMFGの要素をMDPにおける状態・行動・報酬・状態遷移モデルと対応させる
状態:人口分布\pi_n
行動:状態遷移行列P^n
報酬:R(\pi^n, \P^n)=\sum_{i=1}^d \pi_i^n \sum_{j=1}^d P_{ij}^n r_{ij}(\pi^n,P_i^n)
状態遷移モデル:決定的な状態遷移モデル\pi^{n + 1}=P^n \pi^n

また、MFGのトピックごとの最適価値関数V_i^{n}とMDPの最適価値関数V(\pi^n)が一致することが論文内で示されています。
よってこのMDPにおいて逆強化学習をすれば報酬を得ることができ、学習した報酬を基に強化学習を行えば人口分布の推移を予測できます。
報酬の学習は第3回で紹介しましたMaxEntIRLのサンプリングベース版であるGuided Cost Learning[Finn et al., 2016]を用いて学習し、方策はシンプルなActor-Critic手法で学習します。

実験結果

実験設定は以下の通りになっています。
ユーザー数:406人
トピック数d:15。トピックのindexは一日の初めに人気の高い順にナンバリング
タイムステップ:16ステップ/時間。9時から深夜までの16時間に1回人口分布を確認
エピソード数:27日分。訓練データとして21日分の軌道を用いて、残り6日分をテストデータに
ベースライン手法:Vector Auto Regression(VAR)とRNNの2つのモデルフリー予測手法

下図のような結果になり、モデルベースである提案手法がよくデータの傾向を見抜いていることが分かる。例えば、一番人気のトピック0は朝から夜にかけて人口が増加し、夜になると急に減少することがよく捉えられています。

提案手法を用いてトピックの人口分布遷移を予測した結果。

\vspace{3px}
ICLR2018参加報告の第4回にあたる本記事では、前半で強化学習と逆強化学習の他分野への応用について整理し、後半でICLR2018で発表されていた逆強化学習の他分野への応用に関する論文を紹介しました。
4回にわたって強化学習に関する論文を中心にICLR2018の参加報告を行ってきました。

近年では、方策の安定的な学習という強化学習の根幹となる問題についてはかなり研究が進み、方策学習の基本的なアルゴリズムについての研究は落ち着いている印象です。
一方で、強化学習を実際に応用する場合に生じる実用的な問題にアプローチする研究が活発になっています。ICLR2018でも、スキル転移の問題や報酬設計といった実用的な問題を扱う研究が多くみられ、その一部を今回の参加報告で取り上げました。
最近では、強化学習におけるシミュレーションから実機転移成功例も続々と出始めています。DeepXでも実際のプロジェクトで生じる強化学習の実用的な問題を解決しつつ開発を進めています。
今後さらに問題を解決していけば強化学習によって巧みな運動を獲得した機械を実世界で動作させることができるでしょう。

最後まで読んでいただきありがとうございました。
次回は蒸留に関する記事を予定しております。お楽しみに!
\vspace{3px}

著者紹介

吉田岳人
東京大学大学院情報理工学専攻修士2年。
大学院にて、強化学習のうち模倣学習を中心に研究を行う。
DeepXでは、研究領域の強化学習技術の産業応用を目指し、特に、機械自動化に向けた模倣学習の活用法の開発を行う。