what did alphago do to beat the strongest human go player? (strange group version)

162
March 2016

Upload: tobias-pfeiffer

Post on 07-Jan-2017

125 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

March 2016

Page 2: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Mainstream Media

Page 3: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 4: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

1997

Page 5: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Ing cup 1985 – 2000(up to 1,400,000$)

(1985-2000)

Page 6: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

5d win 1998

Page 7: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

October 2015

Page 8: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

This is the first time that a computer program has defeated a human professional player in the

full-sized game of Go, a featpreviously thought to be at

least a decade away.

Silver, D. et al., 2016. Mastering the game of Go with deep neural networks and tree search. Nature, 529(7587), p.484-489.

January 2016

Page 9: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

November 2015

Page 10: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

What did AlphaGo do to beat the strongest human Go player?

Tobias [email protected]

Page 11: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 12: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Go

Page 13: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Computational Challenge

Page 14: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Monte Carlo Method

Page 15: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Neural Networks

Page 16: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Revolution with Neural Networks

Page 17: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

What did we learn?

Page 18: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Go

Page 19: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 20: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 21: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 22: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 23: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 24: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 25: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 26: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 27: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 28: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 29: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 30: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 31: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 32: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 33: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 34: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 35: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 36: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 37: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 38: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 39: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 40: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 41: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 42: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 43: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 44: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 45: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 46: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 47: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 48: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 49: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 50: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 51: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 52: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 53: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 54: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Computational Challenge

Page 55: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Go vs. Chess

Page 56: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Complex vs. Complicated

Page 57: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

„While the Baroque rules of chess could only have been created by humans, the rules of

go are so elegant, organic, and rigorously logical that if intelligent life forms exist

elsewhere in the universe, they almost certainly play go.“

Edward Lasker (chess grandmaster)

Page 58: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Larger board19x19 vs. 8x8

Page 59: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Almost every move is legal

Page 60: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Average branching factor:250 vs 35

Page 61: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

State Space Complexity:10 171 vs 1047

Page 62: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

1080

Page 63: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Global impact of moves

Page 64: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

68957966354765

685766345

857635

563

6

MAX

MIN

MAX

MIN

MAX

Page 65: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Evaluation function

Page 66: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 67: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Monte Carlo Method

Page 68: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

What is Pi?

Page 69: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

How do you determine Pi?

Page 70: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 71: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

2006

Page 72: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Browne, Cb, and Edward Powley. 2012. A survey of monte carlo tree search methods. Intelligence and AI 4, no. 1: 1-49

Page 73: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

2/4

1/1 0/1 1/1 0/1

A1D5

F13C7

Page 74: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

2/4

1/1 0/1 1/1 0/1

A1D5

F13C7

Selection

Page 75: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

2/4

1/1 0/1 1/1 0/1

A1D5

F13C7

0/0

B5

Expansion

Page 76: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

2/4

1/1 0/1 1/1 0/1

A1D5

F13C7

0/0

B5

Simulation

Page 77: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Random

Page 78: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

3/5

2/2 0/1 1/1 0/1

A1D5

F13C7

1/1

B5

Backpropagation

Page 79: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

3/5

2/2 0/1 1/1 0/1

A1D5

F13C7

1/1

B5

Perspective

Page 80: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

2/5

1/2 0/1 1/1 0/1

A1D5

F13C7

1/1

B5

Perspective

Page 81: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Multi Armed Bandit

Page 82: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Exploitation vs Exploration

Page 83: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

winsvisits

+explorationFactor √ ln (totalVisits)visits

Page 84: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

15042

86/193

0/1 1/2 0/2

36/1116

2/2

58/151

1/2 0/23/3

Page 85: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

15042

86/193

0/1 1/2 0/2

36/1116

2/2

58/151

1/2 0/23/3

Page 86: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

15042

86/193

0/1 1/2 0/2

36/1116

2/2

58/151

1/2 0/23/3

Page 87: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Not Human like?

Page 88: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Aheuristic

Page 89: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Generate a valid random move

Page 90: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Who has won?

Page 91: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 92: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

General Game Playing

Page 93: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Anytime

Page 94: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Lazy

Page 95: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 96: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

AMAF + RAVE

Page 97: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Expert Knowledge

Page 98: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Neural Networks

Page 99: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

2014

Page 100: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

What does this even mean?

Page 101: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Neural Networks

Page 102: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Input “Hidden” Layer Output

Neural Networks

Page 103: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Weights

Page 104: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Bias/Threshold

Page 105: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Sum of Weights >= Threshold

Page 106: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Activation

Page 107: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Training

Page 108: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Adjust parameters

Page 109: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Supervised Learning

InputExpectedOutput

Page 110: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Backpropagation

Page 111: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Data set

Page 112: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Training data + test data

Page 113: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Training

Page 114: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Verify

Page 115: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Overfitting

Page 116: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Deep Neural Networks

Page 117: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Michael A. Nielsen, "Neural Networks and Deep Learning", Determination Press, 2015 http://neuralnetworksanddeeplearning.com

Convolutional Neural Networks

Page 118: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Michael A. Nielsen, "Neural Networks and Deep Learning", Determination Press, 2015 http://neuralnetworksanddeeplearning.com

Local Receptive Field

Page 119: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Michael A. Nielsen, "Neural Networks and Deep Learning", Determination Press, 2015 http://neuralnetworksanddeeplearning.com

Stride

Page 120: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Michael A. Nielsen, "Neural Networks and Deep Learning", Determination Press, 2015 http://neuralnetworksanddeeplearning.com

Shared weights and biases

Page 121: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Michael A. Nielsen, "Neural Networks and Deep Learning", Determination Press, 2015 http://neuralnetworksanddeeplearning.com

Multiple Feature maps/filters

Page 122: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Michael A. Nielsen, "Neural Networks and Deep Learning", Determination Press, 2015 http://neuralnetworksanddeeplearning.com

Pooling

Page 123: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Training on game data predicting the next move

Page 124: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

12 layered DCNN

Page 125: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

64 to 192 feature maps per layer

Page 126: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

2.3 million parameters630 million connections

Page 127: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

● Stone Colour x 3● Liberties x 4● Liberties after move played x 6● Legal Move x 1● Turns since x 5● Capture Size x 7 ● Ladder Move x 1● KGS Rank x 9

Input Features

Page 128: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

55% Accuracy

Page 129: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Mostly beats GnuGo

Page 130: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Combined with MCTS

Page 131: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Selection

Page 132: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Asynchronous GPU Power

Page 133: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Revolution

Page 134: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Silver, D. et al., 2016. Mastering the game of Go with deep neural networks and tree search. Nature, 529(7587), p.484-489.

Networks in Training

Page 135: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Silver, D. et al., 2016. Mastering the game of Go with deep neural networks and tree search. Nature, 529(7587), p.484-489.

AlphaGo Search

Page 136: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

1202 CPUs and 176 GPUs

Page 137: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Tensor PU

Page 138: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Human Instinct Policy NetworkReading Capability SearchPositional Judgement Value Network

3 Strengths of AlphaGo

Page 139: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Human Instinct Policy NetworkReading Capability SearchPositional Judgement Value Network

Most Important Strength

Page 140: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

More Natural

Page 141: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Style

Page 142: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

So when AlphaGo plays a slack looking move,we may regard it as a mistake,

but perhaps it should more accurately be viewedas a declaration of victory?

An Younggil 8p

Page 143: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Game 2

Page 144: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Game 4

Page 145: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)
Page 146: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Game 4

Page 147: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Game 4

Page 148: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

What can we learn?

Page 149: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Making X fastervs

Doing less of X

Page 150: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Modularizing small components

Page 151: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Benchmark everything

Page 152: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Solving problems the human wayvs

Solving problems the computer way

Page 153: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Don't blindly dismiss approaches as infeasible

Page 154: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

One Approach vs

Combination of Approaches

Page 155: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Joy of Creation

Page 156: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

PragTob/Rubykon

Page 157: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

PragTob/web-go

Page 159: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

What did AlphaGo do to beat the strongest human Go player?

Tobias [email protected]

Page 160: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Sources

● Maddison, C.J. et al., 2014. Move Evaluation in Go Using Deep Convolutional Neural Networks.

● Silver, D. et al., 2016. Mastering the game of Go with deep neural networks and tree search. Nature, 529(7587), p.484-489.

● Michael A. Nielsen, "Neural Networks and Deep Learning", Determination Press, 2015 http://neuralnetworksanddeeplearning.com

● Gelly, S. & Silver, D., 2011. Monte-Carlo tree search and rapid action value estimation in computer Go. Artificial Intelligence, 175(11), p.1856-1876.

● I. Althöfer, “On the Laziness of Monte-Carlo Game Tree Search In Non-tight Situations,” Friedrich-Schiller Univ., Jena, Tech. Rep., 2008.

● Browne, C. & Powley, E., 2012. A survey of monte carlo tree search methods. IEEE Transactions on Intelligence and AI in Games, 4(1), p.1-49.

● Gelly, S. & Silver, D., 2007. Combining online and offline knowledge in UCT. Machine Learning, p.273-280.

● https://www.youtube.com/watch?v=LX8Knl0g0LE&index=9&list=WL

Page 161: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Photo Credit● http://www.computer-go.info/events/ing/2000/images/bigcup.jpg

● https://en.wikipedia.org/wiki/File:Kasparov-29.jpg

● http://www.geforce.com/hardware/desktop-gpus/geforce-gtx-titan-black/product-images

● http://giphy.com/gifs/dark-thread-after-lCP95tGSbMmWI

● https://cloudplatform.googleblog.com/2016/05/Google-supercharges-machine-learning-tasks-with-custom-chip.html

● https://gogameguru.com/i/2016/01/Fan-Hui-vs-AlphaGo-550x364.jpg

● CC BY 2.0

– https://en.wikipedia.org/wiki/File:Deep_Blue.jpg

– https://www.flickr.com/photos/luisbg/2094497611/

● CC BY-SA 3.0

– https://en.wikipedia.org/wiki/Alpha%E2%80%93beta_pruning#/media/File:AB_pruning.svg

● CC BY-SA 2.0

– https://flic.kr/p/cPUtny

– https://flic.kr/p/dLSKTQ

– https://www.flickr.com/photos/83633410@N07/7658272558/

Page 162: What did AlphaGo do to beat the strongest human Go player? (Strange Group Version)

Photo Credit● CC BY-NC-ND 2.0

– https://flic.kr/p/q15pzb

– https://flic.kr/p/bHSj7D

– https://flic.kr/p/ixSsfM

– https://www.flickr.com/photos/waxorian/4228645447/

– https://www.flickr.com/photos/pennstatelive/8972110324/

– https://www.flickr.com/photos/dylanstraub/6428496139/

● https://en.wikipedia.org/wiki/Alphabet_Inc.#/media/File:Alphabet_Inc_Logo_2015.svg

● CC BY 3.0

– https://en.wikipedia.org/wiki/File:Pi_30K.gif