KataGo(カタゴ)は、David J. Wu(通称 lightvector)によって開発されたコンピュータ囲碁プログラムである。

概要

DeepMindが発表したAlphaGo ZeroとAlphaZeroの論文に基づいてDavid J. WuがKataGoを作成した。さらに、DeepMindの論文に加え、多くの関連研究と独自の研究の結果、強化学習の速度を大幅に向上させた(50倍以上)。ニューラルネットワークのデータが公開されている、世界で最も強いコンピュータ囲碁ソフトウェアの一つとなった。

KataGoによって実装されたコンピュータ囲碁プログラムには以下が含まれる :

  • セルフプレイトレーニングプログラム (C 、Python 3、TensorFlowで実装)
  • ソフトウェアで操作できるGTPエンジン(C で実装)

Jane Street Capital(作者所属の会社)はトレーニングに必要な計算資源に加えて、トレーニング結果(ニューラルネットワークデータ)も公開している。

KataGoは囲碁AI検討ソフト「Lizzie」の思考エンジンに採用された(2019年10月1日に公開されたLizzieバージョン0.7以降)。

その豊富な分析機能によって、囲碁オンライン分析Webサイト「AI Sensei」でデフォルトの分析エンジンとして使用されている。

"KataGo" という名称は、日本語の「かた(形・型)」に因んでいる。現在は、英語でも武道の形を "kata" という。作者である lightvector (David J. Wu) は、自己の強化学習によって永続的に鍛錬し、独自の形の完成を目指すボットの名称として合理的に思えたと述べている。

差異

AlphaZero

AlphaZeroとの主な違いは、KataGoがオープンソースとオープンデータであることに加えて、強化学習のコストが大幅に削減されたので、自宅のPCでも比較的高いレベルの強化学習が行えることである。数日でアマチュア高段者に到達した。

Leela Zero

LeelaZeroとの主な違いは、KataGoのGTPエンジンが"kata-analyze"コマンドをサポートしていることである。フロントエンドプログラム(Lizzieなど)がKataGoの目数差の分析結果を取得できるので、人間の目数計算と判断の助けになる。LeelaZeroなどに見られる終盤のヨセで損な手を打つ可能性を減らすことができる。

もう一つの違いは、KataGoはOpenCL(v1.2以降でサポート)とCUDAの両方をサポートしていることである(OpenCLの最新版は最適化されており、CUDA版より数倍も高速ということはなく、二つの版はほぼ同じ)。 LeelaZeroはOpenCLだけをサポートしている。

強さ

最初のバージョン

最初のバージョン(番号はg65,v1.0)では、2019年2月に35台のNVIDIA Tesla V100を使用して7日間の強化学習が行われた。6ブロックx96フィルターから15ブロックx192フィルターまでで、棋力はLeelaZeroの(ニューラルネットワークの130番目に相当する)LZ130とほぼ同じになった。これは人間の棋力を既に超えている。

2番目のバージョン

2番目のバージョン(番号はg104,v1.1)は、2019年5月から6月に作成された。28台のNVIDIA Tesla V100で、6ブロックx96フィルターから20ブロックx256フィルターまで強化学習が行われた。ハイパーパラメータが大幅に改善されたので、わずか3.5日で最初のバージョンの棋力を超えた。さらに、LCB(英語: Lower confidence bound)の導入によって、棋力が大幅に向上した。 最後に、19日間のトレーニングの後、20ブロック版が作成され、棋力が「LZ-ELFv2」(ELF OpenGoのv2の重みファイルをLeela Zeroで動かしたもの)を上回った。Leela Zeroの40ブロック版と比較すると、LZ200と同等の棋力になった。

3番目のバージョン

3番目のバージョン(番号はg170,v1.3v1.4)は、2020年1月から6月にかけて作成された。29GPUで始まり、14日後に37GPUに増加し、24日(合わせて38日)後に47GPUに増加した。

v1.5.0以降、GPUを使用しない純粋なCPUだけでの動作がサポートされた(Eigen(英語: Eigen (C library))ライブラリを使用)。また、バージョンv1.8.0以降では、分散トレーニングをサポートしているので、世界中のユーザーが重み(ニューラルネットワーク)のトレーニングに協力できるようになった。

関連項目

  • AlphaGo Zero
  • AlphaZero
  • コンピュータ囲碁
  • Minigo
  • Leela Zero

脚注

注釈

出典


KataGo/analysis_example.cfg at master · lightvector/KataGo · GitHub

Highlights from KataGo games General Go Discussion Online Go Forum

Home Katag AG

katagoev.de Magic, Tabletop und Gesellschaftsspiele Oberfranken e.V.

Katago has the BUG of reading for death and life in some circumstance