lightvector/KataGo

GTP engine and self-play learning in Go

何を解決するか

KataGoは、利用可能な中で最強クラスとなるよう設計された、高性能なオープンソースの囲碁AIです。膨大な外部データセットを必要とせず、自己対局を通じてゼロから学習でき、ハイレベルな対局や詳細なゲーム分析の両方に使用できる、超人的なレベルの囲碁AIを提供するという課題を解決します。

仕組み

KataGoは、AlphaZeroのような学習プロセスを使用し、ニューラルネットワーク(最近ではtransformerモデルのサポートを含む)とMonte-Carlo Graph Search(MCTSの拡張)を利用しています。効率的に設計されており、19x19の盤面において、わずか数日間の数枚のGPUを使用することで高いアマチュア段位レベルに到達し、あるいは単一のコンシューマー向けGPUを数ヶ月間使用することで超人的な強さに到達することが可能です。OpenCL, CUDA, TensorRT, ROCm, ONNX Runtime, そして Eigen (CPU) を含む複数のハードウェア・バックエンドをサポートしています。

対象者

  • 囲碁プレイヤー:強力な対戦相手や、対局分析のためのツールを求めている方。
  • 開発者:囲碁ソフトウェア用のGTP互換エンジンを必要としている方。
  • AI研究者:自己対局による学習やMonte-Carlo Graph Searchに関心がある方。

ハイライト

  • スコアと地(確定領域)の推定:勝率のみを提供するボットとは異なり、KataGoは地とスコアを推定するため、アマチュアの対局を分析するのに非常に有用です。
  • 幅広いサポート:7x7から19x19までの盤面サイズと、多種多様なルールセットをサポートしています。
  • ハードウェアの柔軟性:NVIDIA, AMD, IntelのGPUおよびCPUに対応するため、6つの異なるバックエンドを提供しています。
  • 効率的な学習:比較的控えめなハードウェアを使用して、ゼロから超人的なレベルまで学習させることが可能です。
  • 人間らしい打ち方:特定の人間用SLモデルを使用することで、様々な段位の人間らしい打ち方を模倣することができます。

関連

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