TadaoYamaokaの開発日記

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

GCTの学習に使用したデータセットを公開

dlshogi with GCTのWCSC31バージョンのモデルの学習に使用したデータセットを公開します。

https://drive.google.com/drive/u/3/folders/1Lkh4HL0tMx9p3NNbHue9lvh_HOSBGxhv

加納さんのご厚意により、Googleドライブの無料枠を大幅に上回る容量を提供してもらいました。
(いつまで提供できるかは保証できなため、データ取得はお早めに)

ファイルの説明

hcpe3/selfplay_gct-???.hcpe3.xz
  • 中盤メインの5億の初期局面集で強化学習したデータ
  • 040までは1600playout
  • 041~055は1800playout
  • 056~070は2000playout
  • 071~は2400playout
  • hcpe3フォーマット
  • 方策の分布を学習したモデルで生成。GCTのモデルはこのデータの一部をhcpeに変換して学習。
  • xzで圧縮しているため解凍が必要
hcpe3/selfplay_gct???_floodgate26*.hcpe3.xz
  • floodgateの26手目までから作成した初期局面集で強化学習したデータ
  • gct???の部分は、selfplay_gct-???のどこまでを学習したモデルで生成したかを表す
  • GCTモデルの学習ではほとんど使用していなかった
hcpe3/selfplay_gct???_taya36.hcpe3.xz
  • たややん互換局面を初期局面集として強化学習したデータ
  • gct???の部分は、selfplay_gct-???のどこまでを学習したモデルで生成したかを表す
  • hcpeに変換してGCTモデルの学習に使用した
hcpe3/selfplay_model-0000???_taya36.hcpe3.xz
  • たややん互換局面を初期局面集として、GCTのモデルを使用して強化学習したデータ
  • model-0000???の部分は、GCTのモデルのバージョン番号を表す
  • hcpeに変換してGCTモデルの学習に使用した
aobazero/hcpe
  • AobaZeroの棋譜hcpeに変換したもの
  • 電竜戦バージョンのGCTの学習以降もしばらく使用していたが、学習の後半では使用していない
  • 序盤の学習に効果があるが、中終盤の質が今一つ
gct/hcpe/play-001
  • floodgate/電竜戦/ローカル対局/ローカル対局(棋力計測)から生成したデータ
  • _nomateが付くファイルは詰みの局面を除いたもの(除いた方が精度が上がる)
gct/hcpe/selfplay-unique-900xx/selfplay-unique-902xx
  • たややん互角局面集での強化学習データ
  • GCTの強化学習で生成したデータ
  • 学習を安定させるために過去に生成したデータも常に学習に加えていた(効果は未検証)
gct/hcpe/selfplay-unique-901xx/selfplay-unique-903xx
  • やねうら互角局面集での強化学習データ
  • GCTの強化学習で生成したデータ
  • 学習を安定させるために過去に生成したデータも常に学習に加えていた(効果は未検証)
suisho/hcpe
  • 水匠の相入玉局面教師(たややんさんには、discord で公開の許可をもらっています。)

大会で使用したモデルについて

hcpe3の方は山岡が作成して、hcpeの方は加納さんの方で生成して、GCTのモデルは加納さんが主に学習を進めて、最後に山岡が生成したファイルも混ぜてお互いで学習して強くなったモデルを採用しています。

公開の目的とか

このデータを生成するために、マシンパワーと労力を費やしています。
ディープラーニングを使ったコンピュータ将棋を始めてみたくても、同じだけのデータを用意するのはかなりハードルが高いと思います。
学習やモデルアーキテクチャにまだまだ工夫の余地があるため、そちらで競い合ってフィードバックしあえる環境を作りたいという思いでデータを公開します。

データ生成にはマシンパワーが必要ですが、学習環境には、TensorCoreのあるGPU1枚か、Google Colab(できればColab Pro)があれば十分です。

新たな人がコンピュータ将棋の開発に参加して、いっしょに盛り上げていってくれることを期待します。