はじめに
モンテカルロ木探索で、UCTアルゴリズムなどを実行した結果の利用方法について記述します。
利用方法
モンテカルロ木探索を実行すると、その結果として、ある状態$s$に対して、それぞれの行動$a$に対応した試行回数が得られます。AlphaGo Zeroの強化学習では、シミュレーションで訪問した回数を$N(s,a)$と表記しているため、それに合わせて試行回数$N(s,a)$と表記します。
UCTアルゴリズムなどを使用すると、有望な手ほど多く試行する(期待値の高い行動を、より多く選ぶ)ため、試行回数$N(s,a)$の大きさが、そのまま行動$a$の有望さの度合いとなります。
これを確率分布として利用する方法は「最強囲碁AI アルファ碁 解体新書」増補改訂版の268ページと269ページに、以下の数式とともに、わかりやすく例示がなされています。
$$ \pi_a = \frac{{N(s,a)}^{1/\gamma}}{\sum_a {N(s,a)}^{1/\gamma}}$$
この$\gamma$は温度パラメータで、$\gamma = 1$とすると、試行回数$N(s,a)$に比例した方策$\pi_a$となります。また$\gamma \rightarrow 0$とすれば、試行回数$N(s,a)$が最大となった行動$a$が常に選ばれる方策$\pi_a$となります。
教師あり学習のデータとして利用する場合、まずは$\gamma = 1$で計算した確率分布を訓練データとして使用してみるのが、一番よさそうに思えます。