← all repositories
maxpumperla/deep_learning_and_the_game_of_go

From random moves to AlphaGo Zero, one pip install away

A Python library that teaches deep reinforcement learning by building Go bots you can actually play against.

1.1k stars Python AgentsLearning
deep_learning_and_the_game_of_go
Velocity · 7d
+0.3
★ / day
Trend
steady
star history

What it does

dlgo is a pip-installable Python framework that walks you from a barely-functional Go bot to implementations of AlphaGo and AlphaGo Zero. It ships with the code samples for the Manning book Deep Learning and the Game of Go, with per-chapter Git branches so you can follow along without copy-pasting. The library covers classical tree search, neural networks for move prediction, policy gradients, actor-critic methods, and the full DeepMind pipeline.

The interesting bit

The authors aren’t pretending you’ll beat Lee Sedol. They started this as an open-source side project called BetaGo, accepting they’d never match DeepMind’s compute budget. That honesty makes the pedagogy work: each chapter adds one technique, and you can play your bot at every stage via deployed demos (5×5 MCTS, 19×19 neural net, 9×9 policy gradient).

Key highlights

  • Installable via pip install dlgo; examples live in the code folder
  • 14 chapters progressing from game rules to AlphaGo Zero
  • Live playable demos at badukai.com for chapters 4, 7, and 9
  • Per-chapter Git branches matching the book’s code samples
  • Appendices cover backprop math, AWS deployment, and submitting to the Online Go Server

Caveats

  • The README has a typo (“bit by biy”) and hasn’t been cleaned up, which hints at maintenance velocity
  • Travis CI badge is present; no word on whether it’s still green or migrated to another CI
  • The framework is explicitly educational, not competitive: “we didn’t have the resources… to compete with DeepMind”

Verdict

Grab this if you want to understand AlphaGo by building it piecemeal, or if you learn best when code is tied to a narrative arc. Skip it if you need a production-strength Go engine or if you’re already comfortable implementing MCTS and policy gradients from scratch.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.