読んでいる本(出典): 強化学習 : Richard S.Sutton, Andrew G.Barto, 三上 貞芳, 皆川 雅章 : 本 : Amazon.co.jp
読んだページ: 119~147ページ
以下、自分の理解。
- この本の2部で紹介される手法の特徴(111~113ページ、142ページ): 方策と価値関数を交互に改善していく考え方は共通だが、以下の点が異なる。
環境のダイナミクス(つまり、次のステップの状態の確率分布と報酬の期待値)が予め必要か。 | ブートストラップするか(つまり、ある状態の価値の推定に、他の状態の価値の推定値を用いるか)。 | |
動的計画法 | 必要。 | ブートストラップする。 |
モンテカルロ法 | 不要。 | ブートストラップしない。 |
TD学習 | 不要。 | ブートストラップする。 |
- ブートストラップ=靴ひも。スポットレートやディスカウントファクターの計算のブートストラップが思い浮かぶかも。靴ひもを編みあげるように何かを計算していくことのはず(?)で、この本では(価値関数の)推定値をもとに推定値を計算することを指していて、ディスカウントファクターも1年後のDF → 2年後のDFと推定していくので意味合いは同じ。たぶん。
- 5章はモンテカルロ法。
- 4章で扱った動的計画法では環境のダイナミクスを既知としていたが、環境の応答がわからないときは、経験から推定することになる。
- 2章で散々やっていたスロットマシンのタスクも、各マシンのリターンはわからず、経験で判断していた。
- 1、2章では強化学習とは「経験に学ぶ」と強調されていた気がするけど、環境の応答が既知であることを前提にする4章(動的計画法)は何だったんだろう。強化学習へ入るための準備にすぎないのだろうか…と思ったけど、環境の応答がわかることと、ある行動が後々どう効いてくるかがわかることは別の話だよね。レンタカー2営業所タスクでも、各営業所へやってくる顧客数の確率分布が既知であってもじゃあどうレンタカーを融通し合うべきかは自明ではなかった。これも経験に学ぶというのか。尤も実際に経験するのではなくて、方策改善フェーズで argmax な行動を選ぶということだけど。
- じゃあ
を推定するには、
の下でのエピソード群で、
が出た後の収益を平均なりすればいいよね。
- ブラックジャック(121ページ)のルールわかりません。
- (環境の)「モデルがない場合には、状態価値のみでは不十分である(125ページ)」。行動価値もほしいと。
- この章で紹介されているアルゴリズムは3つ(130、134、136ページ)。
- 方策オフ型モンテカルロ法においては、各サンプルエピソードで、終端側から順にたぐって改善対象の方策と合致するxステップのみを行動価値の評価に使用する。このサンプルを単純平均するとその収益の生起確率を誤るのでエピソード生成用の方策(挙動方策)と改善対象の方策(推定方策)それぞれにおける「状態 → 行動 → 状態 → … → 終状態」生起確率の比を乗じる(比をとると環境のダイナミクスが打ち消し合い、結局環境のモデルは不要)。これは以下の本の32ページ (13) 式そのもの。この箇所はマルコフ連鎖ではないモンテカルロ法の話で、サンプル生成用の確率分布が、じゅうぶん似ていないと非効率だという話。それは方策オフ型モンテカルロ法においても、挙動方策が推定方策に似ていないと非効率なのは同じ。
- 6章はTD学習。
- モンテカルロ法と違い、
を評価するのにエピソード終了まで待たず、ステップごとに次の状態の価値(の現在の推定値)からブートストラップする。
5章 モンテカルロ法の演習では、演習問題になっているカーブを曲がるレースカー問題より、ブラックジャックの方が問題として面白そうだけど、膨大なサンプルエピソードが必要だから演習問題になっていないのだろうか。