Q値 (G検定)

Q値

1. 定義と概要

Q値とは、強化学習(試行錯誤を通じて、より良い行動の選び方をAIに学ばせる機械学習の手法)においてある状態である行動を取った場合に、その後最適な行動を選び続けたと仮定して得られる将来までの報酬の合計の期待値を表す数値です。Q(s,a)と表記され、状態と行動の組み合わせごとの価値を計算する行動価値関数(ある状態で特定の行動を取ったときの価値を計算する式で、この式が返す数値がQ値にあたります)が返す値にあたります。

具体例として、迷路を進むエージェント(強化学習で行動を選ぶ主体となるAI本体)が、ある分岐点で「右に進む」という行動を取った場合のQ値は、その後ゴールまで最適に進んだ際に得られる報酬の見込みを表します。

強化学習では、エージェントは行動した直後に得られる報酬だけでなく、その先の展開まで見込んだ価値を基準に行動を選ぶ必要があります。目先の報酬が大きくても、その後の展開が悪ければ結果的に損をする場合があります。

この将来までを見込んだ価値を状態と行動の組み合わせごとに数値化したものがQ値であり、エージェントは各状態でQ値が最大となる行動を選ぶことで、長期的に見て得な行動を選択できるようになります。

2. 試験対策ポイント

まず整理しておきたいのは、Q値と行動した直後に得られる報酬(R)の違いです。報酬は1回の行動に対して即時に得られる値であるのに対し、Q値はその後の将来にわたって得られる報酬まで含めた期待値である点が異なります。両者を同一視すると、選択肢の判断を誤りやすいものです。

また、状態と行動の組み合わせごとにQ値を格納した表であるQテーブルの仕組みも押さえておきたいポイントです。行に状態、列に行動を並べたイメージで、エージェントは自分がいる状態の行を参照し、Q値が最大となる列、つまり行動を選ぶことで次の行動を決めます。

Q値が状態と行動ごとの数値そのものであるのに対し、Qテーブルはその数値を一覧できる形でまとめた表です。数値そのものと、数値を並べた入れ物という関係にあたります。

Qテーブルの各Q値は、実際に得られた報酬と、行動後に移った次の状態で得られる最大のQ値を手がかりに、現在の推定値を将来的な結果に少しずつ近づける形で更新されます。この更新を繰り返しながらQ値を学んでいくアルゴリズムはQ学習(Q値を試行錯誤しながら少しずつ更新していく学習アルゴリズム)と呼ばれ、具体的な計算手順は別のテーマとして扱われます。

状態や行動の組み合わせが膨大になるとQ値を表で管理しきれなくなるため、ニューラルネットワークでQ値を近似するDQN(Deep Q-Network。Q値をニューラルネットワークで近似する手法)につながる流れにも触れておきます。

3. 関連概念との比較・相違点

Q値・報酬(R)・状態価値関数(V)(行動を問わず、ある状態そのものの価値を表す関数)は、いずれも価値や利得にかかわる言葉ですが、指している対象が異なります。三つを並べると次のとおりです。

概念 何を表すか
報酬(R) 行動した直後に得られる1回分の値
Q値 状態と行動の組み合わせの価値。将来にわたる報酬まで含めた期待値
状態価値関数(V) どの行動を取るかを問わず、状態そのものの価値

Q値と報酬との最大の違いは、時間軸にあります。目先の報酬だけでなく将来までを見込んだ数値がQ値であり、この違いはG検定の選択肢を見分けるうえでも重要な論点です。同じ行動を取っても、その後の展開次第でQ値の大小が入れ替わることがあり、目先の報酬の大きさだけでは正しい判断にならない場合があります。

状態価値関数との最大の違いは、何の価値を表すかにあります。言い換えると、Q値が「この局面でこの手を打った場合」の価値であるのに対し、状態価値関数は「この局面そのもの」の価値を表すという関係にあります。

状態そのものの善し悪しを比べたいときは状態価値関数を、特定の行動の善し悪しを比べたいときはQ値を使う、という役割分担です。

4. ビジネス・実務での活用シナリオ

ゲームAIの分野では、AtariゲームのAIのようにDQNを用いる場合、各局面(状態)で行動ごとのQ値を比較し、最も高い行動を選ぶ考え方が手の評価の基礎になります。

一方、将棋・囲碁のトップクラスAI(AlphaGo・AlphaZeroなど)は、方策ネットワーク(有望な手の確率を出す仕組み)と価値ネットワーク(局面の良し悪しを数値で表す仕組み)を使います。この二つを組み合わせたモンテカルロ木探索(候補手を繰り返し先読みしながら評価を積み上げる探索手法)が、指し手を決める仕組みの中核です。

探索の過程で算出される行動価値(Q値に相当する値)は、その探索を支える要素の一つです。局面ごとにあらかじめすべての手を読み切らなくても、こうした価値の見積もりを手がかりに有望な手を絞り込めます。

ロボット制御の分野では、センサーで得た周囲の状況を状態とみなし、各動作のQ値を見積もることで、衝突を避けながら目的地に到達する動作の選択に応用されます。周囲の状況が変化しても、その都度Q値の見積もりに基づいて動作を選び直せる点が実務上の利点です。

広告配信・推薦システムの分野では、ユーザーの行動履歴を状態、表示する広告や商品を行動として捉え、将来のクリックや購入までを見込んだQ値が高い選択肢を配信することで、短期的な反応だけに偏らない意思決定につながります。目先のクリック率だけを追う配信とは異なり、その後の購入まで含めた価値で選択肢を評価する点が特徴です。

5. 要点まとめ

  • Q値は、ある状態で特定の行動を取った場合に得られる将来までの報酬の期待値を表す数値で、Q(s,a)と表記されます。
  • 行動直後に得られる報酬(R)とは異なり、Q値はその後の展開まで見込んだ値である点が両者を区別する分かれ目です。
  • Qテーブルは状態と行動の組み合わせごとにQ値を保持する表で、実際の報酬と次状態の最大Q値をもとに値が更新されます。

6. 確認問題

問1Q値は、ある状態で特定の行動を取った後、その後最適な行動を選び続けたと仮定して得られる将来までの報酬の期待値を表す。

解答・解説をみる

○ 正しい

将来にわたる報酬の見込みを状態と行動の組み合わせごとに数値化したものがQ値の定義そのものにあたります。Q(s,a)という表記もあわせて押さえておく論点です。

問2Q値と、行動した直後に得られる報酬(R)は同じ概念であり、両者を区別する必要はない。

解答・解説をみる

× 誤り

正しくは、報酬は1回の行動に対して即時に得られる値であるのに対し、Q値はその先の将来までを含めた期待値であり、両者は異なる概念として区別されます。

問3Qテーブルは状態と行動の組み合わせごとにQ値を保持する表であり、エージェントは各状態でQ値が最大となる行動を選択する。

解答・解説をみる

○ 正しい

行に状態、列に行動を並べたQテーブルを参照し、Q値が最大の行動を選ぶという考え方がQテーブル運用の基本にあたります。