trust region policy optimization

25
“Trust Region Policy Optimization” ICML2015 読み会 藤田康博 Preferred Networks August 20, 2015

Upload: mooopan

Post on 14-Apr-2017

2.546 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Trust Region Policy Optimization

“Trust Region Policy Optimization”ICML2015読み会

藤田康博

Preferred Networks

August 20, 2015

Page 2: Trust Region Policy Optimization

話す人

▶ 藤田康博▶ Preferred Networks

▶ Twitter: @mooopan

▶ GitHub: muupan

▶ 強化学習・ゲーム AIに興味があります

Page 3: Trust Region Policy Optimization

読む論文

John Schulman, Sergey Levine, Philipp Moritz, Michael I.Jordan, Pieter Abbeel. Trust Region Policy Optimization.ICML 2015.

▶ (深層)強化学習の話▶ DQN(Deep Q-Network) [Mnih et al. 2015; Mnih et al.

2013]とは異なり,価値関数ではなく方策をNNで表現し最適化する(policy optimization)

Page 4: Trust Region Policy Optimization

何ができるのか

デモ:https://sites.google.com/site/trpopaper/

▶ ロボットの制御ができる▶ ビデオゲームがプレイできる

▶ 一部のゲームでは DQNに勝つ

Page 5: Trust Region Policy Optimization

Policy Optimization

▶ マルコフ決定過程 (S,A,P , c , ρ0, γ)▶ S は状態集合▶ A は行動集合▶ P : S ×A× S 7→ R は遷移確率▶ c : S 7→ R はコスト関数▶ ρ0 : S 7→ R は初期状態 s0の分布▶ γ ∈ [0, 1] は割引率

▶ 方策(policy)π : S ×A 7→ [0, 1]

▶ 期待割引コストη(π) = Es0,a0,...

[ ∞∑t=0

γtc(st)],where

s0 ∼ ρ0, at ∼ π(· | st), st+1 ∼ P(st+1 | st , at)

▶ 目標:η(π)をできるだけ小さくする πを求めたい

Page 6: Trust Region Policy Optimization

価値関数

ある状態から先の期待割引コストを考えると便利▶ 状態価値関数 Vπ(st) = Eat ,st+1,...[

∑∞l=0 γ

lc(st+l)]▶ st から先は πに従って行動を選ぶ

▶ 行動価値関数 Qπ(st , at) = Est+1,at+1,...[∑∞

l=0 γlc(st+l)]

▶ st で at を選んでから先は πに従って行動を選ぶ

▶ アドバンテージ関数 Aπ(s, a) = Qπ(s, a)− Vπ(s)

Page 7: Trust Region Policy Optimization

Trust Region Policy Optimization(TRPO)

▶ 元の方策 πθoldとのKLダイバージェンスをある値 δ以下に抑える制約付き最適化問題を解くことでロバストに方策を改善するアルゴリズムを提案

minimizeθ

Es∼ρθold ,a∼q

[πθ(a | s)q(a | s)

Qθold(s, a)

]subject to Es∼ρθold

[DKL(πθold(· | s) ∥ πθ(· | s))] ≤ δ.

(15)

▶ 導出の説明はこれから(時間があれば)します

Page 8: Trust Region Policy Optimization

期待割引コストの最小化(1)方策 πを元に,より良い方策 π̃を求めることを考える

▶ 方策 π̃の期待割引コスト η(π̃)は,別の方策 πの期待割引コストとそれに対するアドバンテージで表せる(証明は論文 Appendix参照).

η(π̃) = η(π) + Es0,a0,...

[ ∞∑t=0

γtAπ(st , at)

],where

s0 ∼ ρ0, at ∼ π̃(· | st), st+1 ∼ P(st+1 | st , at). (1)

▶ 割引訪問頻度 ρπ(s) = (P(s0 = s) + γP(s1 = s) + . . . )を使って書くと

η(π̃) = η(π) +∑s

ρπ̃(s)∑a

π̃(a | s)Aπ(s, a). (2)

▶ 右辺を最小化する π̃を求めたいが ρπ̃が邪魔

Page 9: Trust Region Policy Optimization

期待割引コストの最小化(2)

▶ ρπ̃を ρπで置き換えてしまうと楽

Lπ(π̃) = η(π) +∑s

ρπ(s)∑a

π̃(a | s)Aπ(s, a). (3)

▶ これは πに十分近いところでは ηの一次近似になっている

Lπθ0(πθ0) = η(πθ0),

∇θLπθ(πθ)|θ=θ0 = ∇θη(πθ)|θ=θ0 (4)

▶ したがって十分小さいステップだけ Lπを改善すれば ηも改善するはずだが,どれくらいのステップならよい?

Page 10: Trust Region Policy Optimization

Conservative Policy Iteration(CPI) [Kakade and

Langford 2002]

▶ π′ = argminπ′ Lπold(π′)と πoldとの混合方策

πnew(a | s) = (1− α)πold(a | s) + απ′(a | s) (5)

の期待割引コスト η(πnew)について次の保証が得られる.

η(πnew) ≤ Lπold(πnew) +

2ϵγ

(1− γ)2α2 (8)

(ただし α ∈ [0, 1), ϵ = maxs |Ea∼π′(a|s)[Aπold(s, a)]|)

▶ したがって η(πnew) < η(πold)となるような αを計算し混合方策を求めることを繰り返せば単調改善

Page 11: Trust Region Policy Optimization

非混合方策への拡張(1)混合方策は実用的でないので一般の確率的方策に対しても改善を保証したい(この論文の主な理論的貢献)Theorem 1α = Dmax

TV (πold, πnew), ϵ = maxs maxa |Aπold(s, a)|とすれば混合

方策でない πnewに対しても

η(πnew) ≤ Lπold(πnew) +

2ϵγ

(1− γ)2α2 (8)

が成り立つ.ただし

DTV(p ∥ q) :=1

2

∑i

|pi − qi | (total variation divergence),

DmaxTV (π, π′) := max

sDTV(π(· | s) ∥ π̃(· | s)), (9)

Page 12: Trust Region Policy Optimization

非混合方策への拡張(2)

DTV(p ∥ q)2 ≤ DKL(p ∥ q)

であるという関係を使うと,

η(π̃) ≤ Lπ(π̃) + CDmaxKL (π, π̃), where C =

2ϵγ

(1− γ)2(10)

と書ける.ただし

DmaxKL (π, π′) := max

sDKL(π(· | s) ∥ π̃(· | s)).

Page 13: Trust Region Policy Optimization

パラメータ化された方策の最適化(1)パラメータ化された方策 πθ(a | s)を考える.

▶ ここまでの結果より

minimizeθ

[CDmaxKL (θold, θ) + Lθold(θ)]

を解けば ηについて θoldからの改善が保証される.

▶ しかし,この C の値は実際には大きくなりすぎ,更新量が小さくなりすぎるので,代わりに

minimizeθ

Lθold(θ)

subject to DmaxKL (θold, θ) ≤ δ.

(12)

という(信頼領域)制約付き最適化問題にする.

Page 14: Trust Region Policy Optimization

パラメータ化された方策の最適化(2)

▶ さらに,DmaxKL についての制約は,制約の数が多くなり

すぎ実用的でないので,平均KLダイバージェンス

D̄ρKL(θ1, θ2) := Es∼ρ[DKL(πθ1(· | s) ∥ πθ2(· | s))]

を代わりに使うと,解くべき最適化問題は

minimizeθ

Lθold(θ)

subject to D̄ρθoldKL (θold, θ) ≤ δ.

(13)

Page 15: Trust Region Policy Optimization

サンプルによる近似

▶ 先ほどの最適化問題を期待値の形で書き,さらに分布q(a | s)による importance samplingを使うと

minimizeθ

Es∼ρθold ,a∼q

[πθ(a | s)q(a | s)

Qθold(s, a)

]subject to Es∼ρθold

[DKL(πθold(· | s) ∥ πθ(· | s))] ≤ δ.

(15)

▶ あとはこの期待値を有限のサンプルで近似し,Qθ(s, a)の推定値が計算できればよい

▶ 2種類のやり方を提案:Single Path, Vine

Page 16: Trust Region Policy Optimization

サンプリング法1:Single Path

▶ 初期状態 s0 ∼ ρ0から πθに従い軌跡 s0, a0, . . . , sT , aT を生成し,全ての状態行動ペアをサンプルとして使う(q = πθ)

▶ Qθ(s, a)は元の軌跡の実際の割引コストで推定

Page 17: Trust Region Policy Optimization

サンプリング法2:Vine

▶ πθに従い生成した軌跡からまずN個の状態をサンプリングし,それぞれの状態からさらにK 個の行動を qに従って選んでシミュレーション

▶ Qθ(s, a)はランダムシミュレーション結果の割引コストで推定

Page 18: Trust Region Policy Optimization

実用的なアルゴリズム

以下を繰り返す1. Single Pathか Vineを使い,状態行動ペア (s, a)と

Qπ(s, a)の推定値を集める2. サンプルから目的関数と制約条件を構築する3. 制約付き最適化問題を解いて更新量を求める

▶ (共役勾配法と直線探索を用いる)

Page 19: Trust Region Policy Optimization

ロボットの移動制御での評価(1)

Swimmer Hopper Walker入力 10 12 20出力(連続,gaussian) 2 3 6パラメータ数 364 4806 8206

Page 20: Trust Region Policy Optimization

ロボットの移動制御での評価(2)

▶ Single Path, Vineともに既存手法よりよい性能▶ (手法によってはまだ下がりきっていないように見える?)

Page 21: Trust Region Policy Optimization

ビデオゲームでの評価(1)

▶ 入力:Atari 2600のゲームの画面▶ 出力:ボタン押下(離散,softmax)▶ パラメータ数:33500

Page 22: Trust Region Policy Optimization

ビデオゲームでの評価(2)

▶ 一部のゲームではDQN( [Mnih et al. 2013]のもの)を上回るスコアを達成

▶ Vine > DQN:Pong, Q*bert▶ Single Path > DQN:Enduro, Pong, Q*bert, Seaquest

Page 23: Trust Region Policy Optimization

まとめ

▶ 一般の確率的方策について期待割引コストの単調減少が保証される更新方法を提示

▶ それをベースにした実用的な方策最適化アルゴリズムTRPOを提案

▶ 2種類のタスクで評価▶ ロボットの移動制御:総じて既存の方策最適化手法を上回る

▶ ビデオゲーム:ゲームによっては DQNを上回る

Page 24: Trust Region Policy Optimization

おまけ:DQNとの比較

TRPO DQNNNで表すもの 方策 π 行動価値関数 Q(s, a)行動空間が連続 ◦ ×行動空間が離散 ◦ ◦シミュレータ Single Path では不要,

Vineでは必要不要

実装の容易さ ヤコビ行列・ベクトル積の効率的な計算方法,共役勾配法などが必要

SGDで学習可能

Page 25: Trust Region Policy Optimization

参考文献 I

[1] Sham Kakade and John Langford. “Approximately Optimal ApproximateReinforcement Learning”. In: ICML 2002. 2002.

[2] Volodymyr Mnih et al. “Human-level control through deep reinforcementlearning”. In: Nature 518.7540 (2015), pp. 529–533.

[3] Volodymyr Mnih et al. “Playing Atari with Deep Reinforcement Learning”. In:NIPS 2014 Deep Learning Workshop. 2013, pp. 1–9. arXiv:arXiv:1312.5602v1.