強化学習

機械学習」という講義のために調べたメモ。

ε-グリーディ法の実装と検討がレポート課題に出たけど、どうもそれらしきものがヒットしない。
なので、

ある環境内におけるエージェントが、現在の状態を観測し、取るべき行動を決定する問題を扱う機械学習の一種。エージェントは行動を選択することで環境から報酬を得る。強化学習は一連の行動を通じて報酬が最も多く得られるような方策(policy)を学習する。
強化学習 - Wikipedia

とな。
この説明だけでは教師なし学習との差別化が微妙だなぁ、と思っていたら、学部時代の教科書にばっちり書かれていた。

知能システム工学入門

知能システム工学入門

強化学習では、どのように行動すべきだったかを教師信号として得ることはできないが、その代わりに報酬(reward)と呼ばれるスカラー値を得ることができる。強化学習では、この報酬を唯一の手がかりとして学習を進める。

これは割りと分かりやすい説明かも。

では、報酬は、教師信号と何が違うのだろうか。例えば、ロボットがある迷路で、東西南北に分岐した分かれ道に直面しており、東方向に進んだとしよう。このとき教師信号は「南に進むべきだった」というように答えの形で与えられる。一方、報酬は25というスカラー値で与えられ、ほかの方向に進んだ場合の報酬についての情報は得られない。

なるほど、ある局面で選んだ選択肢について正解か不正解かみたいな形ではなくて、適当な値で評価してやる、と。

このため、このロボットは比較のため、ほかの方向についても少なくとも一度は進む必要がある。このように強化学習では試行錯誤的な探索(trial-and-error search)が要求される。

ほほぅ。確かにそうなるよね。


ここまででようやくwikipediaに書かれていた内容が理解できた。

  1. エージェントは何らかの行動選択をすることで(行動選択の結果としての)報酬を得られる。
  2. 報酬をもとに自分の行動を決定

という流れか。


後は、機械学習全般の話と同じように、「報酬」の決め方と「行動選択」のための戦略がポイントになってくるようだ。
「報酬」は対象となる問題により異なる。
「行動選択」が各種アルゴリズムに相当。


ε-グリーディ法はその中の一つ。
グリーディ法とランダム法の中間に属する手法。
グリーディ法は、報酬が最大となるような行動を選択する。
当たり前のようだけど、上の定義を見てもらえれば分かるように、「最大」と言いつつ比較対象がないので、ある状況下でエージェントが選ぶ行動は常に一意に決まってしまうということ。
同じ行動を選び続けることに相当。
現在、最も良い行動が選べている場合は良いが、最も良い行動を選べているかは定かではない。


一方、ランダム手法はとにかく毎回ランダムに行動を決定する。
現在最も良い行動を選べていない場合は、行動を変えることができる。
しかし、最も良い行動を選べている場合は、最も良い行動以外を選択するようになってしまう。


ε-グリーディ法はこの中間の手法なので、一定の確率で現在と異なる行動を選択し、それ以外では現在最も良いと思われる行動を選び続ける。
両方の長所をうまくあわせ持つ手法。


結論。
実装はすんごい簡単。