Q学習

Q学習（Qがくしゅう、）は、機械学習分野における強化学習の一種である。
概要.
Q学習は機械学習手法の方策オフ型TD学習の一つである。概念自体は古くから存在するが、Q学習（）という名前で今日の手法がまとめられたのは、1989年のクリス・ワトキンズ（）の論文に端を発する。
Q学習は有限マルコフ決定過程において全ての状態が十分にサンプリングできるようなエピソードを無限回試行した場合、最適な評価値に収束することが理論的に証明されている。実際の問題に対してこの条件を満たすことは困難ではあるが、この証明はQ学習の有効性を示す要素の一つとして挙げられる。
Q学習の内容.
Q学習では実行するルールに対しそのルールの有効性を示すQ値という値を持たせ、エージェントが行動するたびにその値を更新する。ここでいうルールとはある状態とその状態下においてエージェントが可能な行動を対にしたものである。例えばエージェントの現在の状態をformula_1とし、この状態で可能な行動がformula_2, formula_3, formula_4, formula_5の4通りあるとする。このとき、エージェントは4つのQ値、 formula_6、formula_7、formula_8、formula_9 を元に行う行動を決定する。行動の決定方法は理論上では無限回数試行するならランダムでもQ値の収束は証明されているが、現実には収束を早めるため、なるべく Q値の大きな行動が高確率で選ばれるように行う。選択方法としては、ある小さな確率formula_10でランダムに選択し、それ以外では Q値の最大の行動を選択するformula_10-グリーディ手法や、遺伝的アルゴリズムで使用されているルーレット選択、以下のようなボルツマン分布を利用したソフトマックス手法などが使用されている。
ここで formula_13 は正の定数、formula_14 は状態 formula_1 でエージェントが可能な行動の集合である。
行動を決定した場合、次にその状態と行動のQ値を更新する。例として状態 formula_1のエージェントが行動 formula_2を選び、状態が formula_18 に遷移したとする。このとき formula_6 を次の式で更新する。
ここで formula_21 は学習率といい、後述する条件を満たす数値であり、formula_22 は割引率といい0以上1以下の定数である。また formula_23 はエージェントが formula_18 に遷移したときに得た報酬である。上記の更新式は現在の状態から次の状態に移ったとき、そのQ値を次の状態で最も Q値の高い状態の値に近づけることを意味している。このことにより、ある状態で高い報酬を得た場合はその状態に到達することが可能な状態にもその報酬が更新ごとに伝播することになる。これにより、最適な状態遷移の学習が行われる。
Q学習は学習率 formula_21 が以下の条件を満たすとき、全ての Q値は確率 1 で最適な値に収束することが証明されている。
この収束性の良さのため Q学習に関する多くの研究がなされているが、いくつかの問題点も指摘されている。例えば Q学習による理論的保証は値の収束性のみであり、収束途中の値には具体的な合理性が認められないため、（価値反復法の） Q学習は方策勾配法と比べると学習途中の結果を近似解として用いにくい。また、パラメータの変化に敏感でありその調整に多くの手間が必要である、などがある。