以前に方策の分布を学習することで、Actor-Criticで学習するよりも精度が上がることを確かめた。
dlshogiの強化学習でも、方策の分布を学習するように移行した。
しかし、テストデータに対する精度は上がるが、実際に対局すると弱くなっているという問題が発生した。
精度の比較
すでに精度が飽和しているモデルに対して、1億局面を生成し方策の分布を学習すると以下のように精度が大幅に向上した。
テストデータに、floodgateのレート3500以上の対局の棋譜からサンプリングした856,923局面を使用して評価した結果は以下の通り。
※このテストデータは、GCTのノートブックで公開しているテストデータとは別である。
テスト損失
方策の損失 | 価値の損失 | Q値の損失 | 損失合計 | |
---|---|---|---|---|
学習前 | 0.83306111 | 0.51837930 | 0.63040887 | 1.38874626 |
学習後 | 0.76382181 | 0.50587031 | 0.63739542 | 1.31348998 |
テスト正解率
方策の正解率 | 価値の正解率 | |
---|---|---|
学習前 | 0.47950766 | 0.73489700 |
学習後 | 0.48287093 | 0.73816614 |
強さの比較
持ち時間3分1手1秒加算
# PLAYER : RATING ERROR POINTS PLAYED (%) CFS(%) W D L D(%) 1 model-0000195 : 13.8 15.8 233.0 432 54 96 215 36 181 8 2 model_gct_010 : -13.8 15.8 199.0 432 46 --- 181 36 215 8
※model_gct_010が方策の分布を学習したモデル
精度が上がったのに反して、弱くなっている。
考察
方策のエントロピーが上がっていることから、探索の幅が広がっていると考えられる。
初期局面を100万ノード探索した際の、PVの深さは
学習前 | 42 |
---|---|
学習後 | 32 |
となっていた。
分布の広がりは、以下のようになっていた。
方策の確率分布
ルートの子ノードの訪問回数
初期局面だと少しわかりにくかったが、学習前は特定の手に集中しているのに対して、方策が全体に少し広がっているのが確認できる。
弱くなる原因
Actor-Criticは、方策が決定論的に偏りやすい傾向があるため、現在の探索パラメータの温度パラメータは1.74と高めに設定されている。
optunaで最適化を行った結果、それが最適になっている。
方策の分布を学習すると、方策の確率分布が広がるため温度パラメータは比較的低めに設定されるべきである。
なお、Leela Chess Zeroの温度パラメータは、1.4に設定されている。
https://training.lczero.org/training_runs
探索パラメータの再調整
方策の分布を学習後のモデルを使用して、探索パラメータを再調整を行った。
なお、optunaで少し探索を行っただけのため、まだ調整は不十分な状態である。
初期局面のPVの深さは、41になった。
学習前と学習後のモデルで対局した結果は、以下の通りとなった。
持ち時間3分1手1秒加算
# PLAYER : RATING ERROR POINTS PLAYED (%) CFS(%) W D L D(%) 1 model-0000195 : 0.7 10.5 514.0 1024 50 55 470 88 466 9 2 model_gct_010_opt : -0.7 10.5 510.0 1024 50 --- 466 88 470 9
ほぼ互角になっている。
水匠3改を加えてリーグ戦を行った結果は以下の通り(測定途中)。
# PLAYER : RATING ERROR POINTS PLAYED (%) CFS(%) W D L D(%) 1 model_gct_010_opt : 30.6 59.1 35.5 63 56 65 33 5 25 8 2 model-0000195 : 11.1 56.8 33.5 64 52 86 32 3 29 5 3 YaneuraOu NNUE 6.00 64AVX2 : -41.7 57.5 26.0 63 41 --- 24 4 35 6
こちらの結果では、強くなっていそうである。
まとめ
方策の分布を学習することで、テストデータに対する精度があがるが、探索パラメータがそのままだと弱くなることがわかった。
原因は、Actor-Criticで学習したモデルと、方策の分布を学習したモデルで、最適な探索パラメータが変わるためである。
探索パラメータを再調整すると、強さも精度を反映した結果になる。