Training Deep Convolutional Neural Networks to Play Go

Christopher Clark , Amos Storkey

Research output: Chapter in Book/Report/Conference proceedingConference contribution


Mastering the game of Go has remained a longstanding challenge to the field of AI. Modern computer Go programs rely on processing millions of possible future positions to play well, but intuitively a stronger and more ‘humanlike’ way to play the game would be to rely on pattern recognition rather than brute force computation. Following this sentiment, we train deep convolutional neural networks to play Go by training them to predict the moves made by expert Go players. To solve this problem we introduce a number of novel techniques, including a method of tying weights in the network to ‘hard code’ symmetries that are expected to exist in the target function, and demonstrate in an ablation study they considerably improve performance. Our final networks are able to achieve move prediction accuracies of 41.1% and 44.4% on two different Go datasets, surpassing previous state of the art on this task by significant margins. Additionally, while previous move prediction systems have not yielded strong Go playing programs, we show that the networks trained in this work acquired high levels of skill. Our convolutional neural networks can consistently defeat the well known Go program GNU Go and win some games against state of the art Go playing program Fuego while using a fraction of the play time.
Original languageEnglish
Title of host publicationProceedings of the 32nd International Conference on Machine Learning (IMCL 2015)
Place of PublicationLille, France
Number of pages9
Publication statusPublished - 11 Jul 2015
Event32nd International Conference on Machine Learning - Lille, France
Duration: 6 Jul 201511 Jul 2015

Publication series

NameProceedings of Machine Learning Research
ISSN (Electronic)2640-3498


Conference32nd International Conference on Machine Learning
Abbreviated titleICML 2015
Internet address


Dive into the research topics of 'Training Deep Convolutional Neural Networks to Play Go'. Together they form a unique fingerprint.

Cite this