Slide 1

Slide 1 text

みんな⼤好き強化学習

Slide 2

Slide 2 text

2 ですよね︖ 好きですよね︖強化学習

Slide 3

Slide 3 text

3 でも… でもあんまり語られることがない…

Slide 4

Slide 4 text

4 Qiitaのタグで⽐較 https://qiita.com/tags/%e5%bc%b7%e5 %8c%96%e5%ad%a6%e7%bf%92 https://qiita.com/tags/%e6%a9%9f%e6% a2%b0%e5%ad%a6%e7%bf%92

Slide 5

Slide 5 text

5 語りましょう 強化学習について語ります

Slide 6

Slide 6 text

みんな⼤好き (なのにあまり語られない) 強化学習 (について語る)

Slide 7

Slide 7 text

7 どうぞよろしく スピーカー名 − さだまつ 所属 − データアナリティクス事業本部 − インテグレーション部 − 機械学習チーム ロール − マネージャー

Slide 8

Slide 8 text

8 おしながき • 位置付けと基本構成 • 解法の種類 − 価値ベース − ⽅策ベース • ニューラルネットワークおよび深層学習の適⽤ • 弱点と対策

Slide 9

Slide 9 text

9 位置付けと基本構成 • 位置付けと基本構成 • 解法の種類 − 価値ベース − ⽅策ベース • ニューラルネットワークおよび深層学習の適⽤ • 弱点と対策

Slide 10

Slide 10 text

10 強化学習の位置付け ⼈⼯知能 (Artificial Intelligence, AI) 機械学習 (Machine Learning, ML) 教師あり学習 教師なし学習 強化学習 NeuralNetwork DeepLearning

Slide 11

Slide 11 text

11 強化学習の基本構成

Slide 12

Slide 12 text

12 強化学習の強み • 環境に対して学習 • ⼀連の⾏動を獲得 • 1度の⾏動に対する評価尺度の定義が難しい問題 • 未知の環境に対する適応

Slide 13

Slide 13 text

13 強化学習の適⽤領域 • ゲームAI • 機械の動作制御 • ⾃動運転 • ロボットのアーム制御や歩⾏制御 など • 対話型インターフェースの最適化 • 商品・コンテンツの推薦(レコメンド) • スマートスピーカーやチャットボットの応答 など

Slide 14

Slide 14 text

14 解法の種類 • 位置付けと基本構成 • 解法の種類 − 価値ベース − ⽅策ベース • ニューラルネットワークおよび深層学習の適⽤ • 弱点と対策

Slide 15

Slide 15 text

15 強化学習による問題解決 初期状態→⽬標状態 = 1エピソード 1エピソード全体で得られる報酬 = 累積報酬 を最⼤化することが⽬的 基本的に ⾼い報酬=良い⾏動 累積報酬の最⼤化=良い⾏動の積み重ね によって問題を解決する(⾏動を獲得する)

Slide 16

Slide 16 text

16 ⽅策関数 状態sを⼊⼒として⾏動aを出⼒(選択)する関数 決定的⽅策 確率的⽅策 状態 ⾏動

Slide 17

Slide 17 text

17 価値関数 状態価値関数 (Bellman⽅程式) ⾏動価値関数 (Q値) 状態 s ⾏動 a ⽅策 π 割引率 γ ステップ t

Slide 18

Slide 18 text

18 強化学習の解法 https://qiita.com/shionhonda/items/ec05aade07b5bea78081 価値ベース ⽅策ベース

Slide 19

Slide 19 text

19 強化学習の解法 価値ベース • 大きく分けて, Q-Learningに基づくアプローチとSARSAに基 づくアプローチの2種類 • 方策関数 π を固定し, 価値関数 Q のみを学習によって改善 ⽅策ベース • 方策関数 π を直接改善 • 行動空間が連続な場合や多変数の場合に使用

Slide 20

Slide 20 text

20 価値ベースの解法 Q-Learning SARSA

Slide 21

Slide 21 text

21 ⽅策ベースの解法 Policy Gradient REINFORCE

Slide 22

Slide 22 text

22 ニューラルネットワークおよび深層学習の適⽤ • 位置付けと基本構成 • 解法の種類 − 価値ベース − ⽅策ベース • ニューラルネットワークおよび深層学習の適⽤ • 弱点と対策

Slide 23

Slide 23 text

23 ニューラルネットワークの適⽤ https://jp.mathworks.com/discovery/convolutional-neural-network-matlab.html 画像分類に対するCNNの適⽤

Slide 24

Slide 24 text

24 ニューラルネットワークを適⽤するメリット https://aws.amazon.com/jp/builders-flash/202105/accelerate-deepracer-model-development/ ⼈間が実際に観測している「状態」に 近いデータ(画像や信号等)を エージェントの学習に利⽤可能 ex. AWS DeepRacer

Slide 25

Slide 25 text

25 深層学習を⽤いた解法 Deep Q-Network (DQN) 状態評価に深層学習を適⽤ CNNを利⽤するだけでなく以下のアイデアで学習を安定させる • Experience Replay • ⼀旦経験した状態/⾏動/報酬/遷移先をメモリーに蓄積し、学習を⾏う際は そこからランダムサンプリングして利⽤する • Fixed Target Q-Network • データからいくつかサンプルを抽出してミニバッチを作成し、その学習中 は期待値の計算に利⽤するθは固定する • Clipping • 与える報酬を固定する (正なら1、負なら-1 など)

Slide 26

Slide 26 text

26 弱点と対策 • 位置付けと基本構成 • 解法の種類 − 価値ベース − ⽅策ベース • ニューラルネットワークおよび深層学習の適⽤ • 弱点と対策

Slide 27

Slide 27 text

27 強化学習の弱点 • サンプル効率が悪い • 学習に膨⼤なデータが必要 • データ量に⽐例して学習時間がかかる • 過学習しやすい • 局所最適(ローカルトラップ)にハマりやすい • 再現性が低い • 同⼀の⼿法でも学習が収束した時点のモデル同⼠で獲得 報酬に差異が発⽣する

Slide 28

Slide 28 text

28 弱点への対策 • テスト可能なモジュール化 • エージェント、学習器、オブザーバーなど • 実験管理 (ログ出⼒) • ハイパーパラメータや報酬に関する値、⾏動分布など • 学習パイプライン (学習の⾃動化) • アルゴリズムの改良 • 転移学習、模倣学習

Slide 29

Slide 29 text

29 まとめ

Slide 30

Slide 30 text

30 まとめ • ⼀連の⾏動や未知の環境に対して有効 • 環境に対する価値や⽅策を最適化することで学習 • ニューラルネットワーク(深層学習)を利⽤すること で⼈間が実際に観測している状態を利⽤可能 • 幾つかの弱点があるものの、アルゴリズムの改良を 含めた対策についても研究されている

Slide 31

Slide 31 text

No content