nodchipのコンピューター将棋ブログ

コンピューター将棋ソフト「tanuki-」シリーズの実験結果を掲載しています。

tanuki- 2022-12-27 Fine Tuning halfkp_1024x2-8-32 Suishopsv-150m 学習途中

tanuki- 2022-12-27 Fine Tuning halfkp_1024x2-8-32 Suishopsv-150m 学習途中

実験内容

  • 高ノード数の探索を用いて教師データを生成し、 halfkp_1024x2-8-32 評価関数を、水匠開発者杉村氏が公開している学習データ Suishopsv-150m を用いて Fine Tuning し、学習途中に出力された評価関数のレーティングを測定する。

棋譜生成

生成ルーチン 不明
評価関数 水匠 4
1手あたりの思考 1 手 200 万ノード
開始局面 不明
開始局面後のランダムムーブ 不明
生成局面数 約 1 億 5 千万局面
生成条件 不明

棋譜シャッフル

シャッフルルーチン tanuki-棋譜シャッフルルーチン
qsearch あり
最小手数 0
最大手数 10000

機械学習

機械学習ルーチン やねうら王機械学習ルーチン
学習モデル halfkp_1024x2-8-32
学習手法 SGD ミニバッチ法
USI_Hash 1024
Threads 127
loop 100
batchsize 1000000
lambda 0.0
eta eta1=1e-8 eta2=0.001 eta1_epoch=100
newbob_decay 0.5
nn_batch_size 1000
eval_save_interval 100000000
loss_output_interval 1000000
mirror_percentage 50
eval_limit 32000
weight_by_progress 無効
次元下げ K・P・相対KP
教師局面内で重複した局面の除外 しない
初期ネットワークパラメーター tanuki-wcsc32 https://docs.google.com/document/d/1IjK1PpT_-lGZen28ACWNrKsjk-BVnS4riDAR2oPZHDk/edit
勝敗項の教師信号 0.99
やねうら王バージョン V5.33 相当

レーティング測定

対局相手 tanuki-wcsc32 https://docs.google.com/document/d/1IjK1PpT_-lGZen28ACWNrKsjk-BVnS4riDAR2oPZHDk/edit
思考時間 持ち時間 300 秒 + 1 手 2 秒加算
対局数 2000
同時対局数 64
ハッシュサイズ 512
開始局面 たややん互換局面集

実験結果

機械学習

レーティング測定

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.Suishopsv-150m.eta2=0.001\5 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち942(55.6%) 後手勝ち752(44.4%) 引き分け306

engine1

勝ち876(51.7% R10.1 +-15.2) 先手勝ち491(29.0%) 後手勝ち385(22.7%)

宣言勝ち35 先手宣言勝ち19 後手宣言勝ち16 先手引き分け141 後手引き分け165

engine2

勝ち818(48.3%) 先手勝ち451(26.6%) 後手勝ち367(21.7%)

宣言勝ち20 先手宣言勝ち10 後手宣言勝ち10 先手引き分け165 後手引き分け141

876,306,818

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.Suishopsv-150m.eta2=0.001\10 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち944(53.4%) 後手勝ち825(46.6%) 引き分け231

engine1

勝ち946(53.5% R21.4 +-15.3) 先手勝ち508(28.7%) 後手勝ち438(24.8%)

宣言勝ち36 先手宣言勝ち21 後手宣言勝ち15 先手引き分け108 後手引き分け123

engine2

勝ち823(46.5%) 先手勝ち436(24.6%) 後手勝ち387(21.9%)

宣言勝ち15 先手宣言勝ち5 後手宣言勝ち10 先手引き分け123 後手引き分け108

946,231,823

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.Suishopsv-150m.eta2=0.001\15 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち952(52.9%) 後手勝ち848(47.1%) 引き分け200

engine1

勝ち975(54.2% R26.1 +-15.3) 先手勝ち515(28.6%) 後手勝ち460(25.6%)

宣言勝ち37 先手宣言勝ち20 後手宣言勝ち17 先手引き分け100 後手引き分け100

engine2

勝ち825(45.8%) 先手勝ち437(24.3%) 後手勝ち388(21.6%)

宣言勝ち14 先手宣言勝ち4 後手宣言勝ち10 先手引き分け100 後手引き分け100

975,200,825

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.Suishopsv-150m.eta2=0.001\20 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち926(52.6%) 後手勝ち834(47.4%) 引き分け240

engine1

勝ち970(55.1% R31.4 +-15.3) 先手勝ち503(28.6%) 後手勝ち467(26.5%)

宣言勝ち49 先手宣言勝ち21 後手宣言勝ち28 先手引き分け131 後手引き分け109

engine2

勝ち790(44.9%) 先手勝ち423(24.0%) 後手勝ち367(20.9%)

宣言勝ち21 先手宣言勝ち6 後手宣言勝ち15 先手引き分け109 後手引き分け131

970,240,790

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.Suishopsv-150m.eta2=0.001\25 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち961(52.5%) 後手勝ち871(47.5%) 引き分け168

engine1

勝ち972(53.1% R19.5 +-15.3) 先手勝ち507(27.7%) 後手勝ち465(25.4%)

宣言勝ち46 先手宣言勝ち24 後手宣言勝ち22 先手引き分け89 後手引き分け79

engine2

勝ち860(46.9%) 先手勝ち454(24.8%) 後手勝ち406(22.2%)

宣言勝ち21 先手宣言勝ち7 後手宣言勝ち14 先手引き分け79 後手引き分け89

972,168,860

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.Suishopsv-150m.eta2=0.001\30 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち1005(54.3%) 後手勝ち845(45.7%) 引き分け150

engine1

勝ち1007(54.4% R28.6 +-15.3) 先手勝ち547(29.6%) 後手勝ち460(24.9%)

宣言勝ち52 先手宣言勝ち34 後手宣言勝ち18 先手引き分け69 後手引き分け81

engine2

勝ち843(45.6%) 先手勝ち458(24.8%) 後手勝ち385(20.8%)

宣言勝ち15 先手宣言勝ち5 後手宣言勝ち10 先手引き分け81 後手引き分け69

1007,150,843

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.Suishopsv-150m.eta2=0.001\35 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち970(52.3%) 後手勝ち885(47.7%) 引き分け145

engine1

勝ち962(51.9% R12.0 +-15.2) 先手勝ち503(27.1%) 後手勝ち459(24.7%)

宣言勝ち43 先手宣言勝ち18 後手宣言勝ち25 先手引き分け72 後手引き分け73

engine2

勝ち893(48.1%) 先手勝ち467(25.2%) 後手勝ち426(23.0%)

宣言勝ち15 先手宣言勝ち7 後手宣言勝ち8 先手引き分け73 後手引き分け72

962,145,893

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.Suishopsv-150m.eta2=0.001\40 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち965(52.3%) 後手勝ち879(47.7%) 引き分け156

engine1

勝ち939(50.9% R5.9 +-15.2) 先手勝ち493(26.7%) 後手勝ち446(24.2%)

宣言勝ち35 先手宣言勝ち23 後手宣言勝ち12 先手引き分け77 後手引き分け79

engine2

勝ち905(49.1%) 先手勝ち472(25.6%) 後手勝ち433(23.5%)

宣言勝ち15 先手宣言勝ち7 後手宣言勝ち8 先手引き分け79 後手引き分け77

939,156,905

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.Suishopsv-150m.eta2=0.001\60 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち1014(53.9%) 後手勝ち868(46.1%) 引き分け118

engine1

勝ち955(50.7% R4.9 +-15.2) 先手勝ち514(27.3%) 後手勝ち441(23.4%)

宣言勝ち48 先手宣言勝ち28 後手宣言勝ち20 先手引き分け58 後手引き分け60

engine2

勝ち927(49.3%) 先手勝ち500(26.6%) 後手勝ち427(22.7%)

宣言勝ち15 先手宣言勝ち4 後手宣言勝ち11 先手引き分け60 後手引き分け58

955,118,927

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.Suishopsv-150m.eta2=0.001\80 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち1024(55.7%) 後手勝ち815(44.3%) 引き分け161

engine1

勝ち924(50.2% R1.6 +-15.2) 先手勝ち520(28.3%) 後手勝ち404(22.0%)

宣言勝ち47 先手宣言勝ち27 後手宣言勝ち20 先手引き分け68 後手引き分け93

engine2

勝ち915(49.8%) 先手勝ち504(27.4%) 後手勝ち411(22.3%)

宣言勝ち17 先手宣言勝ち10 後手宣言勝ち7 先手引き分け93 後手引き分け68

924,161,915

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.Suishopsv-150m.eta2=0.001\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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち1050(55.4%) 後手勝ち846(44.6%) 引き分け104

engine1

勝ち900(47.5% R-16.7 +-15.3) 先手勝ち501(26.4%) 後手勝ち399(21.0%)

宣言勝ち31 先手宣言勝ち15 後手宣言勝ち16 先手引き分け53 後手引き分け51

engine2

勝ち996(52.5%) 先手勝ち549(29.0%) 後手勝ち447(23.6%)

宣言勝ち10 先手宣言勝ち5 後手宣言勝ち5 先手引き分け51 後手引き分け53

900,104,996

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.Suishopsv-150m.eta2=0.001\120 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち1026(54.1%) 後手勝ち872(45.9%) 引き分け102

engine1

勝ち865(45.6% R-29.3 +-15.3) 先手勝ち473(24.9%) 後手勝ち392(20.7%)

宣言勝ち35 先手宣言勝ち14 後手宣言勝ち21 先手引き分け46 後手引き分け56

engine2

勝ち1033(54.4%) 先手勝ち553(29.1%) 後手勝ち480(25.3%)

宣言勝ち19 先手宣言勝ち6 後手宣言勝ち13 先手引き分け56 後手引き分け46

865,102,1033

20 億局面程度学習させた場合のレーティングが、最も高くなった。また、対局相手に対して、有意にレーティングが高かった。

考察

レーティング

学習を途中で打ち切ることで、レーティングを向上させることができることが分かった。

まとめ

高ノード数の探索を用いて教師データを生成し、 halfkp_1024x2-8-32 評価関数を、水匠開発者杉村氏が公開している学習データ Suishopsv-150m を用いて Fine Tuning し、学習途中に出力された評価関数のレーティングを測定した。結果、今回の学習条件化においては、学習を 20 億局面付近で止めると、レーティングが優位に向上することが分かった。

今後は、学習する局面を進行度でフィルタリングし、どのあたりからどのあたりまでの局面を学習させるのが最適なのか、調べていきたい。

tanuki- 2022-12-22 Fine Tuning halfkp_1024x2-8-32 Suishopsv-150m

tanuki- 2022-12-22 Fine Tuning halfkp_1024x2-8-32 Suishopsv-150m

実験内容

  • 高ノード数の探索を用いて教師データを生成し、 halfkp_1024x2-8-32 評価関数を、水匠開発者杉村氏が公開している学習データ Suishopsv-150m で Fine Tuning し、レーティングを測定する。

棋譜生成

生成ルーチン 不明
評価関数 水匠 4
1手あたりの思考 1 手 200 万ノード
開始局面 不明
開始局面後のランダムムーブ 不明
生成局面数 約 1 億 5 千万局面
生成条件 不明

棋譜シャッフル

シャッフルルーチン tanuki-棋譜シャッフルルーチン
qsearch あり
最小手数 0
最大手数 10000

機械学習

機械学習ルーチン やねうら王機械学習ルーチン
学習モデル halfkp_1024x2-8-32
学習手法 SGD ミニバッチ法
USI_Hash 1024
Threads 127
loop 100
batchsize 1000000
lambda 0.0
eta eta1=1e-8 eta2=0.001 eta1_epoch=100
newbob_decay 0.5
nn_batch_size 1000
eval_save_interval 100000000
loss_output_interval 1000000
mirror_percentage 50
eval_limit 32000
weight_by_progress 無効
次元下げ K・P・相対KP
教師局面内で重複した局面の除外 しない
初期ネットワークパラメーター tanuki-wcsc32 https://docs.google.com/document/d/1IjK1PpT_-lGZen28ACWNrKsjk-BVnS4riDAR2oPZHDk/edit
勝敗項の教師信号 0.99
やねうら王バージョン V5.33 相当

レーティング測定

対局相手 tanuki-wcsc32 https://docs.google.com/document/d/1IjK1PpT_-lGZen28ACWNrKsjk-BVnS4riDAR2oPZHDk/edit
思考時間 持ち時間 300 秒 + 1 手 2 秒加算
対局数 2000
同時対局数 64
ハッシュサイズ 512
開始局面 たややん互換局面集

実験結果

機械学習

レーティング測定

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.Suishopsv-150m.eta2=0.001\final 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち979(51.9%) 後手勝ち908(48.1%) 引き分け113

engine1

勝ち726(38.5% R-76.8 +-15.6) 先手勝ち383(20.3%) 後手勝ち343(18.2%)

宣言勝ち23 先手宣言勝ち8 後手宣言勝ち15 先手引き分け54 後手引き分け59

engine2

勝ち1161(61.5%) 先手勝ち596(31.6%) 後手勝ち565(29.9%)

宣言勝ち20 先手宣言勝ち11 後手宣言勝ち9 先手引き分け59 後手引き分け54

726,113,1161

学習ロスと検証ロスが下がっている途中で学習が打ち切られてしまった。

学習率は下がらなかった。

平手局面の評価値は、元の値から急激に上がったあと、 40~140 程度の間で上下した。

評価値のスケールは、 1.0*1e9 付近まで早く上昇したあと、少しずつ上昇した。

レーティングは、 Fine Tuning 前に比べて、有意に下がってしまった。

考察

学習ロスと検証ロス

学習率が 0.001 と低かったため、過去の実験と比較してゆっくりロスが下がったのだと思われる。また、学習データが 1 億 5 千万局面程度かつ loop=100 だったため、比較的早い段階で学習が打ち切られ、ロスが下がりきらなかったのだと思われる。

学習率

学習が進んでいる途中だったため、 newbob 風の学習率スケジューラーによる学習率の元帥が起こらなかったのだと思われる。

平手局面の評価値

平手局面の評価値が、元の値より急激に上がったのは、学習データにおける先手勝率が高かったためだと思われる。ただし、その後上下した理由は分からなかった。

評価値のスケール

評価値のスケールについては、勝敗項の教師信号を 0.99 に設定したため、 1.0*1e9 付近で上げどまったのだと思われる。

レーティング

水匠開発者杉村氏が公開してくださっている学習データを用いても、レーティングが上がらなかった点を考えると、学習条件が異なっている可能性が考えられる。あるいは、教師局面数が少ないため、過学習している可能性がある。

まとめ

高ノード数の探索を用いて教師データを生成し、 halfkp_1024x2-8-32 評価関数を、水匠開発者杉村氏が公開している学習データ Suishopsv-150m で Fine Tuning し、レーティングを測定した。結果、レーティングは有意に下がった。

過学習による影響を確かめるため、学習途中の評価関数のレーティング測定も行いたい。

tanuki- 2022-12-16 Fine Tuning halfkp_1024x2-8-32 手数

tanuki- 2022-12-16 Fine Tuning halfkp_1024x2-8-32 手数

実験内容

  • 高ノード数の探索を用いて教師データを生成し、 halfkp_1024x2-8-32 評価関数を、学習データの最小手数と最大手数を指定して Fine Tuning し、レーティングを測定する。

棋譜生成

生成ルーチン tanuki-棋譜生成ルーチン
評価関数 水匠 5 FV_SCALE=16
1手あたりの思考 深さ最大 64 思考ノード数最大 2,000,000 ノード
開始局面 foodgate の 2020 年~ 2021 年の棋譜のうち、レーティング 3900 以上同士の対局の、 32 手目までから、 1 局面ランダムに選択し、その局面を開始局面とした
開始局面後のランダムムーブ なし
生成局面数 5 百万局面 × 19 セット
生成条件 対局は打ち切らず詰みの局面まで教師局面に出力した

棋譜シャッフル

シャッフルルーチン tanuki-棋譜シャッフルルーチン
qsearch あり
最小手数 32
最大手数 96

機械学習

機械学習ルーチン やねうら王機械学習ルーチン
学習モデル halfkp_1024x2-8-32
学習手法 SGD ミニバッチ法
USI_Hash 1024
Threads 16
loop 100
batchsize 1000000
lambda 0.0
eta eta1=1e-8 eta2=0.01*0.5^10.0 eta1_epoch=100
newbob_decay 0.5
nn_batch_size 1000
eval_save_interval 100000000
loss_output_interval 1000000
mirror_percentage 50
eval_limit 32000
weight_by_progress 無効
次元下げ K・P・相対KP
教師局面内で重複した局面の除外 しない
初期ネットワークパラメーター tanuki-wcsc32 https://docs.google.com/document/d/1IjK1PpT_-lGZen28ACWNrKsjk-BVnS4riDAR2oPZHDk/edit
勝敗項の教師信号 0.99
やねうら王バージョン V5.33 相当

レーティング測定

対局相手 tanuki-wcsc32 https://docs.google.com/document/d/1IjK1PpT_-lGZen28ACWNrKsjk-BVnS4riDAR2oPZHDk/edit
思考時間 持ち時間 300 秒 + 1 手 2 秒加算
対局数 2000
同時対局数 64
ハッシュサイズ 512
開始局面 たややん互換局面集

実験結果

機械学習

レーティング測定

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.nodes=2M.min_ply=32.max_ply=96.eta2=0.001\final 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち865(54.9%) 後手勝ち712(45.1%) 引き分け423

engine1

勝ち442(28.0% R-125.6 +-16.2) 先手勝ち247(15.7%) 後手勝ち195(12.4%)

宣言勝ち96 先手宣言勝ち52 後手宣言勝ち44 先手引き分け239 後手引き分け184

engine2

勝ち1135(72.0%) 先手勝ち618(39.2%) 後手勝ち517(32.8%)

宣言勝ち11 先手宣言勝ち6 後手宣言勝ち5 先手引き分け184 後手引き分け239

442,423,1135

レーティングは、手数を制限しない場合に比べて、さらに下がってしまった。

考察

レーティング

水匠開発者杉村氏が公開してくださっている条件の一つ目を試し、レーティングが挙がらなかった点を考えると、学習データに問題がある可能性がある。

まとめ

高ノード数の探索を用いて教師データを生成し、 halfkp_1024x2-8-32 評価関数を、学習データの最小手数と最大手数を指定して Fine Tuning し、レーティングを測定した。結果、レーティングは、手数を制限しない場合に比べて、さらに下がってしまった。水匠開発者杉村氏が公開してくださっている条件でもレーティングが上がらないことを考えると、学習データに問題がある可能性がある。

次は、杉村氏が公開してくださっている学習データを用いて学習させてみたい。

tanuki- 2022-12-16 Fine Tuning halfkp_1024x2-8-32 学習途中

 

tanuki- 2022-12-16 Fine Tuning halfkp_1024x2-8-32 学習途中

実験内容

  • 高ノード数の探索を用いて教師データを生成し、 halfkp_1024x2-8-32 評価関数を Fine Tuning し、学習途中の評価関数のレーティングを測定する。

棋譜生成

生成ルーチン tanuki-棋譜生成ルーチン
評価関数 水匠 5 FV_SCALE=16
1手あたりの思考 深さ最大 64 思考ノード数最大 2,000,000 ノード
開始局面 foodgate の 2020 年~ 2021 年の棋譜のうち、レーティング 3900 以上同士の対局の、 32 手目までから、 1 局面ランダムに選択し、その局面を開始局面とした
開始局面後のランダムムーブ なし
生成局面数 5 百万局面 × 19 セット
生成条件 対局は打ち切らず詰みの局面まで教師局面に出力した

棋譜シャッフル

シャッフルルーチン tanuki-棋譜シャッフルルーチン
qsearch あり

機械学習

機械学習ルーチン やねうら王機械学習ルーチン
学習モデル halfkp_1024x2-8-32
学習手法 SGD ミニバッチ法
USI_Hash 1024
Threads 16
loop 100
batchsize 1000000
lambda 0.0
eta eta1=1e-8 eta2=0.01*0.5^10.0 eta1_epoch=100
newbob_decay 0.5
nn_batch_size 1000
eval_save_interval 100000000
loss_output_interval 1000000
mirror_percentage 50
eval_limit 32000
weight_by_progress 無効
次元下げ K・P・相対KP
教師局面内で重複した局面の除外 しない
初期ネットワークパラメーター tanuki-wcsc32 https://docs.google.com/document/d/1IjK1PpT_-lGZen28ACWNrKsjk-BVnS4riDAR2oPZHDk/edit
勝敗項の教師信号 0.99
やねうら王バージョン V5.33 相当

レーティング測定

対局相手 tanuki-wcsc32 https://docs.google.com/document/d/1IjK1PpT_-lGZen28ACWNrKsjk-BVnS4riDAR2oPZHDk/edit
思考時間 持ち時間 300 秒 + 1 手 2 秒加算
対局数 2000
同時対局数 64
ハッシュサイズ 512
開始局面 たややん互換局面集

 

実験結果

レーティング測定

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.nodes=2M.eta2=9.765625e-06\10 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち807(52.9%) 後手勝ち718(47.1%) 引き分け475

engine1

勝ち678(44.5% R-29.4 +-15.3) 先手勝ち363(23.8%) 後手勝ち315(20.7%)

宣言勝ち60 先手宣言勝ち23 後手宣言勝ち37 先手引き分け234 後手引き分け241

engine2

勝ち847(55.5%) 先手勝ち444(29.1%) 後手勝ち403(26.4%)

宣言勝ち10 先手宣言勝ち5 後手宣言勝ち5 先手引き分け241 後手引き分け234

678,475,847

 

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.nodes=2M.eta2=9.765625e-06\20 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち879(54.6%) 後手勝ち730(45.4%) 引き分け391

engine1

勝ち731(45.4% R-25.6 +-15.3) 先手勝ち398(24.7%) 後手勝ち333(20.7%)

宣言勝ち82 先手宣言勝ち43 後手宣言勝ち39 先手引き分け206 後手引き分け185

engine2

勝ち878(54.6%) 先手勝ち481(29.9%) 後手勝ち397(24.7%)

宣言勝ち9 先手宣言勝ち3 後手宣言勝ち6 先手引き分け185 後手引き分け206

731,391,878

 

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.nodes=2M.eta2=9.765625e-06\30 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち841(52.5%) 後手勝ち760(47.5%) 引き分け399

engine1

勝ち722(45.1% R-27.3 +-15.3) 先手勝ち377(23.5%) 後手勝ち345(21.5%)

宣言勝ち82 先手宣言勝ち44 後手宣言勝ち38 先手引き分け210 後手引き分け189

engine2

勝ち879(54.9%) 先手勝ち464(29.0%) 後手勝ち415(25.9%)

宣言勝ち11 先手宣言勝ち7 後手宣言勝ち4 先手引き分け189 後手引き分け210

722,399,879

 

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.nodes=2M.eta2=9.765625e-06\40 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち846(52.3%) 後手勝ち771(47.7%) 引き分け383

engine1

勝ち729(45.1% R-27.7 +-15.3) 先手勝ち375(23.2%) 後手勝ち354(21.9%)

宣言勝ち61 先手宣言勝ち30 後手宣言勝ち31 先手引き分け210 後手引き分け173

engine2

勝ち888(54.9%) 先手勝ち471(29.1%) 後手勝ち417(25.8%)

宣言勝ち8 先手宣言勝ち3 後手宣言勝ち5 先手引き分け173 後手引き分け210

729,383,888

 

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.nodes=2M.eta2=9.765625e-06\50 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち877(53.6%) 後手勝ち760(46.4%) 引き分け363

engine1

勝ち693(42.3% R-43.8 +-15.4) 先手勝ち373(22.8%) 後手勝ち320(19.5%)

宣言勝ち65 先手宣言勝ち37 後手宣言勝ち28 先手引き分け184 後手引き分け179

engine2

勝ち944(57.7%) 先手勝ち504(30.8%) 後手勝ち440(26.9%)

宣言勝ち9 先手宣言勝ち5 後手宣言勝ち4 先手引き分け179 後手引き分け184

693,363,944

 

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.nodes=2M.eta2=9.765625e-06\60 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち832(51.9%) 後手勝ち770(48.1%) 引き分け398

engine1

勝ち693(43.3% R-37.7 +-15.3) 先手勝ち356(22.2%) 後手勝ち337(21.0%)

宣言勝ち76 先手宣言勝ち35 後手宣言勝ち41 先手引き分け207 後手引き分け191

engine2

勝ち909(56.7%) 先手勝ち476(29.7%) 後手勝ち433(27.0%)

宣言勝ち8 先手宣言勝ち2 後手宣言勝ち6 先手引き分け191 後手引き分け207

693,398,909

 

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.nodes=2M.eta2=9.765625e-06\70 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち832(52.8%) 後手勝ち743(47.2%) 引き分け425

engine1

勝ち654(41.5% R-46.7 +-15.4) 先手勝ち338(21.5%) 後手勝ち316(20.1%)

宣言勝ち59 先手宣言勝ち29 後手宣言勝ち30 先手引き分け235 後手引き分け190

engine2

勝ち921(58.5%) 先手勝ち494(31.4%) 後手勝ち427(27.1%)

宣言勝ち5 先手宣言勝ち2 後手宣言勝ち3 先手引き分け190 後手引き分け235

654,425,921

 

レーティングは、 epoch が進むにつれて、低くなっていった。いずれの epoch も、対局相手より優位に弱かった。

考察

レーティング

いずれの epoch も、対局相手より優位に弱いことより、過学習の可能性はないと考えられる。また、今回の学習条件は、評価関数を弱くさせる方に学習してしまうのだと思われる。

まとめ

高ノード数の探索を用いて教師データを生成し、 halfkp_1024x2-8-32 評価関数を Fine Tuning し、学習途中の評価関数のレーティングを測定した。結果、レーティングは、いずれの epoch においても、既存の評価関数より弱くなってしまった。今回の学習条件では、評価関数を弱くする方に学習してしまっているのだと思われる。

水匠開発者杉村氏が、水匠 7 の学習に使用した学習条件を公開している。次は、それに書かれている内容のうち、手数を制限して学習させるのを試してみたい。

 

 

tanuki- 2022-12-14 Fine Tuning halfkp_1024x2-8-32

tanuki- 2022-12-14 Fine Tuning halfkp_1024x2-8-32

実験内容

  • 高ノード数の探索を用いて教師データを生成し、 halfkp_1024x2-8-32 評価関数を Fine Tuning し、レーティングを測定する。

棋譜生成

生成ルーチン tanuki-棋譜生成ルーチン
評価関数 水匠 5 FV_SCALE=16
1手あたりの思考 深さ最大 64 思考ノード数最大 2,000,000 ノード
開始局面 foodgate の 2020 年~ 2021 年の棋譜のうち、レーティング 3900 以上同士の対局の、 32 手目までから、 1 局面ランダムに選択し、その局面を開始局面とした
開始局面後のランダムムーブ なし
生成局面数 5 百万局面 × 19 セット
生成条件 対局は打ち切らず詰みの局面まで教師局面に出力した

棋譜シャッフル

シャッフルルーチン tanuki-棋譜シャッフルルーチン
qsearch あり

機械学習

機械学習ルーチン やねうら王機械学習ルーチン
学習モデル halfkp_1024x2-8-32
学習手法 SGD ミニバッチ法
USI_Hash 1024
Threads 16
loop 100
batchsize 1000000
lambda 0.0
eta eta1=1e-8 eta2=0.01~0.01*0.5^10.0 eta1_epoch=100
newbob_decay 0.5
nn_batch_size 1000
eval_save_interval 100000000
loss_output_interval 1000000
mirror_percentage 50
eval_limit 32000
weight_by_progress 無効
次元下げ K・P・相対KP
教師局面内で重複した局面の除外 しない
初期ネットワークパラメーター tanuki-wcsc32 https://docs.google.com/document/d/1IjK1PpT_-lGZen28ACWNrKsjk-BVnS4riDAR2oPZHDk/edit
勝敗項の教師信号 0.99
やねうら王バージョン V5.33 相当

レーティング測定

対局相手 tanuki-wcsc32 https://docs.google.com/document/d/1IjK1PpT_-lGZen28ACWNrKsjk-BVnS4riDAR2oPZHDk/edit
思考時間 持ち時間 300 秒 + 1 手 2 秒加算
対局数 2000
同時対局数 64
ハッシュサイズ 512
開始局面 たややん互換局面集

実験結果

機械学習

レーティング測定

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.nodes=2M.eta2=0.01\final 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち909(52.0%) 後手勝ち840(48.0%) 引き分け251

engine1

勝ち587(33.6% R-102.8 +-15.9) 先手勝ち302(17.3%) 後手勝ち285(16.3%)

宣言勝ち47 先手宣言勝ち22 後手宣言勝ち25 先手引き分け147 後手引き分け104

engine2

勝ち1162(66.4%) 先手勝ち607(34.7%) 後手勝ち555(31.7%)

宣言勝ち10 先手宣言勝ち6 後手宣言勝ち4 先手引き分け104 後手引き分け147

587,251,1162

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.nodes=2M.eta2=0.005\final 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち902(50.8%) 後手勝ち874(49.2%) 引き分け224

engine1

勝ち558(31.4% R-119.1 +-16.1) 先手勝ち285(16.0%) 後手勝ち273(15.4%)

宣言勝ち55 先手宣言勝ち25 後手宣言勝ち30 先手引き分け114 後手引き分け110

engine2

勝ち1218(68.6%) 先手勝ち617(34.7%) 後手勝ち601(33.8%)

宣言勝ち21 先手宣言勝ち11 後手宣言勝ち10 先手引き分け110 後手引き分け114

558,224,1218

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.nodes=2M.eta2=0.0025\final 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち922(53.4%) 後手勝ち803(46.6%) 引き分け275

engine1

勝ち574(33.3% R-103.2 +-15.9) 先手勝ち313(18.1%) 後手勝ち261(15.1%)

宣言勝ち61 先手宣言勝ち35 後手宣言勝ち26 先手引き分け144 後手引き分け131

engine2

勝ち1151(66.7%) 先手勝ち609(35.3%) 後手勝ち542(31.4%)

宣言勝ち11 先手宣言勝ち4 後手宣言勝ち7 先手引き分け131 後手引き分け144

574,275,1151

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.nodes=2M.eta2=0.00125\final 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち938(53.9%) 後手勝ち803(46.1%) 引き分け259

engine1

勝ち664(38.1% R-72.8 +-15.6) 先手勝ち355(20.4%) 後手勝ち309(17.7%)

宣言勝ち70 先手宣言勝ち35 後手宣言勝ち35 先手引き分け149 後手引き分け110

engine2

勝ち1077(61.9%) 先手勝ち583(33.5%) 後手勝ち494(28.4%)

宣言勝ち8 先手宣言勝ち5 後手宣言勝ち3 先手引き分け110 後手引き分け149

664,259,1077

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.nodes=2M.eta2=0.000625\final 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち952(53.7%) 後手勝ち820(46.3%) 引き分け228

engine1

勝ち657(37.1% R-81.0 +-15.6) 先手勝ち354(20.0%) 後手勝ち303(17.1%)

宣言勝ち61 先手宣言勝ち31 後手宣言勝ち30 先手引き分け132 後手引き分け96

engine2

勝ち1115(62.9%) 先手勝ち598(33.7%) 後手勝ち517(29.2%)

宣言勝ち9 先手宣言勝ち3 後手宣言勝ち6 先手引き分け96 後手引き分け132

657,228,1115

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.nodes=2M.eta2=0.0003125\final 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち878(52.3%) 後手勝ち802(47.7%) 引き分け320

engine1

勝ち659(39.2% R-63.6 +-15.5) 先手勝ち344(20.5%) 後手勝ち315(18.8%)

宣言勝ち86 先手宣言勝ち40 後手宣言勝ち46 先手引き分け168 後手引き分け152

engine2

勝ち1021(60.8%) 先手勝ち534(31.8%) 後手勝ち487(29.0%)

宣言勝ち14 先手宣言勝ち9 後手宣言勝ち5 先手引き分け152 後手引き分け168

659,320,1021

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.nodes=2M.eta2=0.00015625\final 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち805(54.1%) 後手勝ち683(45.9%) 引き分け512

engine1

勝ち538(36.2% R-72.6 +-15.6) 先手勝ち292(19.6%) 後手勝ち246(16.5%)

宣言勝ち74 先手宣言勝ち36 後手宣言勝ち38 先手引き分け270 後手引き分け242

engine2

勝ち950(63.8%) 先手勝ち513(34.5%) 後手勝ち437(29.4%)

宣言勝ち20 先手宣言勝ち11 後手宣言勝ち9 先手引き分け242 後手引き分け270

538,512,950

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.nodes=2M.eta2=7.8125e-05\final 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち855(53.4%) 後手勝ち747(46.6%) 引き分け398

engine1

勝ち598(37.3% R-71.5 +-15.6) 先手勝ち315(19.7%) 後手勝ち283(17.7%)

宣言勝ち64 先手宣言勝ち27 後手宣言勝ち37 先手引き分け220 後手引き分け178

engine2

勝ち1004(62.7%) 先手勝ち540(33.7%) 後手勝ち464(29.0%)

宣言勝ち14 先手宣言勝ち3 後手宣言勝ち11 先手引き分け178 後手引き分け220

598,398,1004

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.nodes=2M.eta2=3.90625e-05\final 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち848(51.3%) 後手勝ち805(48.7%) 引き分け347

engine1

勝ち662(40.0% R-57.7 +-15.4) 先手勝ち335(20.3%) 後手勝ち327(19.8%)

宣言勝ち61 先手宣言勝ち32 後手宣言勝ち29 先手引き分け188 後手引き分け159

engine2

勝ち991(60.0%) 先手勝ち513(31.0%) 後手勝ち478(28.9%)

宣言勝ち9 先手宣言勝ち2 後手宣言勝ち7 先手引き分け159 後手引き分け188

662,347,991

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.nodes=2M.eta2=1.953125e-05\final 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち874(54.4%) 後手勝ち732(45.6%) 引き分け394

engine1

勝ち656(40.8% R-51.4 +-15.4) 先手勝ち364(22.7%) 後手勝ち292(18.2%)

宣言勝ち70 先手宣言勝ち40 後手宣言勝ち30 先手引き分け193 後手引き分け201

engine2

勝ち950(59.2%) 先手勝ち510(31.8%) 後手勝ち440(27.4%)

宣言勝ち9 先手宣言勝ち5 後手宣言勝ち4 先手引き分け201 後手引き分け193

656,394,950

対局数=2000 同時対局数=64 ハッシュサイズ=512 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32.add.nodes=2M.eta2=9.765625e-06\final 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\halfkp_1024x2-8-32\final 定跡手数=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=16

対局数2000 先手勝ち846(53.2%) 後手勝ち745(46.8%) 引き分け409

engine1

勝ち675(42.4% R-42.1 +-15.3) 先手勝ち357(22.4%) 後手勝ち318(20.0%)

宣言勝ち77 先手宣言勝ち40 後手宣言勝ち37 先手引き分け216 後手引き分け193

engine2

勝ち916(57.6%) 先手勝ち489(30.7%) 後手勝ち427(26.8%)

宣言勝ち8 先手宣言勝ち3 後手宣言勝ち5 先手引き分け193 後手引き分け216

675,409,916

学習ロスと検証ロスは、学習率が高いほど急激に下がった。

検証ロスは、学習率が高いほど、収束したときの値が下がった。

学習率は、初期学習率が高いほど、下がりやすかった。収束が早かったとも言える。

平手局面の評価値は、学習率が高いほど高かった。

評価値の絶対値は、学習初期は上がったが、学習が進むにつれて下がった。

レーティングは、学習率が低いほど高くなる傾向があったが、いずれのパラメーターにおいても、元の評価関数より有意に低かった。

考察

学習ロスと検証ロス

学習率が高いほど早く学習が進むのは、一般的な傾向である。また、収束したときの検証ロスがもっとも低くなる学習率は、今回は 0.01 付近だった。そこから離れるほど検証ロスが上がるのも、一般的な傾向だと思われる。

学習率

学習率が高いほど収束が速くなるのは、一般的な傾向だと思われる。

平手局面の評価値

学習データの先手勝率が、平手局面の評価値に影響を与えたのだと思われる。仮に平手局面の評価値が 200 程度だった場合、学習データの先手勝率は 58% 程度だったのだと思われる。

評価値の絶対値

lambda=0.0 だったため、学習初期は、評価値が大きいほうに引っ張られたのだと思われる。一方、勝敗項の教師信号が 0.99 に設定されており、評価値に換算すると 2760 付近となり、最も大きい値がこの値に調整されたため、評価値の絶対値の平均が下がったのだと思われる。

レーティング

標準 NNUE と halfkp_1024x2-8-32 で傾向が同じだったことを考えると、高ノード数の探索を用いて生成した教師データでただ学習させるだけでは、レーティングは伸びないのだと考えられる。教師データに過学習している可能性はある。

まとめ

高ノード数の探索を用いて教師データを生成し、 halfkp_1024x2-8-32 評価関数を Fine Tuning し、レーティングを測定した。結果、レーティングは、既存の評価関数より有意に低くなってしまった。

レーティングが優位に低くなった原因が過学習にある可能性もあるため、学習途中の評価関数のレーティングも測定してみたい。

tanuki- 2022-11-29 Fine Tuning

tanuki- 2022-11-29 Fine Tuning

実験内容

  • 高ノード数の探索を用いて教師データを生成し、既存の評価関数を Fine Tuning し、レーティングを測定する。

棋譜生成

生成ルーチン tanuki-棋譜生成ルーチン
評価関数 水匠 5 FV_SCALE=16
1手あたりの思考 深さ最大 64 思考ノード数最大 2,000,000 ノード
開始局面 foodgate の 2020 年~ 2021 年の棋譜のうち、レーティング 3900 以上同士の対局の、 32 手目までから、 1 局面ランダムに選択し、その局面を開始局面とした
開始局面後のランダムムーブ なし
生成局面数 5 百万局面 × 19 セット
生成条件 対局は打ち切らず詰みの局面まで教師局面に出力した

棋譜シャッフル

シャッフルルーチン tanuki-棋譜シャッフルルーチン
qsearch あり

機械学習

機械学習ルーチン やねうら王機械学習ルーチン
学習モデル halfkp_256x2-32-32
学習手法 SGD ミニバッチ法
USI_Hash 1024
Threads 16
loop 100
batchsize 1000000
lambda 0.0
eta eta1=1e-8 eta2=0.01~0.01*0.5^10.0 eta1_epoch=100
newbob_decay 0.5
nn_batch_size 1000
eval_save_interval 100000000
loss_output_interval 1000000
mirror_percentage 50
eval_limit 32000
weight_by_progress 無効
次元下げ K・P・相対KP
教師局面内で重複した局面の除外 しない
初期ネットワークパラメーター https://docs.google.com/document/d/1Lup-hHFH2_QWqEfe56obJ6OEwj15P-C0VO6pWV9-vgo/edit?usp=sharing やねうら王 V5.33 で作成した評価関数
勝敗項の教師信号 0.99
やねうら王バージョン V5.33 相当

レーティング測定

対局相手 https://docs.google.com/document/d/1Lup-hHFH2_QWqEfe56obJ6OEwj15P-C0VO6pWV9-vgo/edit?usp=sharing やねうら王 V5.33 で作成した評価関数
思考時間 持ち時間 300 秒 + 1 手 2 秒加算
対局数 2000
同時対局数 64
ハッシュサイズ 768
開始局面 たややん互換局面集

実験結果

機械学習

レーティング測定

対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33.add.nodes=2M.eta2=0.01\final 定跡手数=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=20

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33\final 定跡手数=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

対局数2000 先手勝ち940(51.9%) 後手勝ち870(48.1%) 引き分け190

engine1

勝ち588(32.5% R-114.1 +-16.1) 先手勝ち310(17.1%) 後手勝ち278(15.4%)

宣言勝ち35 先手宣言勝ち13 後手宣言勝ち22 先手引き分け102 後手引き分け88

engine2

勝ち1222(67.5%) 先手勝ち630(34.8%) 後手勝ち592(32.7%)

宣言勝ち8 先手宣言勝ち2 後手宣言勝ち6 先手引き分け88 後手引き分け102

588,190,1222

対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33.add.nodes=2M.eta2=0.005\final 定跡手数=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=20

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33\final 定跡手数=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

対局数2000 先手勝ち957(53.4%) 後手勝ち836(46.6%) 引き分け207

engine1

勝ち713(39.8% R-64.5 +-15.5) 先手勝ち380(21.2%) 後手勝ち333(18.6%)

宣言勝ち49 先手宣言勝ち22 後手宣言勝ち27 先手引き分け117 後手引き分け90

engine2

勝ち1080(60.2%) 先手勝ち577(32.2%) 後手勝ち503(28.1%)

宣言勝ち3 先手宣言勝ち0 後手宣言勝ち3 先手引き分け90 後手引き分け117

713,207,1080

対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33.add.nodes=2M.eta2=0.0025\final 定跡手数=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=20

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33\final 定跡手数=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

対局数2000 先手勝ち951(53.2%) 後手勝ち835(46.8%) 引き分け214

engine1

勝ち687(38.5% R-72.6 +-15.6) 先手勝ち360(20.2%) 後手勝ち327(18.3%)

宣言勝ち49 先手宣言勝ち26 後手宣言勝ち23 先手引き分け133 後手引き分け81

engine2

勝ち1099(61.5%) 先手勝ち591(33.1%) 後手勝ち508(28.4%)

宣言勝ち3 先手宣言勝ち2 後手宣言勝ち1 先手引き分け81 後手引き分け133

687,214,1099

対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33.add.nodes=2M.eta2=0.00125\final 定跡手数=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=20

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33\final 定跡手数=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

対局数2000 先手勝ち983(54.9%) 後手勝ち808(45.1%) 引き分け209

engine1

勝ち681(38.0% R-75.7 +-15.6) 先手勝ち382(21.3%) 後手勝ち299(16.7%)

宣言勝ち47 先手宣言勝ち22 後手宣言勝ち25 先手引き分け108 後手引き分け101

engine2

勝ち1110(62.0%) 先手勝ち601(33.6%) 後手勝ち509(28.4%)

宣言勝ち6 先手宣言勝ち1 後手宣言勝ち5 先手引き分け101 後手引き分け108

681,209,1110

対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33.add.nodes=2M.eta2=0.000625\final 定跡手数=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=20

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33\final 定跡手数=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

対局数2000 先手勝ち949(53.8%) 後手勝ち815(46.2%) 引き分け236

engine1

勝ち664(37.6% R-77.0 +-15.6) 先手勝ち354(20.1%) 後手勝ち310(17.6%)

宣言勝ち40 先手宣言勝ち22 後手宣言勝ち18 先手引き分け141 後手引き分け95

engine2

勝ち1100(62.4%) 先手勝ち595(33.7%) 後手勝ち505(28.6%)

宣言勝ち2 先手宣言勝ち1 後手宣言勝ち1 先手引き分け95 後手引き分け141

664,236,1100

対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33.add.nodes=2M.eta2=0.0003125\final 定跡手数=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=20

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33\final 定跡手数=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

対局数2000 先手勝ち949(55.2%) 後手勝ち769(44.8%) 引き分け282

engine1

勝ち681(39.6% R-62.5 +-15.5) 先手勝ち374(21.8%) 後手勝ち307(17.9%)

宣言勝ち50 先手宣言勝ち19 後手宣言勝ち31 先手引き分け167 後手引き分け115

engine2

勝ち1037(60.4%) 先手勝ち575(33.5%) 後手勝ち462(26.9%)

宣言勝ち6 先手宣言勝ち2 後手宣言勝ち4 先手引き分け115 後手引き分け167

681,282,1037

対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33.add.nodes=2M.eta2=0.00015625\final 定跡手数=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=20

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33\final 定跡手数=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

対局数2000 先手勝ち940(54.0%) 後手勝ち801(46.0%) 引き分け259

engine1

勝ち721(41.4% R-52.3 +-15.4) 先手勝ち394(22.6%) 後手勝ち327(18.8%)

宣言勝ち84 先手宣言勝ち41 後手宣言勝ち43 先手引き分け134 後手引き分け125

engine2

勝ち1020(58.6%) 先手勝ち546(31.4%) 後手勝ち474(27.2%)

宣言勝ち5 先手宣言勝ち2 後手宣言勝ち3 先手引き分け125 後手引き分け134

721,259,1020

対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33.add.nodes=2M.eta2=7.8125e-05\final 定跡手数=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=20

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33\final 定跡手数=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

対局数2000 先手勝ち901(53.5%) 後手勝ち782(46.5%) 引き分け317

engine1

勝ち726(43.1% R-40.3 +-15.3) 先手勝ち391(23.2%) 後手勝ち335(19.9%)

宣言勝ち91 先手宣言勝ち43 後手宣言勝ち48 先手引き分け164 後手引き分け153

engine2

勝ち957(56.9%) 先手勝ち510(30.3%) 後手勝ち447(26.6%)

宣言勝ち8 先手宣言勝ち3 後手宣言勝ち5 先手引き分け153 後手引き分け164

726,317,957

対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33.add.nodes=2M.eta2=3.90625e-05\final 定跡手数=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=20

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33\final 定跡手数=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

対局数2000 先手勝ち922(54.2%) 後手勝ち778(45.8%) 引き分け300

engine1

勝ち742(43.6% R-37.7 +-15.3) 先手勝ち403(23.7%) 後手勝ち339(19.9%)

宣言勝ち99 先手宣言勝ち42 後手宣言勝ち57 先手引き分け162 後手引き分け138

engine2

勝ち958(56.4%) 先手勝ち519(30.5%) 後手勝ち439(25.8%)

宣言勝ち6 先手宣言勝ち2 後手宣言勝ち4 先手引き分け138 後手引き分け162

742,300,958

対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33.add.nodes=2M.eta2=1.953125e-05\final 定跡手数=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=20

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33\final 定跡手数=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

対局数2000 先手勝ち966(55.2%) 後手勝ち783(44.8%) 引き分け251

engine1

勝ち768(43.9% R-37.1 +-15.3) 先手勝ち420(24.0%) 後手勝ち348(19.9%)

宣言勝ち76 先手宣言勝ち38 後手宣言勝ち38 先手引き分け142 後手引き分け109

engine2

勝ち981(56.1%) 先手勝ち546(31.2%) 後手勝ち435(24.9%)

宣言勝ち13 先手宣言勝ち5 後手宣言勝ち8 先手引き分け109 後手引き分け142

768,251,981

対局数=2000 同時対局数=64 ハッシュサイズ=768 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=1 表示

更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33.add.nodes=2M.eta2=9.765625e-06\final 定跡手数=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=20

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス

=D:\hnoda\shogi\eval\regression.v5.33\final 定跡手数=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

対局数2000 先手勝ち930(54.4%) 後手勝ち779(45.6%) 引き分け291

engine1

勝ち783(45.8% R-24.9 +-15.3) 先手勝ち432(25.3%) 後手勝ち351(20.5%)

宣言勝ち41 先手宣言勝ち16 後手宣言勝ち25 先手引き分け142 後手引き分け149

engine2

勝ち926(54.2%) 先手勝ち498(29.1%) 後手勝ち428(25.0%)

宣言勝ち34 先手宣言勝ち17 後手宣言勝ち17 先手引き分け149 後手引き分け142

783,291,926

学習ロスと検証ロスは、学習率が高いほど急激に下がった。

検証ロスは、学習率が高いほど、収束したときの値が下がった。

学習率は、初期学習率が高いほど、下がりやすかった。収束が早かったとも言える。

平手局面の評価値は、学習率が高いほど高かった。

評価値の絶対値は、学習初期は上がったが、学習が進むにつれて下がった。

レーティングは、学習率が低いほど高くなる傾向があったが、いずれのパラメーターにおいても、元の評価関数より有意に低かった。

考察

学習ロスと検証ロス

学習率が高いほど早く学習が進むのは、一般的な傾向である。また、収束したときの検証ロスがもっとも低くなる学習率は、今回は 0.01 付近だった。そこから離れるほど検証ロスが上がるのも、一般的な傾向だと思われる。

学習率

学習率が高いほど収束が速くなるのは、一般的な傾向だと思われる。

平手局面の評価値

学習データの先手勝率が、平手局面の評価値に影響を与えたのだと思われる。仮に平手局面の評価値が 200 程度だった場合、学習データの先手勝率は 58% 程度だったのだと思われる。

評価値の絶対値

lambda=0.0 だったため、学習初期は、評価値が大きいほうに引っ張られたのだと思われる。一方、勝敗項の教師信号が 0.99 に設定されており、評価値に換算すると 2760 付近となり、最も大きい値がこの値に調整されたため、評価値の絶対値の平均が下がったのだと思われる。

レーティング

標準 NNUE の表現能力を使い切ってしまい、既存のネットワークパラメーターを壊してしまっている可能性がある。

まとめ

高ノード数の探索を用いて教師データを生成し、既存の評価関数を Fine Tuning し、レーティングを測定した。結果、レーティングは、既存の評価関数より有意に低くなってしまった。

次は halfkp_1024x2-8-32 での Fine Tuning を試してみたい。

tanuki- 2022-11-03 nnue-pytorch halfkp_1024x2-8-32

tanuki- 2022-11-03 nnue-pytorch halfkp_1024x2-8-32

実験内容

  • nnue-pytorch を用い、 halfkp_1024x2-8-32 ネットワークを学習させる。

棋譜生成

生成ルーチン tanuki-棋譜生成ルーチン
評価関数 水匠5 FV_SCALE=16
1手あたりの思考 深さ最大 9 思考ノード数最大 50,000 ノード
開始局面 foodgate の 2020 年~ 2021 年の棋譜のうち、レーティング 3900 以上同士の対局の 32 手目までから 1 局面ランダムに選択し、その局面を開始局面とした ランダムムーブなし
生成局面数 10 億局面 × 8 セット
生成条件 対局は打ち切らず詰みの局面まで学習データに出力した

シャッフル条件

生成ルーチン tanuki-シャッフルルーチン
qsearch() あり
置換表 無効

機械学習

機械学習ルーチン nnue-pytorch + やねうら王 https://github.com/nodchip/nnue-pytorch/tree/shogi.2022-10-31.halfkp_1024x2-8-32
学習モデル halfkp_1024x2-8-32
学習手法 SGD ミニバッチ法
初期学習率 (lr) 1.0
最適化手法 なし
学習率調整手法 newbob 風学習率スケジューラー 学習ロスに改善が見られなくなったら、学習率を下げる
batch-size 16384
threads 1
num-workers 8
gpus 1
features HalfKP
max_epoch 3000
scaling (kPonanzaConstant) 361
lambda 0.5
勝敗項の教師信号 0.99
num_batches_warmup 10000
newbob_decay 0.50
epoch_size 10000000
num_epochs_to_adjust_lr 50

レーティング測定

対局相手 tanuki- 2022-10-31 nnue-pytorch やねうら王学習率スケジューラー - Google ドキュメント https://docs.google.com/document/d/1dIiB9eIcI-6pG2Rkxju-iXcIyISxNt-bK0nNSJOJ33I/edit#heading=h.hqsqfroqfwaz tanuki- 2022-06-07 やねうら王学習部リグレッション調査 V5.33 https://docs.google.com/document/d/1Lup-hHFH2_QWqEfe56obJ6OEwj15P-C0VO6pWV9-vgo/edit?usp=sharing
思考時間 持ち時間 300 秒 + 1 手 2 秒加算
対局数 2000
同時対局数 64
ハッシュサイズ 768/640
開始局面 たややん互換局面集

実験結果

機械学習

レーティング測定

対局数=2000 同時対局数=64 ハッシュサイズ=640 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=2 表示更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\shogi\eval\tanuki-.nnue-pytorch-2022-11-02 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\shogi\eval\tanuki-.nnue-pytorch-2022-10-31 定跡手数=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=16

対局数2000 先手勝ち972(56.1%) 後手勝ち762(43.9%) 引き分け266

engine1

勝ち765(44.1% R-35.6 +-15.3) 先手勝ち433(25.0%) 後手勝ち332(19.1%)

宣言勝ち12 先手宣言勝ち8 後手宣言勝ち4 先手引き分け135 後手引き分け131

engine2

勝ち969(55.9%) 先手勝ち539(31.1%) 後手勝ち430(24.8%)

宣言勝ち48 先手宣言勝ち23 後手宣言勝ち25 先手引き分け131 後手引き分け135

765,266,969

対局数=2000 同時対局数=64 ハッシュサイズ=640 開始手数=24 最大手数=320 開始局面ファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\TanukiColiseum\taya36_2020-11-06.sfen NUMAノード数=2 表示更新間隔(ms)=3600000

思考エンジン1 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine1\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\shogi\eval\tanuki-.nnue-pytorch-2022-11-02 定跡手数=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

思考エンジン2 name=YaneuraOu NNUE 7.10 64ZEN2 TOURNAMENT author=by yaneurao exeファイル=C:\Jenkins\workspace\TanukiColiseum.2022-05-02\engine2\source\YaneuraOu-by-gcc.exe 評価関数フォルダパス=D:\hnoda\shogi\eval\regression.v5.33\final 定跡手数=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=16

対局数2000 先手勝ち941(51.8%) 後手勝ち874(48.2%) 引き分け185

engine1

勝ち650(35.8% R-91.5 +-15.8) 先手勝ち333(18.3%) 後手勝ち317(17.5%)

宣言勝ち5 先手宣言勝ち2 後手宣言勝ち3 先手引き分け107 後手引き分け78

engine2

勝ち1165(64.2%) 先手勝ち608(33.5%) 後手勝ち557(30.7%)

宣言勝ち18 先手宣言勝ち11 後手宣言勝ち7 先手引き分け78 後手引き分け107

650,185,1165

学習ロスと検証ロスは、 halfkp_256x2-32-32 と比べて下がった。

レーティングは、 halfkp_256x2-32-32 と比べ、有意に低かった。

考察

halfkp_1024x2-8-32 のほうがロスが下がっていることから、 halfkp_1024x2-8-32 のほうが表現能力が高く、よりモデルの精度が高いのだと思われる。

一方、

tanuki- 2022-04-28 halfkp_1024x2-8-32 - Google ドキュメント https://docs.google.com/document/d/1IjK1PpT_-lGZen28ACWNrKsjk-BVnS4riDAR2oPZHDk/edit

と比べ、レーティングが低い事を考えると、 nnue-pytorch に何らかの問題があるのだと思われる。

まとめ

nnue-pytorch を用い、 halfkp_1024x2-8-32 ネットワークを学習させた。結果、ロスは halfkp_256x2-32-32 と比べて下がったが、レーティングは halfkp_256x2-32-32 と比べて有意に低かった。 nnue-pytorch に何らかの問題があるのだと思われる。

次回は、バッチサイズをやねうら王純正学習器の標準サイズに合わせて学習させ、結果を見てみたい。