Deep Learning Lab (DLLAB) 主催イベント DLLAB 強化学習 Day 2021 講演資料 『これから強化学習を学びたい人へ』 https://dllab.connpass.com/event/198873/
DLLAB 強化学習 Day 2021『これから強化学習を学びたい⼈へ』株式会社キカガク 代表取締役会⻑ 吉崎亮介@yoshizaki_91講演者フォローお待ちしてます!
View Slide
本⽇の講演のゴール強化学習をこれから学び始めたいギャップDeep Q Network (DQN)囲碁AlphaGo• 強化学習とはどのような位置付け?• 強化学習はどの分野への応⽤?• 強化学習と深層強化学習の違い• なぜ事例が少ないのか• ⾃社の課題へ適⽤できるための条件• 学び⽅のロードマップ理解しておきたいこと
強化学習と機械学習の位置付け教師なし学習強化学習教師あり学習機械学習
強化学習と機械学習の位置付け教師なし学習強化学習教師あり学習機械学習状態を推定⾏動を決定前処理など※ 今回は省略
強化学習と機械学習の位置付け環境エージェント
強化学習と機械学習の位置付け環境エージェント状態を推定
強化学習と機械学習の位置付け環境エージェント⾏動を決定状態を推定
強化学習と機械学習の位置付け環境エージェント⾏動を決定状態を推定報酬
強化学習と機械学習の位置付け環境エージェント⾏動を決定状態を推定報酬(教師あり学習)(強化学習)
よくある迷路の例で強化学習をより深く理解しよう
よくある迷路の例で強化学習をより深く理解しよう強化学習で代表的な Q 学習ではこれで⾏動を全て決める環境に対応する状態の集合時間ステップ に対する⾏動と状態の確率変数⾏動の集合学習率割引率Q 値(更新後)Q 値(更新前)報酬 Q 値(次の⾏動と状態)よくわからない…今はこの状態でOK!Q 学習では Q 値で評価を⾏い、これを状態と⾏動に基づいて更新していく現状で押さえておきたいポイント
よくある迷路の例で強化学習をより深く理解しようStep1. 各マス⽬に状態を設定今回は迷路のマスが9 個なので状態も 9 個ですね
よくある迷路の例で強化学習をより深く理解しよう000000000000000000000000000000000000Step2. 各状態の⾏動に対応する Q 値を初期化して報酬を設定各状態での⾏動は『上下左右』の4パターンですね+1-1-1-1-1報酬は正の値だけでなく負の値でもOKですね
よくある迷路の例で強化学習をより深く理解しようStep3. 各状態の⾏動に対応する Q 値に基づいて⾏動を決定(とはいえ最初はランダムに⾏動)+1-1-1-1-1最初は何もわからないのでとにかくランダムに⾏動します
よくある迷路の例で強化学習をより深く理解しようStep3. 各状態の⾏動に対応する Q 値に基づいて⾏動を決定+1-1-1-1-1何回か挑戦してたまたまゴールに到達できました!
よくある迷路の例で強化学習をより深く理解しよう000000000000000000000000000000000010+1-1-1-1-1Q 値に報酬が加わって更新されますStep3. 各状態の⾏動に対応する Q 値に基づいて⾏動を決定報酬ここでゴールした状態と⾏動のQ 値のみ報酬が加算され他の状態と⾏動のQ 値はそのままです* 便宜上、概念の理解を優先するために学習率と割引率の計算は無視して、現在の Q 値に報酬や次の Q 値を⾜し合わせています。概念が理解できた⽅は右に⽰す式で正しい計算に挑戦してみましょう。報酬
よくある迷路の例で強化学習をより深く理解しようStep3. 各状態の⾏動に対応する Q 値に基づいて⾏動を決定+1-1-1-1-1また何回か挑戦してゴールの⼀歩⼿前に到達できました!
よくある迷路の例で強化学習をより深く理解しよう000000000000000000000000000000100010+1-1-1-1-1Q 値は報酬だけでなく次の⾏動と状態のQ 値からも影響されるのですStep3. 各状態の⾏動に対応する Q 値に基づいて⾏動を決定Q 値(次の⾏動と状態)伝播* 便宜上、概念の理解を優先するために学習率と割引率の計算は無視して、現在の Q 値に報酬や次の Q 値を⾜し合わせています。概念が理解できた⽅は右に⽰す式で正しい計算に挑戦してみましょう。
よくある迷路の例で強化学習をより深く理解しようStep3. 各状態の⾏動に対応する Q 値に基づいて⾏動を決定+1-1-1-1-1そのままゴール!
よくある迷路の例で強化学習をより深く理解しよう000000000000000000000000000000100020-1-1-1-1Step3. 各状態の⾏動に対応する Q 値に基づいて⾏動を決定報酬+1報酬* 便宜上、概念の理解を優先するために学習率と割引率の計算は無視して、現在の Q 値に報酬や次の Q 値を⾜し合わせています。概念が理解できた⽅は右に⽰す式で正しい計算に挑戦してみましょう。
よくある迷路の例で強化学習をより深く理解しよう+0-000000000+0-00000000000+00-+00-+0-1-1-1-1ゴールから得た報酬が Q 値として伝播して最適な⾏動が決まっていく報酬+1伝播伝播伝播伝播何度も何度も繰り返して Q 値を更新することで最適な⾏動が求まるのですねQ 値は正の値だけでなく負の値も伝播しますね
よくある迷路の例で強化学習をより深く理解しよう環境エージェント⾏動を決定状態からQ値を推定報酬 (強化学習)
強化学習を適⽤するための条件何度も繰り返して特定の状態に対する⾏動を試せる環境が必要シミュレータであれば実機よりも多く試⾏することが可能シミュレータを作るには法則の把握が不可⽋ゲーム法則:ルールロボット法則:物理株取引法則はないが市場に与える影響が微⼩と仮定すれば過去の取引でシミュレーションが可能 (?)経営の意思決定を丸投げするのは夢のまた夢かな…
強化学習と深層強化学習ブロック崩しの場合にどうやって状態を決める…??迷路の例と異なり環境の状態がブロック、ボールエージェントと関係性が複雑すぎて各状態の⾏動の全ての Q 値を考えるのは困難です…⾏動は左右の2パターンに限定することもできますが実際にはコントローラーのスティックの倒し⽅の強弱で変わりますよね?
強化学習と深層強化学習ここで、畳み込みニューラルネットワーク (CNN) の深層学習が登場環境エージェント⾏動を決定報酬(スコア)(強化学習)(教師あり学習)状態状態からQ値を推定画像Q 値CNNこれが深層強化学習DQN のベースはこちらで厳密にはさらにうまく学習させるためのテクニックを導⼊しています。
学び⽅のロードマップまず実装して試しながら深堀りしたい⽅Q 学習の数式の理解は後回しで PyTorch のチュートリアルに挑戦おすすめ:PyTorch チュートリアル(⽇本語翻訳版) https://yutaroogawa.github.io/pytorch_tutorials_jp/理論を押さえてから始めたい⽅ベルマン⽅程式から Q 学習の更新式を導出してみようおすすめ:これからの強化学習(書籍)予想:おそらくどちらのルートを通ったとしても研究開発レベルで深掘りしていく頃には数式に対する理解もある程度必要になり勉強することになります。
学び⽅のロードマップ強化学習の難易度が⾼い数式を理解するための理想的なロードマップ(吉崎の主観)微積分単回帰分析重回帰分析プログラミング確率統計情報理論ロジステ%&ク回帰SVM主成分分析k平均法決定⽊ニ+,ラルネ&トワ,クデ%,プラ,ニング線形代数︵基礎編︶線形代数︵応⽤編︶アンサンブル学習︵XGBoostなど︶ガウス過程回帰Q学習 深層強化学習 独⾃の研究制約付き最適化問題ベイズ最適化ベイズ統計この内容を網羅した⼿書きの数学とハンズオンでのプログラミングのコースを全編12時間動画付き無料公開中これはやるしかない!(経営⼤丈夫かいな…)この裏話は Qiita にてキカガクで⼀番⼈気の脱ブラックボックスコースに完全版が登場&全編無料で公開決定!の裏話で公開中kikagaku.ai 検索
まとめ• 強化学習は⾏動を決め、深層学習含めた教師あり学習では状態(から Q 値)を推定• シミュレータでの再現が重要で、法則の把握がシミュレータ制作には必要ご清聴いただき、ありがとうございました。キカガク Wantedly 検索教育へ熱い思いを持っている⽅ぜひ⼀緒に働きましょう!