本記事では、確率選択課題におけるQ学習式のパラメータの役割について解説をします。ただし、僕自身のバックボーンが実験社会心理学なので、機械学習やデータサイエンス寄りの解説というよりは、心理学、行動科学寄りの、また実際の行動選択にパラメータがどのように寄与するかを解説していきます。一応勉強はしていますが、間違いがあったらお気軽にコメントでご指摘していただけると幸いです。
確率選択課題とは
確率選択課題とは、提示された2つの刺激のペア(AB)からどちらかの刺激(AもしくはB)を選択することを繰り返す課題です。ただし、刺激選択後の報酬や罰のフィードバックは異なる確率が付与されています。一方の刺激(A)を選択して報酬がフィードバックされる確率は80%、罰がフィードバックされる確率は20%となっています。また、もう片方の刺激(B)を選択して報酬がフィードバックされる確率は20%、罰がフィードバックされる確率は80%となっています。どちらかの刺激の方が報酬の確率が高くなっています。実際に人間や機械がこの課題をやると、不思議なことに段々と報酬の出やすい方の刺激を選択するようになります。また、この刺激ペアの数は増やすこともできます。たとえば、AB(80% : 20%)、CD(70% : 30%)、EF(60% : 40%)の刺激ペアをそれぞれ提示して選択させるなんてことも課題の目的によってはできます。上記の()内の数字は、報酬確率を高く設定した刺激(A、C、E)についての(報酬確率 : 罰確率)を意味します。報酬確率を低く設定した方の刺激(B、D、F)については(罰確率 : 報酬確率)になります。

フィードバックされる報酬や罰は、お金を利用することが多いです。たとえば10円を設定したらどの刺激を選んでも報酬(+)であれ罰(-)であれその10円のフィードバックを与えることが多いように思います。僕の知っている限りは、この値の大きさが一貫していない課題を見たことはありません。まあ後述するアルゴリズムでのパラメータ推定をするのであれば、原理的にはフィードバックの値の大きさを変化させたり、あるいはその値の大きさをランダムにすることは、その研究の目的によってはとても有意義な気はします。また、社会心理学寄りの実験心理学の研究などでは、フィードバックにお金ではなく、顔文字(報酬 : 🙂 罰 : ☹️) を利用することもあります。
文書で説明するのめんどくさいんで、こちらのURLから簡易な実験に参加してみてください。実際に実験を行ってみると、なんか知らんけどAを選びたくなりませんでしたか?なんか知らんけど、Bは嫌いだなって思いませんでしたか?なんか知らんけど。ちなみに、Aの報酬確率を90%、罰確率を10%、Bの報酬確率を10%、罰確率を90%に設定しています。なので、皆さんの直感は正しいです。Aを選ぶのが合理的です。
そのような合理的な選択がなぜ行われるかを数理的に説明を試みたものがQ学習と呼ばれるものです。本記事では、Q学習とその関連するパラメータを説明していきます。
Q学習のパラメータ
Q学習とは、いくつかの行動の選択肢からどのような行動を選択するかを学習していく過程を表現したものです。Q学習は、Q値と呼ばれるパラメータの更新が行われて表現されます。また、Q値の更新には、αやρ、またδと呼ばれるパラメータが利用されます。
また、βというパラメータも関与しますが、これは、Q値の更新それ自体に関わるというよりも、Q値の利用に関わるパラメータだと僕は捉えているので、βについては最後に解説をします。
詳細は後述しますが、一番単純な確率選択課題におけるQ学習は、以下の2つの式で表現ができます。
\[ δ(t) = FeedBack(t) · ρ - Q_i(t) \]
\[ Q_i (t+1) = Q_i (t) + α・δ(t) \]
また、Q学習で得られたQ値を実際の選択に利用する意思決定過程は、以下の式で表現します。
\[ P_A(t) = \frac{1}{1 + exp( -β · (Q_A(t) - Q_B(t)))} \]
Q値とは
先ほども書きましたが、Q学習はQ値と呼ばれるパラメータの更新によって表現がされます。
Q値は、行動価値と呼ばれるパラメータです。行動価値とは、その名の通り、行動の価値を意味します。ここで表現される行動とは、過去に選択して学習してきた行動を意味しています。過去に学習した行動の価値に基づいて将来の行動選択の意思決定がなされるわけです。
さて、確率選択課題といった課題の解析によくQ学習のアルゴリズムでの解析が行われます。この課題では、刺激を選択することが実験参加者に求められる行動です。そのため、行動価値であるQ値は、実際的には行動価値というよりも、刺激価値捉えた方がわかりやすいかもしれません。具体的にいうと、QA は「刺激Aを選択する行動の価値」という意味になります。実際にこの課題に従事している人の視点に立ってみると、QA を「刺激Aの価値」と捉えていることになります。
詳細は、αやρのパラメータの説明のところで後述しますが、最初に書いた2つの式で刺激iについてQ値を更新できます。
\[ δ(t) = FeedBack(t) · ρ - Q_i(t) \]
\[ Q_i (t+1) = Q_i (t) + α・δ(t) \]
これらの式は、t+1試行目の刺激iについてのQ値をt試行目の行動選択によって更新することを意味しています。また、FeedBack(t)には、t試行目の行動選択によって得られたフィードバックの値を代入してあげます。ただし、大抵の研究では、報酬が得られたら1を、報酬が得られなかったら0を符号化して付与しています。
これらの式の詳細は後述しますが、とりあえず現段階では、t時点における刺激iの価値(厳密には刺激iを選択する行動の価値)であるQi(t)は、なんか知らんけどパラメータを元に計算したら、t+1(次の)時点における刺激iについての価値であるQi(t)を更新することができるようになるんだなあって考えてもらえたらそれだけで十分です。
ρとは
ρとは報酬(罰)感受性と呼ばれるパラメータです。このパラメータは、
\[ δ(t) = FeedBack(t) ・ ρ - Q_A(t) \]
という式で出てきます。
絶対的な報酬であるFeedBack(t)に掛け合わせることでそのフィードバックの値を修飾するパラメータです。
パラメータとか修飾とか訳わかりませんね。大丈夫です。僕も最初の頃は訳わかりませんでした。だから簡単な言葉で表現してみましょう。ということで、先ほどの実験URLで実験をやってみてください。さてAとBどっちの刺激が嬉しかったですか?
\[ δ(t) = FeedBack(t) ・ ρ - Q_A(t) \]
また、さらに言い換えると、Q値の上限を高めることにも寄与します。\[ Q_i (t+1) = Q_i (t) + α・δ(t) \]