Large board go (21x21 and up)

Funnily enough, AIs can be strong on large boards without ever training on them. Recently released a version of KataGo’s code that works up to 29x29, and the same neural nets in the current run that were only trained on 7x7 through 19x19 seem to work okay on the larger boards. :wink:
https://github.com/lightvector/KataGo/releases/tag/v1.3.5%2Bbs29

One key to making this work is actually that convolutional nets don’t physically care what the board size is. You feed in the board as essentially a “image” (e.g. 19x19 pixels, except instead of RGB you have channels that specify the stone on each spot and whatever other properties you want), and then almost all the layers in the net merely specify a sequence of local transformations by which pixels should change based on the pattern of their neighbors. And magically those transformations result in a map that shows what all the good moves are, who owns what territory, who’s winning, etc.

Since these transformations are simply uniform rules about how pixels should adjust values based on their neighbors, they can always be applied no matter how big the board is - every pixel still just follows the same rule and updates based on its neighbors. The only question is whether those transformations all together also happen to produce good moves and evaluations on a big board the same way they do on a smaller board, when the only thing they were trained to do was to produce those good moves and evaluations on the smaller board.

It seems in practice they do, to an extent. (if you compile KataGo to try to scale up the board even more, and more to size 40, 50, 60,… you’ll finally start to see the nets say really crazy things given that they were trained on size at most 19).

10 Likes