TadaoYamaokaの開発日記

個人開発しているスマホアプリや将棋AIの開発ネタを中心に書いていきます。

将棋AIの実験ノート:chain ruleで方策を定義する(続き)

前回の続き)

chain ruleで方策を定義したモデルと、現在のdlshogiの指し手を表現したモデルで、同じ局面を学習させて精度を比較した。

elmoで生成した、1000万局面を訓練に、100万局面をテストに使用した。

chain rule

f:id:TadaoYamaoka:20190929163420p:plain
f:id:TadaoYamaoka:20190929163441p:plain

現在のdlshogiの指し手表現

f:id:TadaoYamaoka:20190929163506p:plain
f:id:TadaoYamaoka:20190929163517p:plain

test accuracy
chain rule 0.21363907
dlshogiの指し手表現 0.23695517

考察

現在のdlshogiの指し手表現の方がテスト局面に対する精度が高くなった。
chain ruleでは3つの確率を同じ重みにして、ハイパーパラメータも調整していないため、chain ruleでもそれらを調整することで精度が改善する可能性はあるが、将棋の指し手ではchain ruleを使用するよりもシンプルに移動先と移動方向を組み合わせた方がよさそうだ。

まとめ

将棋の方策をchain ruleで定義しても学習できる。
クラス数を抑えて一つの出力で方策を定義できる場合は、chain ruleを使わない方が精度が高くなる。