  The training and running of an online Go system require the support of
effective data management systems to deal with vast data, such as the initial
Go game records, the feature data set obtained by representation learning, the
experience data set of self-play, the randomly sampled Monte Carlo tree, and so
on. Previous work has rarely mentioned this problem, but the ability and
efficiency of data management systems determine the accuracy and speed of the
Go system. To tackle this issue, we propose an online Go game system based on
the chunk data storage method (CH-Go), which processes the format of 160k Go
game data released by Kiseido Go Server (KGS) and designs a Go encoder with 11
planes, a parallel processor and generator for better memory performance.
Specifically, we store the data in chunks, take the chunk size of 1024 as a
batch, and save the features and labels of each chunk as binary files. Then a
small set of data is randomly sampled each time for the neural network
training, which is accessed by batch through yield method. The training part of
the prototype includes three modules: supervised learning module, reinforcement
learning module, and an online module. Firstly, we apply Zobrist-guided hash
coding to speed up the Go board construction. Then we train a supervised
learning policy network to initialize the self-play for generation of
experience data with 160k Go game data released by KGS. Finally, we conduct
reinforcement learning based on REINFORCE algorithm. Experiments show that the
training accuracy of CH- Go in the sampled 150 games is 99.14%, and the
accuracy in the test set is as high as 98.82%. Under the condition of limited
local computing power and time, we have achieved a better level of
intelligence. Given the current situation that classical systems such as GOLAXY
are not free and open, CH-Go has realized and maintained complete Internet
openness.
