official-stockfish/nnue-pytorch

Stockfish NNUE (Chess evaluation) trainer in Pytorch

何を解決するか

このプロジェクトは、Stockfishチェスエンジン用のNNUE(効率的な更新可能なニューラルネットワーク)を学習するためのPyTorchベースのフレームワークを提供します。現代のGPUアクセラレーション(NVIDIA、AMD、Apple Silicon)を活用して、チェス盤評価に使用できるニューラルネットワークの学習を可能にします。

動作方法

システムはPyTorchを使用してネットワークの学習プロセスを処理します。効率性を高めるために特別なスパースデータローダーを含み、さまざまなハードウェアアクセラレータをサポートしています。ワークフローは、ネットワークの学習、チェックポイント(.ckpt)の保存、および別途用意されたスクリプト(run_games.py)を使用して、これらのチェックポイントを.nnue形式に自動変換し、c-chess-cliordoなどのツールを用いて評価ゲームを実行して、最も優れた性能を持つネットワークをランキングするものです。

対象ユーザー

PyTorchを使用してStockfish用のカスタム評価ネットワークを学習したいチェスエンジン開発者や研究者。

特徴

  • NVIDIA(CUDA)、AMD(ROCm)、Apple Silicon(MPS)を含む複数のGPUベンダーをサポート。
  • チェックポイントを.nnueファイルに変換し、評価ゲームを実行するための統合自動化。
  • Dockerベースのセットアップにより、環境構成とC++コンパイルを簡素化。
  • 学習ログ用にTensorBoardとの統合。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト