Slide 1

Slide 1 text

Reinforcement Learning : An Introduction Chapter 5 Monte Carlo Methods 2021/8/12 kiyo 1

Slide 2

Slide 2 text

自己紹介 • twitter : kiyo@hrs1985 • https://qiita.com/hrs1985 • https://github.com/kiyohiro8 株式会社カブクで機械学習エンジニアをしています。 • 深層生成モデル、画像の変換 • ゲームの強化学習 • ポケモンとか風来のシレンとか に興味があります。 強化学習の勉強をちゃんとやりたいと思ったので若手の会チャンネルに参加しました。 2

Slide 3

Slide 3 text

5章の内容 4章では動的計画法を用いて最適方策を得る方法を議論した これは環境のダイナミクス Pr(𝑠′|𝑠, 𝑎)が既知の場合にしか使えないので ダイナミクスが未知であっても経験のみから学習できるようにしたい これが5章のテーマ 3

Slide 4

Slide 4 text

5.1 Monte Carlo Prediction 方策𝜋の下での状態𝑠の状態価値𝑣𝜋 𝑠 は割引報酬和の期待値 𝑣𝜋 𝑠 = 𝐸[𝐺𝑡 |𝑆𝑡 = 𝑠] 単純に考えると、 𝑆𝑡 = 𝑠となって以降の𝐺𝑡 を平均化すればよい 割引報酬和を沢山観測して平均を取れば期待値に収束するはず 4

Slide 5

Slide 5 text

First-visit MCとEvery-visit MC 𝑣𝜋 (𝑠)の推定に際し、同一エピソード内で同じ𝑠に複数回訪れうる場合 First-visit MC:初回に訪れた時点でのGt のみを考慮する Every-visit MC:訪れたすべての時点でのGt を考慮する 理論的な扱いが異なるがどちらでも𝑣𝜋 (𝑠)に収束する、らしい。 5

Slide 6

Slide 6 text

First-visit MC Prediction 6 データの生成 割引報酬和の計算 状態価値の推定 素朴なモンテカルロ法のアルゴリズム

Slide 7

Slide 7 text

Example 5.1 Blackjack プレイヤーの手札が20または21のときはスティック(手札を確定)、そうでない場合はヒット (カードを1枚追加)を選択する場合の状態価値 50万エピソード後の価値関数はよく近似されているらしい 多分戦術が弱すぎて20 or 21以外のところではほぼ負け(-1)のところがそう見えるという話 7

Slide 8

Slide 8 text

5.2 Monte Carlo Estimation of Action Values Pr(𝑠′|𝑠, 𝑎)が既知の場合、𝑣𝜋 だけあれば最適方策が得られる。 4章と異なりダイナミクスが未知なので 各アクションに対する𝑞𝜋 を推定する必要がある。 8

Slide 9

Slide 9 text

Exploring Starts 𝑞𝜋 を基に方策を改善するには方策𝜋の下での各𝑠-𝑎ペアの期待報酬和を計算する必要がある しかし、各𝑠についてすべての𝑎を選択しうる (𝜋(𝑎|𝑠)>0) 方策でないと破綻する (特に𝜋がgreedyな方策の場合𝑎が1択になってしまうので𝑞𝜋 (𝑠, 𝑎)が比較できない) →エピソードの開始をランダムな𝑠−𝑎のペアから開始することにすれば (エピソード数が無限なら)全ての𝑠-𝑎ペアが選択されることを保証できる (Exploring Starts) これは多少複雑な問題になると非現実的。 現実的には𝜋 𝑎 𝑠 > 0が全ての𝑠-𝑎ペアで成り立つよう確率的な方策を用いるだけでもいい。 でもここではExploring Startsの仮定を一旦置いて議論を進めている、とのこと。 9

Slide 10

Slide 10 text

5.3 Monte Carlo Control 1. 方策𝜋0 下でデータを(無限に)収集して行動価値関数𝑞𝜋0 を推定する 2. 行動価値関数𝑞𝜋0 の下で改善された方策𝜋1 を得る 3. 方策𝜋1 下でデータを(無限に)収集して行動価値関数𝑞𝜋1 を推定する 4. 行動価値関数𝑞𝜋1 の下で改善された方策𝜋2 を得る 5. 1~4を繰り返して𝜋∗ と𝑞∗ を得る 方策を𝜋𝑘+1 ≝ 𝑎𝑟𝑔𝑚𝑎𝑥 𝑞𝜋𝑘 (𝑠, 𝑎) としたとき、 𝜋𝑘+1 が𝜋𝑘 よりも良い方策であることはPolicy Improvement Theorem(4.2節)より保証される。 これで経験だけから良い方策と価値関数を得ることはできたが…… 10

Slide 11

Slide 11 text

非現実的な仮定として以下の2つを仮定している • 無限のエピソードを用いて行動価値を推定する • Exploring Starts これらの仮定の外し方を議論していく 11

Slide 12

Slide 12 text

方策の評価を無限のエピソードで行う仮定を回避するために • 方策を評価するたびに𝑞𝜋𝑘 の近似が十分よいことを確かめる →小さな問題以外では難しそう • 方策評価(Evaluation)と方策改善(Improvement) を交互に繰り返す (4.6節のGeneralized Policy Iterationと同じ) →ここではこちらを採用 12

Slide 13

Slide 13 text

Generalized Policy Iteration (GPI) 13 4.6節で述べられていた話。 価値のevaluationと方策のimprovementを交互に行うことで最適価値と最適方策に到ることができる。

Slide 14

Slide 14 text

Exploring StartsありでのMonte Carlo Control Exploring Starts 割引報酬和とQの計算 14 方策の更新

Slide 15

Slide 15 text

Example 5.3 Solving Blackjack ブラックジャックの 𝑠 - 𝑎 ペアの数は限られているのでExploring Startsが容易に実行できる。 最適方策𝜋∗ と最適価値関数𝑣∗ が得られた。 15

Slide 16

Slide 16 text

5.4 Monte Carlo Control without Exploring Starts 16 Exploring Startsなしでモンテカルロ法を使いたい。 →𝜋 𝑎 𝑠 > 0が保証されている方策を持つエージェントに データ(𝑆0 , 𝐴0 , 𝑅1 , … , 𝑆𝑇−1 , 𝐴𝑇−1 , 𝑅𝑇 )を生成させればよい データを生成するための方策behavior policyと学習を行いたい方策target policyについて On-Policy: behavior policy=target policy Off-Policy: behavior policy≠target policy の2パターンが考えられる

Slide 17

Slide 17 text

On-Policyの場合 𝜋 𝑎 𝑠 > 0の必要があるので𝜀-greedyを使えばよい。 (π 𝑎 𝑠 ≥ Τ 𝜀 𝐴 > 0, 𝑠 ∈ 𝑆, 𝑎 ∈ 𝐴が保証される) 17

Slide 18

Slide 18 text

5.5 Off-policy Prediction via Importance Sampling データを生成するためのbehavior policyとして方策𝑏(𝑏 ≠ 𝜋)を導入する。 そのままでは期待報酬和は𝑣𝑏 (≠ 𝑣𝜋 )に収束してしまうので工夫が必要。 →Importance Samplingを用いる 18

Slide 19

Slide 19 text

Importance Sampling 状態𝑆𝑡 からスタートして以降のトラジェクトリ(𝐴𝑡 , 𝑆𝑡+1 , 𝐴𝑡+1 , … , 𝑆𝑇 )の生成確率は以下のように書ける。 𝜋と𝑏についての上の確率の比を取る 𝜌𝑡:𝑇−1 がImportance Sampling Ratio 𝜋と𝑏の下でのそのトラジェクトリの実現しやすさの比と言える 19

Slide 20

Slide 20 text

Importance Sampling 20 Importance Sampling Ratioで重みを付けた期待報酬和が𝑣𝜋 に一致する。 𝜋の下でも実現しやすい報酬和𝐺𝑡 をより重く見ることで𝑣𝑏 𝑠 が𝑣𝜋 𝑠 に近づく的なイメージ

Slide 21

Slide 21 text

Weighted Importance Sampling 𝑆𝑡 = 𝑠であるような𝑡の集合を𝑇(𝑠)とする。 前ページの期待報酬和は次のように表せる(Ordinary Importance Sampling)。 21 𝑇(𝑠)による重み付けをした変形版を考えることができる(Weighted Importance Sampling) Weighted Importance Samplingの方は第2部で扱う関数近似法への拡張が容易

Slide 22

Slide 22 text

Example 5.4 Off-policy Estimation of a Blackjack State Value Ordinary Importance SamplingとWeighed Importance Samplingでの𝑣𝑏 と𝑣𝜋 の誤差 (target policyはExample 5.1で設定した20 or 21でのみスティックするやつ) 22 • どちらのImportance Samplingでもエピソード数を増やせば誤差は0に近づく • Weighed Importance Samplingはエピソード数が少なくても誤差が小さい

Slide 23

Slide 23 text

Example 5.5 Infinite Variance 報酬和が無限の分散を持つケース Ordinary Importance Samplingは収束しないがWeighted Importance Samplingの方は1に収束 していっている(何色がどっち??) 23

Slide 24

Slide 24 text

5.6 Incremental Implementation 上の式は以下のような漸化式に変形できる。 24

Slide 25

Slide 25 text

Off-Policy MC Prediction 25 𝜋 𝑎 𝑠 > 0 ֜ 𝑏 𝑎 𝑠 > 0

Slide 26

Slide 26 text

5.7 Off-Policy Monte Carlo Control 26 方策の改善

Slide 27

Slide 27 text

5章のまとめ • モンテカルロ法の特徴と利点 • 経験だけから学習できる • ブートストラップを行わない(6章でこれと対比したTD法を扱う) • シミュレーションなどとの併用ができる • 状態の特定の部分集合に着目しやすい(8章で説明) • マルコフ性が崩れた時に影響を受けにくい(後の章で説明) • モンテカルロ法では探索性を保つのが重要 • Exploring Starts(非現実的) • On-Policy:target policy自身により生成されたデータから学習する • Off-Policy:behavior policyにより生成されたデータでtarget policyを学習する 27

Slide 28

Slide 28 text

5.8 *Discounting-aware Importance Sampling 割引報酬和の分散を小さくするために報酬の構造を使おうという工夫。 仮に100ステップのエピソードにおいて𝛾 ≪ 1とすると、𝐺𝑡 ≅ 𝑅0 この時のImportance samplingは𝜋(𝐴0|𝑆0) 𝑏(𝐴0|𝑆0) 𝜋(𝐴1|𝑆1) 𝑏(𝐴1|𝑆1) ⋯ 𝜋(𝐴99|𝑆99) 𝑏(𝐴99|𝑆99) となるが、 𝐺𝑡 ≅ 𝑅0 であることから実質的に意味があるのは𝜋(𝐴0|𝑆0) 𝑏(𝐴0|𝑆0) だけとなる。 𝜋(𝐴1|𝑆1) 𝑏(𝐴1|𝑆1) ⋯ 𝜋(𝐴99|𝑆99) 𝑏(𝐴99|𝑆99) の部分は期待報酬和にほぼ無関係であるにもかかわらず 分散を大きくしてしまう。 28

Slide 29

Slide 29 text

割引率𝛾に対し1 − 𝛾を「(1ステップの)エピソード終了確率」と捉えることにする。 このとき割引報酬和𝐺𝑡 は以下のように各ステップでの終了確率×報酬和の和として表せる 𝐺𝑡 ≔ 𝑅𝑡+1 + 𝛾𝑅𝑡+2 + 𝛾2𝑅𝑡+3 + ⋯ + 𝛾𝑇−𝑡−1𝑅𝑇 = 1 − 𝛾 𝑅𝑡+1 1ステップ後に終了した分 + 1 − 𝛾 𝛾 𝑅𝑡+1 + 𝑅𝑡+2 2ステップ後に終了した分 + 1 − 𝛾 𝛾2 𝑅𝑡+1 + 𝑅𝑡+2 + 𝑅𝑡+3 3ステップ後に終了した分 ⋮ + 1 − 𝛾 𝛾𝑇−𝑡−2 𝑅𝑡+1 + 𝑅𝑡+2 + ⋯ + 𝑅𝑇−1 𝑇 − 𝑡 − 1ステップ後に終了した分 +𝛾𝑇−𝑡−1 𝑅𝑡+1 + 𝑅𝑡+2 + ⋯ + 𝑅𝑇 (𝑇 − 𝑡 − 1ステップ後までに終了しなかった分) = 1 − 𝛾 ෍ ℎ=𝑡+1 𝑇−1 𝛾ℎ−𝑡−1 ҧ 𝐺𝑡:ℎ + 𝛾𝑇−𝑡−1 ҧ 𝐺𝑡:𝑇 ただし ҧ 𝐺𝑡:ℎ ≔ 𝑅𝑡+1 + 𝑅𝑡+2 + ⋯ + 𝑅ℎ , 0 ≤ 𝑡 < ℎ ≤ 𝑇 29 5.8 *Discounting-aware Importance Sampling

Slide 30

Slide 30 text

5.8 *Discounting-aware Importance Sampling このDiscounting-aware Importance Samplingを用いて状態価値を以下のように定義できる。 ordinary weighted 30

Slide 31

Slide 31 text

31 Discounting-aware Importance Samplingと同様に、 Importance samplingの計算から余計な部分をなくして分散を小さくする手法 割引率を無視した場合(𝛾 = 1)Importance samplingを考慮した報酬和は以下のようになる この右辺の第1項は以下のようになるが、 𝜋(𝐴𝑡+1|𝑆𝑡+1) 𝑏(𝐴𝑡+1|𝑆𝑡+1) 以降は期待報酬和の推定に無関係なのに分散を大きくしてしまう。 5.9 *Per-decision Importance Sampling

Slide 32

Slide 32 text

𝜌𝑡:𝑇−1 の中で報酬𝑅𝑡+1 が発生した後の部分は無視できる(らしい) 32 これを順次適用して ただし、 この ෨ 𝐺𝑡 を用いて推定状態価値を次のように表せる 5.9 *Per-decision Importance Sampling