機械学習に含まれる「Q学習」について何回かに分けて取り上げます。 前回紹介した「Excelでわかる機械学習超入門」(著者:涌井良幸 発行所:技術評論社)で勉強しています。
資料ご覧ください。→ Q学習
p.1 Q学習の位置付けです。強化学習の一種です。
p.2 蟻が巣から出てケーキを見つけ、仲間に知らせたり、運んでいるうちに最短距離を探していくモデルを考えます。道を忘れないため、フェロモンを匂いとして残していきます。何度も通る箇所が強くなります。 ルートの途中にはクッキーが報酬として存在することもあります。 フェロモンは時間と共に揮発して薄くなっていくことも想定します。簡略化するためモデルを設定します。9つの部屋があって、左上の巣から右下のケーキに到達するルートを蟻が学習して最短ルートに収束していくとします。真中の部屋にクッキーが置いてあります。右の真中は行き止まりです。
p.3 左上が状態s=1、右下が状態S=9になるようナンバリングします。現在状態S=2(黄色)に蟻がいるとします。各々の状態の境界には、以前通った際のフェロモンが残っています。状態S=2から状態S=5にいく場合がフェロモンが7と一番多いので、蟻は下に移動します。 ここで「Q(s,a)」という「Q値」を定義します。s:状態、a:アクションです。 上述のQ値は、Q(2、下)=7となります。下以外の方向に進む場合もありますので、左下の表のようにQ値を整理することができます。 Q値は行動するために「価値」「報酬」を数値で表しています。今回はフェロモン濃度やクッキーがQ値になります。
p.4 いろいろなルートがありますが、左上のルートをエピソード1とします。下図は、各状態の時間、報酬及びアクションを書いておきます。
p.5 状態Stから状態St+1に蟻が移動した場合について一般式にしています。状態St+1には、4つの方向にフェロモンがQ(St+1,1~4)残っていて、この4つの内で大きいものがmaxQ(st+1、at+1)です。これに係数γがかかっています。このγは割引率で、フェロモンが経時的に薄くなる可能性を掛けています。これにクッキーの報酬分rt+1を加えます。 この値が期待報酬と呼びます。この期待報酬とその前室のQ(st,a1)を天秤にかけます。天秤の支点から各々のQ値までの長さを各々1-αとαとします。αは学習率です。勉強するほどαが大きくなるので、1−αの腕が短くなります。これが釣り合うようにQ値の増減が生じます。 補正したQ値を新しいQ値として、この状態に入るためのQ値として更新させます。この値を「遅延報酬」と呼びます。
この漸化式に値を入れて、学習した結果より最短距離を割り出していきます。 スケッチする際に、線を幾つも描いて最終的に線を確定していくのに似ていますね。