1
DEEP LEARNING JP
[DL Papers]
http://deeplearning.jp/
モデルベース強化学習とEnergy Based Model
Reiji Hatsugai, DeepX
2
モチベーション
• モデルを学習して、それを活かす形で方策を得る、モデルベース強化
学習が最近熱い
– PlaNet, SLAC, MuZeroとか
• CoRLの論文を眺めていて、モデルベース強化学習してる論文をいく
つか発見
• その中でEnergy Based Modelと絡めて提案していて、Energy Based
Modelの使い方が面白い論文が2つあったのでまとめて紹介
書誌情報
• Model-Based Planning with Energy-Based Models
– Yilun Du, Toru Lin, Igor Mordatch, MIT, Google Brain
• Regularizing Model-Based Planning with Energy-Based Models
– Rinu Boney, Juho Kannala, Alexander Ilin, Aalto Univ
• CoRL2019
3
前提知識
• ベーシックな(?)モデルベース強化学習
– モデルの学習
– モデルの活用方法
• Energy Based Model
– 生成モデル
4
モデルの学習
• 状態s_tと行動a_tを受け取り、次状態s_t+1を推定するネットワークの
学習
5
モデルの活用方法:MPC
• 行動の系列をランダムにサンプルし、現在の状態からサンプルされた
行動の系列を適用した時にどのような状態系列になるか推定
• 推定された状態系列と、行動系列に対して、報酬関数を適用し、報酬
関数が最大化される行動系列を選択
• 選択された行動系列の最初の一つを実際に起こす行動として選択
6
モデルの活用方法:CEM
• MPCの時と同じ目的関数をブラックボックス関数として、Cross
Entropy Methodで最適化
– CEM:行動系列をガウス分布からサンプルし、最適化されるブラックボックス関数の
評価値を取得。取得された値に応じてサンプルする分布を変化させていき、評価値
を向上させる
7
生成モデル
• ここでいうエネルギー関数は、正規化されていない対数尤度関数
• 一般に、確率モデルを求める際に、分母の計算は難しい(積分操作を
行なうのが難しい)
• エネルギー関数からサンプルする方法として、MCMCやランジュバン
方程式を使用したものがある
8
Regularizing Model-Based Planning with Energy-Based
Models
• モデルベース強化学習の問題:間違ったモデルの推定を元に行動系列
を最適化してしまうことで、現実では全く役に立たない行動を選択し
てしまう
• この論文では、状態、行動、次状態のトリプレットの対数尤度を報酬
関数に追加
• 報酬関数を最大化しながら、尤度が低い(観測される確率が小さい)
モデルの推定を弾くことで、上記問題を解決しようとしている
9
尤度関数からエネルギー関数へ
• 対数尤度の分母の項は、行動系列に依存しない値なので、最終的にエ
ネルギー関数のみが目的関数の項に残る
10
エネルギー関数の構成方法
• Deep Energy Estimator Network (DEEN) という手法とDenoising Auto
Encoder (DAE) という手法でエネルギー関数の推定を実施
11
実験
• 学習済みモデルを利用したモデル活用方法の比較実験
• モデルの学習を含むゼロからの学習曲線
• エネルギー関数の効果
12
学習済みモデルを利用したモデル活用方法の比較実験
• PETSの学習で得られたモデルを利用して、モデルの活用方法だけを
表の4種類比較
• 探索方法にCEMを用いて、DEENによってエネルギー関数の追加報酬
を加えたものが一番高い報酬値となった
13
モデルの学習を含むゼロからの学習曲線
• PETS, GPと比較をしている
• 比較対象(赤、黄)よりサンプル効率よく学習していることがわかる
14
エネルギー関数の効果
• モデルを使って予想された収益(赤線)に対して、実際にその時の行
動を実施した時の収益(黒線)を表示した図
• 赤線と黒線が合致しているほど、モデルを使った予想通りに実際の環
境で実行ができている
• DEENを使ったRegularizationだと、赤線と黒線がかなり一致している
15
Regularizing Model-Based Planning with Energy-Based
Modelsまとめ
• 学習済みモデルが存在する時に、エネルギー関数を考えることで、性
能を向上させることができた
• フルスクラッチで学習する場合においても、エネルギー関数での
Regularizingによって高いサンプル効率で学習が可能ということがわ
かった
16
Model-Based Planning with Energy-Based Models
• モデルの学習を陽に行わずに、状態の遷移(状態と次状態のタプル)
に関してエネルギー関数を学習し、エネルギー関数を最小化しながら、
最終目的状態との距離も最小化
– エネルギー関数の計算に行動の項は一切入らない。状態に対してのみ
– 最終的な行動の選択の際は、状態系列を入力としてそれを達成する行動を出力する
ネットワークを用いる
17
エネルギー関数について
• 状態のタプルについての正規化されていない対数尤度
• エネルギー関数は、GANのような形で学習され、実際にサンプルされ
たデータに対するエネルギーを最小化し、エネルギー関数を用いてサ
ンプルされたデータに対するエネルギーを最大化するように学習する
18
MPPI
• エネルギー関数からのデータをサンプルする際、MCMCやランジュバ
ン方程式を使ったものではなく、重要度重み付けを使ったMPPIを用
いてサンプルを行なう
• 一つまえの変数からガウシアンノイズを加えて、エネルギー関数の重
み付けで足し合わせる
19
最終的な目的関数
• 最終状態で目的とする状態に到達することを条件付けることで、下の
確率分布からサンプルされるような状態系列を達成すればよい
20
オンラインでの学習
• 障害物などがある場合、障害物によって進めなかったというデータを
元にオンラインで学習することで、障害物を回避するような新たな状
態系列がサンプリングされるようになる
21
アルゴリズム
22
実験
• 色々やっているので、以下を抜粋
– Energy Based ModelとActionFF(状態と行動を受け取って次状態を出力する順モデ
ル)の比較
– 学習データセットにない障害物に対する対処
23
Energy Based ModelとActionFFの比較
• Sawyer Arm(7DoFのロボットアーム)で目的の位置に到達させる
• モデルを学習させるか、オンライン学習させるかによらず、EBMの方
が良い結果
• 特に、オンライン学習させる時に大幅に改善
24
学習データセットにない障害物に対する対処
• Particle:粒子を目的の位置まで運ぶ
• オンライン学習を組み込んだEBMでは、学習時になかった障害物が
あったとしても、タスクを成功させた
25
Model-Based Planning with Energy-Based Modelsまとめ
• Energy Based Modelによるプランニングは有望である
• オンライン学習の設定を入れることでパフォーマンスを向上させるこ
とができた
26
感想
• Regularizing Model-Based Planning with Energy-Based Models
– モデルの不確かさについて、分散等が直接計算できる手法がよく提案されているが、
EBMでうまく表現していて、興味深い
– EBMがOODデータに対して高い尤度を持たないという特性によってこれが実現され
ているのだと思う
• Model-Based Planning with Energy-Based Models
– モデルベース強化学習を考える上で、陽にモデルを構築しないというのは面白い発
想だった(ただ、あんまりこの方向で考えすぎると、モデルフリー強化学習に帰着する
のでは?)
– 著者が謎にオンライン学習押しだったが、どれくらい使えるシチュエーションがあるだ
ろうか気になる
– あとこの手法はリーチング系以外厳しそう
27

[DL輪読会]モデルベース強化学習とEnergy Based Model