Upgrade to Pro — share decks privately, control downloads, hide ads and more …

慶應義塾大学 機械学習基礎13 強化学習の基礎

慶應義塾大学 機械学習基礎13 強化学習の基礎

More Decks by Semantic Machine Intelligence Lab., Keio Univ.

Other Decks in Technology

Transcript

  1. 強化学習(reinforcement learning)の概要 - - 5 ▪ 1980年代:Suttonらによる研究 ▪ バックギャモンへの強化学習の適用[Tesauro, 1992]

    ▪ 2017年:深層強化学習を用いたAlphaGoが囲碁チャンピオンを破る https://deepmind.com/alphago-china
  2. 強化学習とは - - 6 強化学習 ▪ 環境と相互作用しながら報酬をもとに 行動を学習する枠組み 強化学習の応用例 ▪

    囲碁将棋等のゲームAI ▪ ロボットの単純動作の獲得 ▪ 教師あり学習と組み合わせた利用 ▪ ChatGPTの一部であるInstructGPT で利用
  3. 強化学習の設定 - - 7 ▪ エージェント ▪ 行動(action)を学習する主体 ▪ 方策(policy)に従って行動を選択

    ▪ 環境(environment) ▪ エージェントが行動を加える対象 ▪ 状態(state)と報酬(reward)をエー ジェントに返す -1 -20 -1 -1 +10
  4. 強化学習の流れ グリッドワールドの例 - - 8 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10 状態:左上
  5. 強化学習の流れ グリッドワールドの例 - - 9 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10 1. 決定論的方策(例:100%の確率で下) 2. 確率論的方策(例:50%の確率でランダ ムに右 or 下を選択)
  6. 強化学習の流れ グリッドワールドの例 - - 10 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10 1. 決定論的方策(例:100%の確率で下) 2. 確率論的方策(例:50%の確率でランダ ムに右 or 下を選択) 確率論的方策のみを考える
  7. 強化学習の流れ グリッドワールドの例 - - 11 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10
  8. 強化学習の流れ グリッドワールドの例 - - 12 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10 報酬:ー1ポイント
  9. 強化学習の流れ グリッドワールドの例 - - 13 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10 左上から下に進んだら、 -1ポイントだった
  10. 強化学習の流れ グリッドワールドの例 - - 14 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10
  11. 強化学習の流れ グリッドワールドの例 - - 15 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10 状態:左下
  12. 強化学習の流れ グリッドワールドの例 - - 16 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10 1. 決定論的方策(例:100%の確率で下) 2. 確率論的方策(例:50%の確率でランダ ムに右 or 下を選択)
  13. 強化学習の流れ グリッドワールドの例 - - 17 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10 報酬:ー1ポイント
  14. 強化学習の流れ グリッドワールドの例 - - 18 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10 左下から右に進んだら、 -1ポイントだった
  15. 強化学習の流れ グリッドワールドの例 - - 19 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10
  16. 強化学習の流れ グリッドワールドの例 - - 20 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10 状態:中下
  17. 強化学習の流れ グリッドワールドの例 - - 21 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10 1. 決定論的方策(例:100%の確率で下) 2. 確率論的方策(例:50%の確率でランダ ムに右 or 下を選択)
  18. 強化学習の流れ グリッドワールドの例 - - 22 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10
  19. 強化学習の流れ グリッドワールドの例 - - 23 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10 中下から右に進んだら、 +10ポイントだった
  20. 強化学習の流れ グリッドワールドの例 - - 24 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10 エピソード終了
  21. 強化学習の流れ グリッドワールドの例 - - 25 1. 状態 を観測(2エピソード目) 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10 状態:左上
  22. 強化学習の流れ グリッドワールドの例 - - 26 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10 1エピソード目では下に進んだら-1の 報酬だった →右に進む確率が上昇
  23. 強化学習の流れ グリッドワールドの例 - - 27 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10 報酬:ー1ポイント
  24. 強化学習の流れ グリッドワールドの例 - - 28 1. 状態 を観測 2. 方策

    に従って行動 を出力 3. 状態が に遷移 4. 報酬 を獲得 5. に基づき方策を更新 6. 1に戻る(エピソード終了まで) エピソード終了条件の例: ゴール到着、Nステップ終了 -1 -20 -1 -1 +10
  25. 強化学習の目的は収益を最大化する方策を得ること - - 29 ▪ 収益(return)=報酬の割引総和 ▪ 割引率(discount rate) (

    ): 遠い未来ほど減衰させ、 無限和が発散しないようにする ▪ 注意 ▪ 収益は単純な報酬の総和ではないし、次時刻の報酬のみでもない
  26. マルコフ決定過程として問題をモデル化する - - 30 ▪ マルコフ決定過程(Markov Decision Process, MDP)を用いて時間発 展を記述

    (有限) (1次の)マルコフ性: を決めるのは時刻 時点での情報のみであり、 以 前の履歴は一切関係しない 影響しないと仮定する 例:将棋で次の盤面は現在の盤面と指し手のみで決定可能(※千日手は例外)
  27. 最良の方策が満たすべき方程式 - - 35 ▪ 最適方策(optimal policy) ▪ 期待収益を最大化する方策 ▪

    強化学習の目的=最適方策(に近い方策)を探索 ▪ ベルマン最適方程式(Bellman optimality equation) ▪ 最適方策が見つかったとして、その方策が満たすべき性質を表す 行動1 行動2 状態1 0.9 0.1 状態2 0.5 0.5
  28. ベルマン最適方程式に関するよくある疑問 - - 36 ▪ Q.ベルマン最適方程式を導出した後どうなるか? ▪ 「とはいえ、この前提(後述)が満たされないので異なるアプロー チ(強化学習の各手法)をとる」 ▪

    Q.では、なぜベルマン最適方程式を考えるのか? ▪ 前提が満たされている問題(強化学習を使う必要はない)と、そう でない問題に分ける ▪ 強化学習手法はベルマン方程式に基づくものが多いので、統一的に 理解できる ▪ Q. ベルマン最適方程式の導出は当たり前のように見えるが? ▪ その通り。仰々しく感じる人も多い
  29. 最適方策は状態価値関数を最大化するはず - - 37 ▪ 状態価値関数 :状態sにおける方策πのもとでの期待収益 ▪ 状態価値関数の最大化 ▪

    では はどのように得られるか? ←全パターンについて期待収益を計算すれば 当然最大値 が見つかるという意味 自体に似ているので 再帰的に定義できそう →遷移先s’を考えよう
  30. 行動価値関数とは - - 42 ▪ 行動価値関数(action-value function) ▪ 状態sにおいて行動aを選択したときの期待収益 ▪

    最適方策は行動価値関数を最大化するはず ▪ ↔状態sの期待収益は状態価値関数 ▪ 状態価値関数と同様(=再帰的)に、行動価値関数のベルマン方程式 を導出できる ▪ 付録参照
  31. 最適方策をベルマン最適方程式から導ける場合とは - - 48 ▪ 遷移確率 ▪ 期待報酬 が与えられる 最適方策がベルマン最適方程式か

    ら直接求まる 動的計画法(強化学習以前の手 法)で十分 以降では、これらが未知である場合を考える 強化学習の仮定→ 環境の情報が未知であること
  32. 価値ベースと方策ベース 価値ベース(value-based methods)  行動価値関数 を学習し,その値に基づき行動を選択  特徴:学習速度が速い / 間接的

    / 行動空間が連続だと使えない  アルゴリズム:Sarsa / Q学習 / … 方策ベース(policy-based methods)  方策関数 を学習し,その方策から行動を選択  特徴:学習速度が遅い / 価値関数を経由せず直接的 / 行動空間が連続でも使える  アルゴリズム:Vanilla policy gradient / REINFORCE / … Actor-critic  Actor(方策関数)とcritic(価値関数)の両方を学習 - - 49
  33. 価値関数の推定 ベルマン方程式から価値関数を求めるためには?  状態遷移確率が必要  一般的に未知   状態遷移確率を陽に使わずに試行錯誤的な経験によって価値関数を求める (TD学習:temporal

    difference learning) TD学習の方法  Sarsa  行動価値関数のベルマン方程式に基づく学習法  Q学習  最適行動価値関数のベルマン最適方程式に基づく学習法 - - 50
  34. Q学習の概要 価値ベースの手法の一つ  問題設定(右図上)  時刻 における状態 で行動 を選択 

    時刻 における状態 へ遷移し, 報酬 を受け取る  これらの情報からQ-table(右図下)を更新  Q-tableを参照することで,ある状態において 価値のある行動を選択可能 - - 51 行動 報酬 現在の状態 次の状態 エージェント 環境
  35. Q学習の方法 行動価値関数に対するベルマン最適方程式(再掲)  再帰計算の導入によって期待値計算が不要   状態遷移確率 や報酬関数 を知っている必要がある 

     試行錯誤的な経験によって価値関数を求める Q値の更新式:  :時刻 において 回目の更新がされている行動価値  :状態 における行動価値の最大値  は が最大となる行動で,実際の行動 は自由に選択可能  Temporal Difference Error(TD誤差)を小さくする - - 52
  36. Q学習における行動の選択(方策) 利用と探索のトレードオフ(exploitation-exploration trade-off)  グリーディ(貪欲)法(greedy method)  探索が起こらない  

    ランダム法(random method)  あらゆる行動を等確率で選択  行動価値が更新されても効果的な知識利用ができない   ε-グリーディ法(ε-greedy method)  確率 でランダム法,確率 でグリーディ法に基づき行動を選択 - - 53
  37. を初期化 for to do を観測 repeat で方策(ε-グリーディ法)に従って を選択して行動 環境から と

    を観測 行動価値の更新式に従って を更新 , とする until ゴールに到達 / 終了条件に到達 end for Q学習の流れ - - 55
  38. 方策勾配定理とREINFORCE 方策勾配定理  長期間の報酬の期待値の勾配を行動価値関数を用いて表す  パラメータ更新を方策勾配法で解くことが可能  状態 ,行動 に関する期待値計算

    は方策に基づき行動をして得られた サンプルを利用してモンテカルロ近似で求める REINFORCE  REward Increment = Nonnegative Factor × Offset Reinforcement × Characteristic Eligibility  方策勾配定理の行動価値関数を(即時)報酬で代用する手法 - - 57
  39. 強化学習と他分野との関連 ▪ 最適制御理論(1950s-) ▪ 評価関数を最大化する制御則を求める問題 ▪ 動的計画法(1940s-) ▪ 評価関数を最大化する経路決定問題 ▪

    システム同定(1970-) ▪ 確率システムのパラメータ推定 ▪ 能動学習(1920s-) ▪ アルゴリズムが訓練サンプルを選択できる機械学習問題 ▪ 強化学習の探索部分に相当 Copy right © Keio
  40. 深層強化学習 価値関数や方策関数をニューラルネットワークで表現  Deep Q-network (DQN) [Mnih+ 2013, Mnih+ 2015]

     CNNを用いてゲームの画像情報から 行動価値関数を学習  この後簡単に説明  AlphaGo [Silver+ 2016]  CNNを用いて碁の盤面から 方策 / 状態価値関数を学習  モンテカルロ木探索 - - 60
  41. Q-tableとDQN Q-table  有限個の状態に おける行動価値を保持 - - 61 st 行動価値

    状態 DQN  画像情報(状態 )から行動価値を予測
  42. DQNの入出力 入力  ゲームの連続する4フレーム分の画像(状態) 行動パターン 9×2 = 18個  操縦ハンドル(動かさない

    / 上下左右斜め)  9個  トリガボタン(押す / 押さない)  2個 出力  18個の行動パターンに対応する行動価値 - - 62 ……
  43. DQNのネットワーク構造 入力層  84×84×4の白黒画像  連続する4フレーム 隠れ層  3層の畳み込み層 

    2層の全結合層 出力層  18次元の  5000万フレーム  1ヶ月の学習 - - 63
  44. DQNにおける工夫 経験リプレイ(experience replay)を用いたミニバッチ学習  事前にプレイして取得した経験 からランダムに選択  データの偏りを防ぎ学習の安定化を実現 標的ネットワーク(target network)を用いた教師データの生成

     一定期間標的ネットワークのパラメータを固定  TD誤差が安定し学習の安定化を実現 Reward clippingを用いた報酬のスケール  報酬 を の範囲にクリップ  勾配が理不尽に大きくなることを防ぎ学習の安定化を実現 - - 64
  45. 本講義全体の参考図書 - - 67 ▪ ★機械学習スタートアップシリーズ これならわかる深層学習入門 瀧雅人著 講談 社(本講義では、異なる表記を用いることがあるので注意)

    ▪ ★Dive into Deep Learning (https://d2l.ai/) ▪ 深層学習 改訂第2版 (機械学習プロフェッショナルシリーズ) 岡谷貴之著 講談社 ▪ ディープラーニングを支える技術 岡野原大輔著 技術評論社 ▪ 画像認識 (機械学習プロフェッショナルシリーズ) 原田達也著 講談社 ▪ 深層学習による自然言語処理 (機械学習プロフェッショナルシリーズ) 坪井祐太、 海野裕也、鈴木潤 著、講談社 ▪ IT Text 自然言語処理の基礎 岡﨑直観、荒瀬由紀、鈴木潤、鶴岡慶雅、宮尾祐介 著、オーム社 ▪ 東京大学工学教程 情報工学 機械学習 中川 裕志著、東京大学工学教程編纂委員会 編 丸善出版 ▪ パターン認識と機械学習 上・下 C.M. ビショップ著 丸善出版
  46. 参考文献 - - 68 1. 強化学習,Richard Sutton, Andrew Barto著,森北出版 2.

    ゼロから作る Deep Learning 4 ―強化学習編,斎藤康毅著,オライ リージャパン 3. Tesauro, G. (1992). Practical issues in temporal difference learning. Machine learning, 8(3), 257-277.