強化学習について
強化学習について調べた際のメモです。
- 達成したいゴールがあるが、各行動に対する評価は与えられない場合
- 「行動の選択肢」と「報酬」
- 強化学習という名前は脳の学習メカニズムであるオペラント学習に由来する
- 報酬は「連続した行動の結果」に対して与えられる(フィードバックに時間差がある)
- 報酬から各行動に対する評価を自分で与える
- ステップごとの評価を与えなくて良いので教師あり学習よりも複雑な問題を扱える
- 学習に時間がかかる
- 状態S、モデルT(状態遷移の関数)、行動A、報酬Rでモデル化 → Markov Decision Process (MDP)
- 時間的な制約下で報酬を最大化するような、ポリシーπ(S → Aの関数)を獲得する問題
- 時間割引をすることでローリスクな行動ばかり取ってしまうのを防ぐ
- Value Iteration (幅優先探索?), Policy Iteration (深さ優先探索?)
- Q値 = 状態行動価値 = 「状態 s で行動 a を選択後、ずっと最適政策をとりつづけるときの利得の期待値」
- Sarsa
- 実際行動してみて一番価値が大きい行動を探す
- モンテカルロ法
- 報酬が得られるまで行動してみて、報酬を分配して各行動を評価する
- Q-Learning
- Tが不要
- 期待値(実際の報酬)と見込みの差分から学習する → TD学習
- 「状態sを離散化した数」×「行動の種類」の表
- 次の状態の価値を現在推定される値の最大値とする
- 探索と活用のトレードオフ (exploration and exploitation dilemma)
- ε-greedy法、Boltzmann分布を使った方法
- Deep Q-Leaning (DQN)
- A3C (Asynchronous Advantage Actor-Critic): 並列計算、Advantageによる報酬の計算、Actor-Critic
- TRPO, Generalised Advantage Estimator, UNREAL, PPO
Refs
- 強化学習で参考になったサイトまとめ - Qiita
- DQNの生い立ち + Deep Q-NetworkをChainerで書いた - Qiita
- ゼロからDeepまで学ぶ強化学習 - Qiita
- これから強化学習を勉強する人のための「強化学習アルゴリズム・マップ」と、実装例まとめ - Qiita
- Pythonではじめる強化学習 - Qiita
- DQNをKerasとTensorFlowとOpenAI Gymで実装する
- 強化学習入門 ~これから強化学習を学びたい人のための基礎知識~ - Platinum Data Blog by BrainPad
- これさえ読めばすぐに理解できる強化学習の導入と実践 - DeepAge
- 強化学習とは?(What is Reinforcement Learning?)
- 強化学習
- 強化学習で〇×ゲームに強いコンピュータを育てる(深層学習 Deep Learning) | 株式会社フォワードネットワーク
- 強化学習とは?ALPHAGOでも使われている強化学習を丁…|Udemy メディア
- 第1回 強化学習とは|Tech Book Zone Manatee
- 「AlphaGo Zero」の衝撃と強化学習の進化 | 日経 xTECH(クロステック)
- Deep Reinforcement Learning | DeepMind
- Machine Learning for Humans, Part 5: Reinforcement Learning
- Reinforcement Learning: 10 Breakthrough Technologies 2017 - MIT Technology Review
- Beginner's guide to Reinforcement Learning & its implementation in Python
- A brief introduction to reinforcement learning
- Reinforcement Learning Introduction
- Introduction to Learning to Trade with Reinforcement Learning – WildML
- Introduction to Various Reinforcement Learning Algorithms. Part I (Q-Learning, SARSA, DQN, DDPG)
- Deep Reinforcement Learning: Pong from Pixels
- Deep Reinforcement Learning Doesn't Work Yet
- Teaching
- 強化学習入門
- 深層強化学習:ピクセルから『ポン』 – 前編 | POSTD
- CartPoleでQ学習(Q-learning)を実装・解説【Phythonで強化学習:第1回】
- 【強化学習初心者向け】シンプルな実装例で学ぶSARSA法およびモンテカルロ法【CartPoleで棒立て:1ファイルで完結】 - Qiita
- http://sysplan.nams.kyushu-u.ac.jp/gen/papers/paper2012/A_BasisOfRL.pdf
- 強化学習 カテゴリーの記事一覧 - いものやま。
- http://www.sakurai.comp.ae.keio.ac.jp/classes/infosem-class/2009/12RL.pdf
- http://mikilab.doshisha.ac.jp/dia/seminar/2001/pdf/ec_03.pdf
【追記】 - ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learni…