HackerPapers

arXiv:1412.3409cs.AI

Teaching Deep Convolutional Neural Networks to Play Go

Christopher Clark, Amos Storkey

Abstract

Mastering the game of Go has remained a long standing challenge to the field of AI. Modern computer Go systems 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 abilities rather then 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 expect 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 programs 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, indicating it is state of the art among programs that do not use Monte Carlo Tree Search. It is also able to win some games against state of the art Go playing program Fuego while using a fraction of the play time. This success at playing Go indicates high level principles of the game were learned.

arXiv comments
9 pages, 8 figures, 5 tables. Corrected typos, minor adjustment to table format
Journal reference
DOI
Subjects
cs.AIArtificial Intelligence cs.LGMachine Learning cs.NENeural and Evolutionary Computing

On Hacker News

Linked by 5 identifiable commenters in 7 comments across 6 threads, from May 2015 to Nov 2015. Found in 1 HN submission from Dec 2014 to Dec 2014. Open submission discussions.

Comments linking this paper, per year.

Discussed in comments6 threads

    • This Facebook Video suggests it has had months of either training or development, which sounds might be it learning by playing, reinforcement learning in this space could be very interesting - more details would be good. The two breakthrough papers using Deep Conv Nets to play…

      deepnetView on HNParent context

    • Well, it didn't really teach itself, it was carefully designed and was fed a huge (155M games generated from 5M actual games) data set. Coupled with an semi-supervised approach (rate each position whether the AI playing itself wins or loses). Similar approach yielded strong AIs…

      Jun8View on HNParent context

    • Naveen: http://arxiv.org/pdf/1412.3409.pdf anyways, that's not my point. i'm saying deep learning for image analysis has been a huge success, and people should explore ways to apply this success to medical imaging. but just for your info, neural networks are slowly being…

      lucidrainsView on HNParent context

    • Classification is a huge part of chess programs. You need to quickly evaluate a millions of boards to decide which side has the advantage. However, do to the well understood rules we can write efficient classifiers by hand. Go is a much harder problem in large part because it's…

      RetricView on HNParent context

    • The literature is mostly image based, but as other users have said voice, text, and video have also seen substantial gains. It has also been used to great effect for taxi destination prediction (heterogenous information) [1], drug discovery [2], and general operations on graphs…

      kastnerkyleView on HNParent context

    • Monte Carlo Tree Search ( Random playout ) is currently the best computer strategy for evaluating a Go position. This is likely due to the way Go works , random playout provides a rough estimate of who controls what territory ( this is how Go is scored ). Recently two…

      deepnetView on HNParent context

    • *references Teaching Deep Convolutional Neural Networks to Play Go by Clarke & Storkey http://arxiv.org/abs/1412.3409 Move Evaluation in Go Using Deep Convolutional Neural Networks by Maddison , Huang , Silver & Sutskever http://arxiv.org/abs/1412.6564 Tesauro's TD-Gammon…

      deepnetView on HNParent context

Submitted to Hacker News

Connected through shared HN threads, not inferred similarity or a recommendation.