2021年5月3日月曜日

小学校で習う「平均」されど「平均」(揺れる平均値)

 【what is this】前回の記事の簡略化バンディット問題では、各ボタンBnが発する乱数(符号付き実数)は、平均Mnで標準偏差1の正規分布としました。このMnは、1ゲーム(1エピソード)中は変わりませんが、操作者には知らせていません。今回は、このMnが(雑音が入るように)ある程度変動する場合を扱います。この条件下で、ある与えられた回数だけ、いずれかのボタンを押して、得られる合計点をできるだけ高くしたい、という問題です。

設定平均値が変動する場合の正規分布乱数
 ボタンnが発する乱数は、前回と同様に、平均Mnで標準偏差1の正規分布とします。前回は、このMnは、1ゲーム(1エピソード)中は変わりませんでしたが、今回は、変動します。すなわち、今回はゲーム中に、Mnに、平均0で標準偏差sd(例えば、sd = 0.01)の正規分布の雑音が加算されます。現実の世界では、こういうケースの方が一般的です。
 図1は、あるボタンを1万回押した場合に発生した乱数の分布例です。図1(a)は前回のとおり(設定)平均値が固定の場合、図1(b)は変動する場合であり、平均には、平均0で標準偏差0.01という正規分布乱数が毎回加算されていきます。図のとおり、両者には一定の差異が生じます。



設定平均値が変動する場合の解法の戦略
 どのボタンを選ぶべきかという行動のポリシーは、前回と同じε-greedyです(最適値としてε = 0.1を設定しています)。その「活用」フェーズでは、その時点で得られている各ボタンの乱数情報から、推定平均が最も高いボタンを選択してきました。しかし、上記図1(b)のように、毎回設定平均値が変動する場合は、必ずしもそれがうまく働かないようです。詳細は参考文献[1]を参照戴きたいのですが、「新しいパラメータαを用いた、推定平均値のような新たな量」を定義し、それが最大のボタンを選択していく戦略があります。それを「非定常状態対応戦略」としておきます。

 図2にはその戦略による評価結果を示してあります。詳細は図の右側の説明をご覧下さい。この新しい戦略で、前回の「推定平均値を求める戦略」よりも良い結果が得られています。


[参考文献]
[1] 中井悦司:ITエンジニアのための強化学習理論入門、技術評論社、2020年7月

0 件のコメント:

コメントを投稿