
引用: ゼロから作るDeep Learning ❹ ―強化学習編
-
価値を如何に定めるか?
- 状態
と方策 で決める→状態価値関数 - 状態
と方策 と行動 で決める→行動価値関数 (Q関数)
- 状態
-
方策
はグラフ遷移そのものと等しい存在- 例えば,
は状態 から行動 を実行する確率を表す
- 例えば,
-
価値ベース手法
- どうやって解くの?
- まず, 適当に[サンプリング](https://scrapbox.io/yuwd/%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AA%E3%83%B3%E3%82%B0)してきた状態 $s$から $T$が最大となる $a, Q'$を探す
- 現在の $Q$と $Q'$の差を誤差と捉え, モデルを更新
- [DQN](https://yuiga.dev/blog/ja/posts/dqn//) では, これらに加えて「経験再生」と「ターゲットネットワーク」という概念が導入される
- 方策ベース手法
-
Q関数のように価値を近似するのではなく, 方策を直接近似する
-
REINFORCE / Actor-Critic (方策勾配法 → REINFORCE → Actor-Critic の順に勉強すると良い)
-
方策勾配法
- 方策
をNNで近似して, その勾配を求める - 軌道
が で与えられたとき - 目的関数を次のように定義
- SGDと同様に勾配方向
にパラメタを更新する
- 方策
-