Q学習

Q学習（Qがくしゅう、）は、機械学習分野における強化学習の一種である。

概要 
Q学習は機械学習手法の方策オフ型TD学習の一つである。概念自体は古くから存在するが、Q学習（）という名前で今日の手法がまとめられたのは、1989年のクリス・ワトキンズ（）の論文に端を発する。

Q学習は有限マルコフ決定過程において全ての状態が十分にサンプリングできるようなエピソードを無限回試行した場合、最適な評価値に収束することが理論的に証明されている。実際の問題に対してこの条件を満たすことは困難ではあるが、この証明はQ学習の有効性を示す要素の一つとして挙げられる。

Q学習の内容 
Q学習では実行するルールに対しそのルールの有効性を示すQ値という値を持たせ、エージェントが行動するたびにその値を更新する。ここでいうルールとはある状態とその状態下においてエージェントが可能な行動を対にしたものである。例えばエージェントの現在の状態をとし、この状態で可能な行動が, , , の4通りあるとする。このとき、エージェントは4つのQ値、 、、、 を元に行う行動を決定する。行動の決定方法は理論上では無限回数試行するならランダムでもQ値の収束は証明されているが、現実には収束を早めるため、なるべく Q値の大きな行動が高確率で選ばれるように行う。選択方法としては、ある小さな確率でランダムに選択し、それ以外では Q値の最大の行動を選択する-グリーディ手法や、遺伝的アルゴリズムで使用されているルーレット選択、以下のようなボルツマン分布を利用したソフトマックス手法などが使用されている。

ここで  は正の定数、 は状態  でエージェントが可能な行動の集合である。

行動を決定した場合、次にその状態と行動のQ値を更新する。例として状態 のエージェントが行動 を選び、状態が  に遷移したとする。このとき  を次の式で更新する。

ここで  は学習率といい、後述する条件を満たす数値であり、 は割引率といい0以上1以下の定数である。また  はエージェントが  に遷移したときに得た報酬である。上記の更新式は現在の状態から次の状態に移ったとき、そのQ値を次の状態で最も Q値の高い状態の値に近づけることを意味している。このことにより、ある状態で高い報酬を得た場合はその状態に到達することが可能な状態にもその報酬が更新ごとに伝播することになる。これにより、最適な状態遷移の学習が行われる。

Q学習は学習率  が以下の条件を満たすとき、全ての Q値は確率 1 で最適な値に収束することが証明されている。

この収束性の良さのため Q学習に関する多くの研究がなされているが、いくつかの問題点も指摘されている。例えば Q学習による理論的保証は値の収束性のみであり、収束途中の値には具体的な合理性が認められないため、（価値反復法の） Q学習は方策勾配法と比べると学習途中の結果を近似解として用いにくい。また、パラメータの変化に敏感でありその調整に多くの手間が必要である、などがある。

参考文献 
 Watkins, C.J.C.H. (1989). Learning from Delayed Rewards. PhD thesis, Cambridge University, Cambridge, England. PDFダウンロード
 松本啓之亮、黄瀬浩一、森 直樹、『知能システム工学入門』、コロナ社、2002年、ISBN 4-339-02392-2
 大内 東、山本雅人、川村秀憲『マルチエージェントシステムの基礎と応用』、コロナ社、2002年、ISBN 4-339-02388-4

関連項目 
 強化学習
 DQN

 
機械学習アルゴリズム
強化学習