tanuki- 2023-06-09 GCTの学習に使用されたデータセット
実験内容
- GCTの学習に使用されたデータセットを用いて NNUE 評価関数の学習を行い、レーティングを測定する。
- hcpe3 を hcpe に変換したあと、 psv に変換し、学習させる。
棋譜生成
https://tadaoyamaoka.hatenablog.com/entry/2021/05/06/223701
棋譜シャッフル
シャッフルルーチン | tanuki-棋譜シャッフルルーチン |
qsearch | あり |
最小手数 | 0 |
最大手数 | 10000 |
最小進行度 | 0.0 |
最大進行度 | 1.0 |
機械学習
機械学習ルーチン | nnue-pytorch + やねうら王 https://github.com/nodchip/nnue-pytorch/tree/shogi.2022-05-23 |
学習モデル | halfkp_256x2-32-32 |
学習手法 | SGD ミニバッチ法 |
初期学習率 (lr) | 8.75e-4 |
最適化手法 | Ranger |
学習率調整手法 | StepLR step=1 gamma=0.992 |
batch-size | 16384 |
threads | 1 |
num-workers | 8 |
gpus | 1 |
features | HalfKP |
max_epoch | 1000 |
scaling (kPonanzaConstant) | 361 |
lambda | 0.5 |
勝敗項の教師信号 | 0.999 |
レーティング測定
対局相手 | tanuki-.halfkp_256x2-32-32.2023-05-08 ( Háo ) |
思考時間 | 持ち時間 300 秒 + 1 手 2 秒加算 |
対局数 | 5000 |
同時対局数 | 64 |
ハッシュサイズ | 768 |
開始局面 | たややん互換局面集 |
実験結果
機械学習
レーティング測定
対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示更新間
隔(ms)=3600000
思考エンジン1 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\shogi\eval\gct.epoch=100 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読み時間(ms)=0 加算時
間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale1=16 Depth1=0
思考エンジン2 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\tanuki-.halfkp_256x2-32-32.2023-05-08\eval 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読
み時間(ms)=0 加算時間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale2=20 Depth2=0
対局数2000 先手勝ち1029(53.9%) 後手勝ち879(46.1%) 引き分け92
engine1
勝ち486(25.5% R-176.3 +-17.2) 先手勝ち281(14.7%) 後手勝ち205(10.7%)
宣言勝ち0 先手宣言勝ち0 後手宣言勝ち0 先手引き分け46 後手引き分け46
engine2
勝ち1422(74.5%) 先手勝ち748(39.2%) 後手勝ち674(35.3%)
宣言勝ち29 先手宣言勝ち14 後手宣言勝ち15 先手引き分け46 後手引き分け46
486,92,1422
対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示更新間
隔(ms)=3600000
思考エンジン1 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\shogi\eval\gct.epoch=200 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読み時間(ms)=0 加算時
間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale1=16 Depth1=0
思考エンジン2 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\tanuki-.halfkp_256x2-32-32.2023-05-08\eval 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読
み時間(ms)=0 加算時間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale2=20 Depth2=0
対局数2000 先手勝ち977(51.4%) 後手勝ち925(48.6%) 引き分け98
engine1
勝ち540(28.4% R-151.8 +-16.7) 先手勝ち288(15.1%) 後手勝ち252(13.2%)
宣言勝ち2 先手宣言勝ち1 後手宣言勝ち1 先手引き分け38 後手引き分け60
engine2
勝ち1362(71.6%) 先手勝ち689(36.2%) 後手勝ち673(35.4%)
宣言勝ち16 先手宣言勝ち8 後手宣言勝ち8 先手引き分け60 後手引き分け38
540,98,1362
対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示更新間
隔(ms)=3600000
思考エンジン1 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\shogi\eval\gct.epoch=300 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読み時間(ms)=0 加算時
間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale1=16 Depth1=0
思考エンジン2 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\tanuki-.halfkp_256x2-32-32.2023-05-08\eval 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読
み時間(ms)=0 加算時間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale2=20 Depth2=0
対局数2000 先手勝ち1013(52.7%) 後手勝ち910(47.3%) 引き分け77
engine1
勝ち535(27.8% R-158.3 +-16.8) 先手勝ち295(15.3%) 後手勝ち240(12.5%)
宣言勝ち1 先手宣言勝ち0 後手宣言勝ち1 先手引き分け35 後手引き分け42
engine2
勝ち1388(72.2%) 先手勝ち718(37.3%) 後手勝ち670(34.8%)
宣言勝ち16 先手宣言勝ち5 後手宣言勝ち11 先手引き分け42 後手引き分け35
535,77,1388
対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示更新間
隔(ms)=3600000
思考エンジン1 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\shogi\eval\gct.epoch=400 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読み時間(ms)=0 加算時
間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale1=16 Depth1=0
思考エンジン2 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\tanuki-.halfkp_256x2-32-32.2023-05-08\eval 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読
み時間(ms)=0 加算時間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale2=20 Depth2=0
対局数2000 先手勝ち1027(53.2%) 後手勝ち902(46.8%) 引き分け71
engine1
勝ち555(28.8% R-151.1 +-16.7) 先手勝ち313(16.2%) 後手勝ち242(12.5%)
宣言勝ち0 先手宣言勝ち0 後手宣言勝ち0 先手引き分け27 後手引き分け44
engine2
勝ち1374(71.2%) 先手勝ち714(37.0%) 後手勝ち660(34.2%)
宣言勝ち15 先手宣言勝ち5 後手宣言勝ち10 先手引き分け44 後手引き分け27
555,71,1374
対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示更新間
隔(ms)=3600000
思考エンジン1 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\shogi\eval\gct.epoch=500 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読み時間(ms)=0 加算時
間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale1=16 Depth1=0
思考エンジン2 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\tanuki-.halfkp_256x2-32-32.2023-05-08\eval 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読
み時間(ms)=0 加算時間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale2=20 Depth2=0
対局数2000 先手勝ち1005(53.0%) 後手勝ち891(47.0%) 引き分け104
engine1
勝ち530(28.0% R-154.7 +-16.8) 先手勝ち293(15.5%) 後手勝ち237(12.5%)
宣言勝ち1 先手宣言勝ち1 後手宣言勝ち0 先手引き分け54 後手引き分け50
engine2
勝ち1366(72.0%) 先手勝ち712(37.6%) 後手勝ち654(34.5%)
宣言勝ち14 先手宣言勝ち7 後手宣言勝ち7 先手引き分け50 後手引き分け54
530,104,1366
対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示更新間
隔(ms)=3600000
思考エンジン1 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\shogi\eval\gct.epoch=600 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読み時間(ms)=0 加算時
間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale1=16 Depth1=0
思考エンジン2 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\tanuki-.halfkp_256x2-32-32.2023-05-08\eval 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読
み時間(ms)=0 加算時間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale2=20 Depth2=0
対局数2000 先手勝ち987(52.3%) 後手勝ち901(47.7%) 引き分け112
engine1
勝ち537(28.4% R-150.1 +-16.7) 先手勝ち297(15.7%) 後手勝ち240(12.7%)
宣言勝ち5 先手宣言勝ち2 後手宣言勝ち3 先手引き分け45 後手引き分け67
engine2
勝ち1351(71.6%) 先手勝ち690(36.5%) 後手勝ち661(35.0%)
宣言勝ち9 先手宣言勝ち5 後手宣言勝ち4 先手引き分け67 後手引き分け45
537,112,1351
対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示更新間
隔(ms)=3600000
思考エンジン1 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\shogi\eval\gct.epoch=700 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読み時間(ms)=0 加算時
間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale1=16 Depth1=0
思考エンジン2 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\tanuki-.halfkp_256x2-32-32.2023-05-08\eval 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読
み時間(ms)=0 加算時間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale2=20 Depth2=0
対局数2000 先手勝ち967(50.8%) 後手勝ち936(49.2%) 引き分け97
engine1
勝ち572(30.1% R-138.8 +-16.5) 先手勝ち297(15.6%) 後手勝ち275(14.5%)
宣言勝ち1 先手宣言勝ち0 後手宣言勝ち1 先手引き分け45 後手引き分け52
engine2
勝ち1331(69.9%) 先手勝ち670(35.2%) 後手勝ち661(34.7%)
宣言勝ち10 先手宣言勝ち4 後手宣言勝ち6 先手引き分け52 後手引き分け45
572,97,1331
対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示更新間
隔(ms)=3600000
思考エンジン1 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\shogi\eval\gct.epoch=800 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読み時間(ms)=0 加算時
間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale1=16 Depth1=0
思考エンジン2 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\tanuki-.halfkp_256x2-32-32.2023-05-08\eval 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読
み時間(ms)=0 加算時間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale2=20 Depth2=0
対局数2000 先手勝ち994(52.5%) 後手勝ち900(47.5%) 引き分け106
engine1
勝ち550(29.0% R-146.0 +-16.6) 先手勝ち298(15.7%) 後手勝ち252(13.3%)
宣言勝ち1 先手宣言勝ち0 後手宣言勝ち1 先手引き分け50 後手引き分け56
engine2
勝ち1344(71.0%) 先手勝ち696(36.7%) 後手勝ち648(34.2%)
宣言勝ち26 先手宣言勝ち11 後手宣言勝ち15 先手引き分け56 後手引き分け50
550,106,1344
対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示更新間
隔(ms)=3600000
思考エンジン1 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\shogi\eval\gct.epoch=900 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読み時間(ms)=0 加算時
間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale1=16 Depth1=0
思考エンジン2 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\tanuki-.halfkp_256x2-32-32.2023-05-08\eval 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読
み時間(ms)=0 加算時間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale2=20 Depth2=0
対局数2000 先手勝ち1002(53.2%) 後手勝ち882(46.8%) 引き分け116
engine1
勝ち551(29.2% R-143.5 +-16.6) 先手勝ち306(16.2%) 後手勝ち245(13.0%)
宣言勝ち1 先手宣言勝ち1 後手宣言勝ち0 先手引き分け56 後手引き分け60
engine2
勝ち1333(70.8%) 先手勝ち696(36.9%) 後手勝ち637(33.8%)
宣言勝ち24 先手宣言勝ち13 後手宣言勝ち11 先手引き分け60 後手引き分け56
551,116,1333
対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示更新間
隔(ms)=3600000
思考エンジン1 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\shogi\eval\gct.epoch=1000 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読み時間(ms)=0 加算
時間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale1=16 Depth1=0
思考エンジン2 name=YaneuraOu NNUE 7.63 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2023-04-16\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\tanuki-.halfkp_256x2-32-32.2023-05-08\eval 定跡手数=256 定跡ファイル名=no_book 思考ノード数=0 思考ノード数に加える乱数(%)=0 思考ノード数の乱数を1手毎に変化させる=False 持ち時間(ms)=300000 秒読
み時間(ms)=0 加算時間(ms)=2000 乱数付き思考時間(ms)=0 スレッド数=1 BookEvalDiff=30 定跡の採択率を考慮する=false 定跡の手数を無視する=false SlowMover=100 DrawValue=-2 BookEvalBlackLimit=0 BookEvalWhiteLimit=-140 FVScale2=20 Depth2=0
対局数2000 先手勝ち983(52.0%) 後手勝ち909(48.0%) 引き分け108
engine1
勝ち580(30.7% R-133.3 +-16.4) 先手勝ち309(16.3%) 後手勝ち271(14.3%)
宣言勝ち2 先手宣言勝ち2 後手宣言勝ち0 先手引き分け53 後手引き分け55
engine2
勝ち1312(69.3%) 先手勝ち674(35.6%) 後手勝ち638(33.7%)
宣言勝ち12 先手宣言勝ち5 後手宣言勝ち7 先手引き分け55 後手引き分け53
580,108,1312
epoch | レーティング差 |
100 | -176.3 |
200 | -151.8 |
300 | -158.3 |
400 | -151.1 |
500 | -154.7 |
600 | -150.1 |
700 | -138.8 |
800 | -146.0 |
900 | -143.5 |
1000 | -133.3 |
学習ロスと訓練ロスは、それぞれ収束したように見えた。
レーティングは、 tanuki-.halfkp_256x2-32-32.2023-05-08 ( Háo ) と比較し、 R-176.3~R-133.3 程度あり、有意に低かった。
考察
学習ロスと訓練ロスについては、学習自体は問題なく行われているということを表しているのだと思われる。
レーティングについては、GCTの学習に使用されたデータセットは、 NNUE 評価関数を学習させるにあたり、 tanuki- 棋譜生成ルーチンで生成した学習データと比べると、適していないのだと思われる。原因として考えられることとして、 1. DL 系の思考エンジンが生成した学習データを psv に変換したものは、評価値のスケールが NNUE 系と合っていない、 2. DL 系の思考エンジンは序中盤に強いとされ、 NNUE 系は中終盤に強いとされ、勝敗項の値が DL 系と NNUE 系とで、異なる傾向を示している、 3. 学習データに含まれる局面が、自己対局で登場する局面と、傾向が異なっている、などが考えられる。
まとめ
GCTの学習に使用されたデータセットを用いて NNUE 評価関数の学習を行い、レーティングを測定した。その際、 hcpe3 を hcpe に変換したあと、 psv に変換し、学習させた。
結果、レーティングは、 tanuki-.halfkp_256x2-32-32.2023-05-08 ( Háo ) と比較し、 R-176.3~R-133.3 程度あり、有意に低かった。
次回は、今回作成した評価関数で学習データを生成し、強化学習をさせたい。