What does HackerNews think of KataGo?

GTP engine and self-play learning in Go

Language: C++

I'd suggest KataGo, which is much stronger and more actively developed than Leela Zero https://github.com/lightvector/KataGo
The strongest open source engine right now is KataGo (https://github.com/lightvector/KataGo)
> Thanks for sharing!

You're welcome.

> Why did you use GBDTs instead of NNs?

I mostly wanted to build an implementation to see how it worked; I was more familiar with GBDTs than NNs, so I figured I'd start with that. At its heart, AlphaZero is the marriage of two great ideas: using a Monte Carlo Tree Search (MCTS) to efficiently look ahead and find good moves and using a powerful ML model (like a ResNet) as a bot's intuition about which positions are good to be in (value network) and which moves are good when you're in which positions (policy network). So if a GBDT is powerful enough for your use case, the "ML Model" component in the MCTS+ML Model AlphaZero setup should be able to be swapped out with it if you want.

But I was also curious if GBDTs would do almost as well as a NN, because GBDTs can be much more efficient w.r.t. cost/energy. At the time when AlphaZero came out, I think it cost >$10M to train a superhuman Go algo. Nowadays KatoGo [1] can do it for <$50K. The most expensive part of training is the self play. You basically have bots play millions of games against each other and learn from the results of those games. Getting value/policy predictions each move from the ML models is a majority of the computation during self play, so if you make that more efficient, you should be able to train a bot faster/cheaper.

Check out this HN thread if you're interested in more AlphaX shenanigans: https://news.ycombinator.com/item?id=23599278

[1] https://github.com/lightvector/KataGo

The open source clones of Alpha Go are my favorite AI sparring partners. There are several to choose from, and also several Go board applications.

My favorite open source Alpha Go clone is Katago https://github.com/lightvector/KataGo.

There are several different open source Go board/sgf editor applications on which to run Katago; I use several.

KaTrain is my favorite: https://github.com/sanderland/katrain

I also use sabaki: https://github.com/SabakiHQ/Sabaki/releases

and q5Go: https://github.com/bernds/q5Go

for batch review of Go games goreviewpartner is good: https://github.com/pnprog/goreviewpartner

Related demos, repositories, papers and posts:

More recent and extensive post: https://blog.janestreet.com/deep-learning-the-hardest-go-pro...

Site to play against KataGo: https://online-go.com/player/592684/

Arxiv paper on KataGo design: https://arxiv.org/abs/1902.10565

GitHub repository of KataGo: https://github.com/lightvector/KataGo

Another writer commenting on the history of Go AI, and significance of KataGo: https://brantondemoss.com/writing/kata.html

https://github.com/lightvector/KataGo

>KataGo's latest run used about 29 GPUs, rather than thousands (like AlphaZero and ELF), first reached superhuman levels on that hardware in perhaps just three to six days, and reached strength similar to ELF in about 14 days. With minor adjustments and a few more GPUs, starting around 40 days it roughly began to match or surpass Leela Zero in some tests with different configurations, time controls, and hardware. And finally after about four months of training time, the current run may be wrapping up fairly soon, but we hope to be able to continue it or begin another run in the future.

There are newer approaches where specialising for the problem domain (Go) gets you a 5-100x speedup: https://github.com/lightvector/KataGo/