Classifier for the game of Go. Give it a Go board state and it will predict where the pro would move and how likely either side is to win the game from the current board state.
Policy Head ~50%
Value Head ~70%
Heat map of networks PolicyHead outputs over an input board state. Includes ValueHeads winner prediction, as well as the real winner of the professional game. Generated using the NetHeatMap class.
Go net is designed to take input data similarly formatted to AlphaZero. The input data is in the format (Samples)xPx19x19 where P is the total number of binary feature planes, and 19x19 is the go game board or the color plane. The first feature plane (color) is either all zeros (BLACK) or all ones (WHITE). The following feature planes are separated into stacks of two planes per board state. The first plane (m) after the color plane is a binary grid of the side-to-moves pieces from the most recent board state (S), while plane m+1 is composed of a similar structure but consists of the opponents pieces from state S. Further feature planes are built from states S-n where n is at most (P-1)/2.
The input format GoNet takes labels in is (Samples)x3. The three labels in order are: Index of the move on the board, color of side to move (BLACK = 1, WHITE = 2), and who won the game.
Refining the network composition.
In order to produce the data format required for GoNet you must either feed GoNet data produced from the TYGEM dataset with my TygemParser or use a similar data converter for the Professional dataset located in my GoClassifier. Or, produce your own data set in the correct format.