September 9, 2025 • 47 min • Season 3, Episode 9
Guest: David Wu • Additional participants: Paul Barchilon • TelegraphGo
Interview + Commentary • Intermediate to Advanced
Episode Summary
In this episode, Travis speaks with KataGo creator David Wu about how he discovered Go, taught himself programming, and developed one of the game’s most influential AI tools. David explains how KataGo learns through neural networks, search, and self-play. He also discusses the system’s efficiency, its weaknesses, its analysis of smaller board sizes, and its work on the famous Igo Hatsuyoron problem 120. The episode closes with TelegraphGo reflecting on the strange habits and self-consciousness that can arise when moving from online Go to playing in person.
Episode Overview
Travis speaks with David Wu, creator of KataGo, about the intersection of Go, programming, and artificial intelligence. David describes how he learned Go as a teenager, developed as a largely self-taught programmer, and became interested in game-playing algorithms. He explains that his coding style is highly precise and proof-oriented, while his approach to playing Go is much more intuitive and driven by pattern recognition and judgment.
David then gives an accessible overview of how KataGo works. He describes the relationship between neural networks, game-tree search, self-play, and the feedback loop that allows the system to become stronger over time. He also explains why KataGo could achieve major efficiency gains by building on AlphaZero-style methods while adding Go-specific improvements and more targeted training techniques.
The conversation explores several important KataGo research projects. David discusses adversarial positions involving circular groups and two-headed dragons, why neural networks can struggle with rare tactical structures, and why these weaknesses remain an open research problem. He also describes KataGo’s analysis of 7×7, 8×8, and 9×9 Go, the limits of mathematically solving small boards, and the difference between highly accurate play and a rigorous proof.
The interview also covers KataGo’s contribution to the study of Igo Hatsuyoron problem 120, a famously difficult whole-board problem involving an unusual capturing race. David explains how training KataGo specifically on the position helped uncover new moves and how combined human and AI analysis produced results that neither could have reached as effectively alone.
In the final segment, TelegraphGo discusses the awkward and sometimes humorous habits that can surface when an experienced online player begins playing face-to-face. From fidgeting with captured stones to unconscious body language, the conversation highlights how different in-person Go can feel when an opponent can actually see you.
Main Topics
- David Wu
- KataGo
- Go and artificial intelligence
- Self-taught programming
- Neural networks
- Game-tree search
- Self-play training
- KataGo versus AlphaZero
- Go-specific AI improvements
- Whole-board awareness in neural networks
- Adversarial weaknesses in Go AI
- Circular groups and two-headed dragons
- Rare tactical patterns
- Small-board Go
- 7×7, 8×8, and 9×9 analysis
- Solving Go mathematically
- KataGo opening books
- Igo Hatsuyoron problem 120
- Human and AI collaboration
- Distributed computing
- Maintaining open-source Go software
- Online Go versus in-person Go
- Body language and habits during live play
Practical Lesson Takeaways
- KataGo builds on AlphaZero-style methods but improves efficiency through more targeted design and training choices.
- A neural network proposes moves and evaluates positions, while search improves on those initial predictions.
- Self-play creates stronger training data, which then improves the neural network in a continuous feedback loop.
- Go-specific knowledge can make AI training substantially more efficient.
- Whole-board awareness matters because local fights can depend on ko threats, score, and strategic conditions elsewhere.
- Neural networks can fail on rare structures such as circular groups and two-headed dragons.
- Adding more examples helps, but does not fully solve the deeper robustness problem.
- Small-board Go becomes exponentially harder to prove as board size increases.
- Strong play is not the same as a mathematically rigorous solution.
- KataGo’s 9×9 opening book required specialized training because the general model was not reliable enough.
- Human analysis and AI analysis can complement one another.
- KataGo’s work on Igo Hatsuyoron problem 120 showed how specialized training can uncover new lines in a centuries-old problem.
- Coding and Go can rely on very different mental processes.
- Precise logical work does not eliminate the importance of intuition and pattern recognition.
- AI evaluations should not be treated as infallible.
- Rare positions are especially likely to expose weaknesses in a model.
- More computing power does not automatically produce certainty.
- Open-source and distributed communities can meaningfully advance difficult research.
- Moving from online Go to in-person play introduces body language, etiquette, and self-consciousness that do not exist online.
- Habits that feel harmless online can look distracting or strategic across a real board.
Notable Insights
- David describes coding as precise and proof-oriented, while his own Go play depends much more on intuition, pattern recognition, and judgment.
- KataGo’s strength comes from combining a neural network with search rather than relying on the neural network alone.
- DeepMind’s deliberately simple AlphaZero design left room for later systems to make major efficiency gains through more specialized improvements.
- Whole-board awareness is important because local decisions may depend on distant ko threats, the overall score, or whether aggressive play is strategically necessary.
- KataGo’s weakness with cyclic groups illustrates a broader AI problem: models may perform exceptionally well overall while still failing on rare, unfamiliar structures.
- Adding targeted training data can reduce known weaknesses without fully solving the underlying problem of conceptual generalization.
- A bot may play optimally most of the time on a small board without being able to produce a mathematical proof that the game is solved.
- Specialized training allowed KataGo to contribute meaningfully to a centuries-old problem that ordinary Go models evaluated poorly.
- The work on Igo Hatsuyoron problem 120 is a strong example of human and AI collaboration, with each side helping expose weaknesses and refine the other’s analysis.
- TelegraphGo’s segment shows that in-person play includes a social layer absent online, including posture, fidgeting, visibility of captured stones, and concern about how one’s behavior is interpreted.
Recommended Audience
- Go players interested in AI
- KataGo users
- Programmers and machine-learning enthusiasts
- Players interested in small-board Go
- Tsumego and problem-solving enthusiasts
- Online players beginning to play in person
- Go teachers and content creators
Links & Resources
- David Wu’s article on the beginnings of KataGo
- KataGo Training
- AlphaZero
- Igo Hatsuyoron
- David Wu’s article on Igo Hatsuyoron problem 120
- KataGo opening books
- Music credits: Theme music by UNIVERSFIELD and background music by PodcastAC on Freesound.
Full Transcript
This transcript has been lightly edited for clarity. Timestamps correspond to the published episode.
Read the full transcript
Paul Barchilon: Hi, my name is Paul Barchilon. I learned to play Go initially when I was 16 from a friend of mine who was older. He was the only person I knew who played Go.
Paul Barchilon: I already played chess,
Paul Barchilon: and he introduced me to the game. And I was mystified that even though I understood strategy and could play games fairly well, that this game was just, you know, it was crazy.
Paul Barchilon: And he, you know, would completely crush me. He gave me a handicap, but it took me a full year to beat him at the handicap and move to an even game.
Paul Barchilon: So that was kind of my introduction. Unfortunately, right around the time that I beat him, he moved away.
Paul Barchilon: So then I didn’t have anyone to play with. And I tried to teach various friends and I taught a couple, but nobody was really into it. So I kind of didn’t have a community to play with for about 18 years.
Paul Barchilon: And then when I started playing Go again in 2001,
Paul Barchilon: it was like I’d been holding my breath for 18 years. It was just kind of astonishing to me, and I’ve been super into it since then. And I’ve been running the Boulder kids and teens Go club at the public library for 21 years now.
Paul Barchilon: And we get 30 to 50, 50 people every week. So, you know, we have a very active scene now, and it’s great.
Interview: David Wu, Creator of KataGo
Travis: This next guest is the creator of KataGo.
Travis: It took a little bit of time before we were able to connect, but he hung in with me. We found a time that worked, and I was so grateful that we did have the conversation because hearing from somebody who really had such a big effect on the Go world with the development of a really useful AI tool specifically
David Wu: for go, I was able to ask
Travis: him a whole bunch of questions, and I hope you enjoy it. So let’s go ahead and jump into my conversation with David Wu.
Travis: How were you originally introduced to Go? What was the context? And, like, what aspect kept you coming back to the game?
David Wu: I honestly don’t remember that. Well, when I was introduced to Go, it’s sometime in, like, middle school, high school. Ish. Somewhere around there. That’s so long ago. I feel like it was kind of gradual.
David Wu: Like, I knew about the game and, like, I maybe, like, picked up a book about it or something. And then at some point I went to the ice.
David Wu: I think I was back in Texas then. I have a vague memory of, like, going to the Austin Go Club and playing against someone while being around, like, 10 kyu or something.
David Wu: And I have a vague memory of the game where, as a beginner, where you do a Pushing fight that goes pretty much across the entire board and neither player gives in.
David Wu: It just goes in a diagonal line across the whole board. Yes. And then you start cutting each other and it all falls apart.
David Wu: But yeah, no, I don’t, I don’t have that much memory. I started playing around then I continued playing on and off into college.
David Wu: Around middle and high school is also when I started to, you know, get into computer programming and coding and stuff as well. And so, you know, kind of hand in hand a little bit.
Travis: So when you started doing that coding and working with algorithms, were games such as Go, was that a natural place for you to sort of explore your interest in artificial intelligence?
David Wu: I experimented a lot of different stuff. I’ve been fairly self taught as far as it comes to coding.
David Wu: So my dad introduced me to programming when I was pretty young and I didn’t really do much with it, but I knew about it. I did some basic stuff. And then I kind of discovered that just through that background knowledge and just being exposed to computers and doing stuff that by the time I got around to taking like a CS course in high school,
David Wu: I kind of knew everything they were teaching in that first semester and the teacher would sort of just let me kind of do my own thing, self guided stuff for that time.
David Wu: And I discovered by the time the next semester and the next course had rolled around, you know, the next year or whatever, I kind of knew I had by then taught myself everything just, you know, in time on the previous year that I kind of knew everything in that year.
David Wu: And so I’ve been continued to sort of just proceed that way with, you know, writing different programs, doing things like I wrote like a fluid simulation stuff, various like random things.
David Wu: And one of the things that drew me in fairly early on was working on AI like working on bots to play games and things like that. Because the algorithms I think are very interesting.
David Wu: I mostly stuck to kind of niche games. Like I did not touch Go at all pretty much. I mostly stuck to kind of niche games and things like that. There’s a game called Slime wars or Attacks that I wrote a simple bot for.
David Wu: Various things like that I felt like I kind of wanted to just explore with kind of interesting things. I didn’t see other people doing that much. So like I stayed far away from writing a chess bot and there was a lot of work put into computer Go even back then.
David Wu: Right. Like different people doing things. So I stayed away from that as well.
Travis: What’s the reasoning behind that is because there’s just so much Work done on the chess side of things or.
David Wu: Yeah, like, I kind of didn’t want to just write the, like, you know, the N plus first, like chess.
Travis: Got it.
David Wu: So,
David Wu: like, I wanted to do something that I hadn’t seen, you know, even if it wasn’t very good, like, I still wanted to kind of do something that was a little interesting and unique.
Travis: And then at least as recently as a few years ago, you were a dan level Go player.
Travis: How do you feel your skills as a researcher and coder lend themselves to excelling at playing the game?
David Wu: I kind of almost think they don’t.
David Wu: It’s a very different skill set,
David Wu: I think even more than most people. When I code, when I like, write, when I write code, when I work on stuff that I do for my job or algorithms or things like that,
David Wu: often I approach it almost like I’m writing a proof,
David Wu: like I’m proving to myself the code works at the same time as I write it.
David Wu: I don’t know if you know how much you know about like computer programming, things like that, but you have to be very precise, right? You’re like, you know, you’re writing code to like loop over this array and process this data in this way and things like that.
David Wu: And there are lots of preconditions and things like that where like, you know, sometimes you want to loop over something and you need to assert that it’s non empty. And so you need to handle a case where you know the list of things is empty or you need to handle something before you divide by zero,
David Wu: you need to check if it’s zero.
David Wu: So like, there’s lots of triggers. You’re always tracking, like, what’s true about the state of the like code, the state of the algorithm and like writing code. That depends on that.
David Wu: So there’s a lot of mental bookkeeping and doing all of that. And the way I approach go or various other things is much more intuitive.
David Wu: It’s very much like snap. Pattern recognition is really the driver, right? You recognize different shapes and things like that, and there’s a layer of like reading you do on top.
David Wu: But really it comes down to that very fuzzy judgment call stuff that’s.
David Wu: I feel like exercise is a different part of the brain. And I also get a lot of that, and I enjoy getting a lot of that sometimes playing board games or I’m into video games.
David Wu: If you heard of Slay the Spire or a lot of things like that, Just random popular games nowadays that have a strategic element where you’re again, making fuzzy judgment calls and it’s completely impossible to read out all the consequences.
David Wu: But you have a bunch of experience and you’re kind of making those fine judgment calls about what’s the best thing to do here.
David Wu: And that’s similar to the case for Google.
David Wu: I enjoy that kind of intuitive aspect as well. I think you get a little bit less of when you’re doing like in the weeds, like, you know, hooking up components and making the system connect to that system and stuff like that.
David Wu: And when you, when you get into the weeds of certain kinds of coding,
Travis: I’m actually surprised at a nice way to hear you give that response because I thought, okay, you know, this is the author of KataGo. I would think you would say, well, yes, Travis, everything is, you know, I’m calculating and trying to figure out every variation in line.
Travis: But I appreciate that you’re saying, hey, there’s also this very intuitive aspect to it.
Travis: Moving on a little bit, let’s talk about KataGo.
Travis: Could you just give us like a high level overview of how KataGo works using training data,
Travis: neural networks, and how it’s actually become this incredibly powerful tool for improving at Go and for reviewing optimal moves?
David Wu: Yeah, sure. So it works probably quite the same way you’ve heard explained a few different times if you’ve like ever watched like the AlphaGo documentary or other kind of things like that.
David Wu: So basically it’s using pretty much the same technology KataGo is based off of and extends off of the technology developed by DeepMind, like AlphaZero and a lot of, and some of the other ideas in other papers coming from other places around the time, like expert iteration, things like that.
David Wu: So it’s basically driven by a neural net where the neural net is,
David Wu: you know, this big black box that you’ve trained in a certain way. It takes an input, it produces output. No one exactly entirely understands what it’s doing inside,
David Wu: but it sees the board position and it’s trained to predict two things. One is the plausible best next moves, its best guesses of what the next best moves are going to be and how likely it is to win from the current board position.
David Wu: Given those two things,
David Wu: you can then play a game. And in particular,
David Wu: one of the key components in this is given those two things,
David Wu: you can write an algorithm on top that plays a game better than the neural net would be able to by itself.
David Wu: In particular, you perform reading on top. So the neural net gives you the best guess of its moves, of the next best moves, and you actually play those moves out on the board and you get a Bunch of new possible follow up positions, depending on which move you pick.
David Wu: And then you ask the neural net, how good are these positions, how likely are you to win from these positions?
David Wu: And it gives you also what are the next best moves from here, or for the opponent, what are the next best moves from here? And you know, build out the game tree in this way and you analyze,
David Wu: basically you do reading, you write the algorithm and you do reading, you figure out how likely if I follow all of these moves, does it actually lead to a position that looks like it’s winning or does it get worse?
David Wu: Was the neural net, you know, misjudging things?
David Wu: And you end up with a better prediction of what the best moves are and a better guess for who’s going to win.
David Wu: After you do all of this analysis, building out the game tree, trying out all the possible moves,
David Wu: and then you play a whole bunch of games against yourself or in every position you do this analysis,
David Wu: you have a search algorithm running on top of the neural net that does analysis. And then now that you’re playing out this game in this way that’s stronger than the neural net itself could play by itself, you have all of this data of how an even stronger player would play.
David Wu: You train the neural net to predict that data.
David Wu: And so the neural net is now learning. You have this player that’s better than the neural net because it’s doing all this reading on top. And now the neural net is trained to predict what would this better player that is actually doing a whole bunch more reading, or what would it choose as its moves and how likely does it think it’s going to win,
David Wu: to simplify a little bit. And so the neural net improves over time because it’s training from the stronger player and because the stronger player is based on a search algorithm built on top of the neural net.
David Wu: It’s the neural net plus reading. It continuously improves because the neural net underneath it is improving.
David Wu: And so you get this feedback loop that makes the bot stronger and stronger.
Travis: You mentioned AlphaGo and you mentioned DeepMind,
Travis: and you did say in an interview you did some years ago that you were slightly inspired, or at least there was some inspiration from AlphaGo, but you had been doing other work and you started with this project for KataGo in 2017.
Travis: But my understanding is that you did something that was a bit unique from AlphaGo. I mean, if I think about DeepMind, my understanding is that they had millions and millions and millions of dollars of funding and resources to build this system.
Travis: And you were able to do this or train an AI system much more efficiently and with much less resources. So can you just help us understand how that would work?
David Wu: So I guess it ties back into the reason why I chose that point as a point. I thought I was interested in getting into learning how these systems worked, getting into machine learning, and I thought it would be interesting to get into Go.
David Wu: Basically when DeepMind were doing the original research and developing AlphaGo or AlphaZero,
David Wu: they made it a point specifically not to try any sort of game specific improvements,
David Wu: not to try any more complex algorithms to keep things as vanilla as possible.
David Wu: And they did that to essentially to show that like we have this new system, it’s very effective at learning. It’s so effective that even if you do nothing on top, you know, it beats all the prior systems.
David Wu: And for a time people thought, you know, okay, well maybe it’s actually good to do nothing on top. But I think that turns out not to be true. It’s specifically because they kept it so vanilla that, that then once you start adding a little bit more complexity, once you start doing things in a little bit more of a clever way that,
David Wu: you know, no doubt the developers at DeepMind knew that they could optimize things in this or that way. But specifically to try to keep the research as simple and understandable and clean, to analyze as possible, they chose not to do those things.
David Wu: And so I feel like after AlphaZero the door is wide open. There’s all this low hanging fruit that specifically avoided being picked. Let’s add on the low hanging fruit.
David Wu: There’s a lot of kind of enthusiasts over at like Leela Chess 0 that discovered the same thing, right? There’s like all immediately after AlphaZero there’s like all this really low hanging fruit, a lot of easy improvements and things like that.
David Wu: And so it’s a nice time to come in and start doing experiments. It’s very fun.
David Wu: Typically in research you try a new idea and it’s like, you know, it has a 10% chance of working and a 90% chance of just being a total failure.
David Wu: And here’s flipped around the other way, right? Like most of the time you try an idea and it works because the, there’s just so, so much easy stuff to do.
David Wu: And so that’s kind of why I decided to get into it. And I think that’s why KataGo was able to get a pretty large efficiency gain. It’s just because once you start wanting to take into account, okay, you’re optimizing a little bit towards the fact that you’re Playing go,
David Wu: thinking of kind of basic improvements you can do to the neural net and the algorithm to make the training more efficient. There’s a lot of easy wins.
Travis: And isn’t that in part because you are a Go player and you’re a dan level player and so you know what, what’s happening in the context to make it more optimized?
David Wu: Some of it, but a little bit of it is having some intuition for exactly what kinds of things are effective for go.
David Wu: So like an example of that is the original AlphaZero architecture for the neural net didn’t have any component in it that could sort of see the whole board at once.
David Wu: Every layer was a so called convolutional layer which basically only processes the entire layer, process the entire board,
David Wu: but it does so in a very local way where like the values at a subsequent layer only depend on the values in the previous layer for nearby board spots.
Travis: Interesting.
David Wu: And so it takes many, many layers for kind of the bot to kind of perceive the board, for information to make it across the board and back.
David Wu: And so one of the simplest ideas is, you know, you think about as you understand Go and you think, well, it’s useful to be able to see the whole board because like what if there’s a ko in the opposite corner and you need to find ko threats all the way across the board,
David Wu: or what if you want to tell who’s ahead or behind so you can adapt your play a little bit to be more aggressive versus more conservative and things like that.
David Wu: It’s useful that you’ll see the whole board when making a decision in any local fight.
David Wu: And so one of the simplest things I tried and a lot of subsequent papers and things like that, also a lot of research had the same idea, is let’s add some simple mechanisms to the neural net itself to allow it within a single layer to perceive the entire board,
David Wu: aggregate or some information across the board.
David Wu: And does that make things better? And not surprisingly, the answer is yes, the neural net’s a lot better. When you add a layer like that nowadays where people have moved on to sort of more interesting architectures, LLMs and things like that use what’s called the transformer architecture.
David Wu: There are various other architecture that sort of don’t have some of the same limitations that convolutional architectures do. They are also able to kind of perceive the entire board. They’re also able to do other things.
Travis: And you’re referring to language models, correct?
David Wu: Yeah, language models, but also like vision models, things like that. So there have been A lot of advancements in the years since then. But like early on, this is just after AlphaZero,
David Wu: because AlphaZero is kept fairly vanilla. It didn’t have all of these different things. And so you want to try out these different things, you find improvements. Some of the things I tried were also not really Go specific.
David Wu: They were just general improvements to training.
David Wu: So, for example,
David Wu: one of the ways that AlphaZero is bottlenecked, if you just try it with sort of vanilla settings on Go, is that you get a lot more information about what moves are good or bad than you do about who’s winning or not.
David Wu: And the reason is because across the course of a game, you get a ton of feedback. Like, you know, you make a move and you see whether it leads to a group living or dying.
David Wu: You get a lot of feedback about, like, whether your tactics are working or not.
David Wu: But you only get one point of feedback about who ultimately wins the game, because a whole game has a winner or a loser.
David Wu: And so the part of the neural net devoted to trying to predict who’s going to win,
David Wu: that part of the neural net learns relatively slowly and is very noisy. Right? It’s hard to tell if playing a particular shape is slightly better or worse because you have to see how it actually affects the outcome of the game to really know.
David Wu: And it learns a lot more slowly than the part that learns to break moves. And so there are things you can do with the training setup that try to balance that out, that make it faster to play games slightly at the cost of like, you sample fewer turns in the game to generate training data for moves,
David Wu: but you can play more games overall in the same compute power. And so you’re trading off one part of the neural net. You make the part of the neural net that learns too slowly, you give it a bit more data, give less data on the other part, you rebalance your compute that way and you get a more effective learning process.
David Wu: And so that’s not that much intuition about Go, but it’s sort of just observing the actual numerics and what’s going on in the training data.
Travis: So as we were connecting and I was sort of researching you and KataGo, I needed to take my son, I have a five year old son, to his karate class and I was sitting in the back watching him do karate.
Travis: And they’re wrapping up the lesson and they’re saying, okay guys, everybody like make sure you, you know, you practice your kata and do these things. And I’m looking down at the name of KataGo and all These things.
Travis: I’m like, wait a second.
Travis: So can you just give us a very quick review of how you came to name KataGo?
David Wu: Honestly, there wasn’t that much thought into it. It is basically what you mentioned. So as I understand things and, you know, my knowledge isn’t that great, but the word kata, it’s a fairly uncommon word in English that is a loan word from Japanese that sort of means like, it refers to the martial arts form.
David Wu: Like people will practice almost like a dance like set of moves where they’re just by themselves. They don’t have any opponent or anything.
David Wu: They’re demonstrating various holds or punches or kicks and things like that as they move around.
David Wu: The purpose of that is to sort of practice the quality of one’s form, to do all the movements in the right way such that you can kind of improve over time.
David Wu: And when I think about what the Go bot is doing right when it’s learning via self play, it doesn’t have an opponent other than itself. It’s sort of just on its own exploring the game and trying to get better.
David Wu: It’s kind of reminded me of that. And so I named KataGo as a reference to that, where it’s learning and polishing its own, like, sense of shape and its own sense of like, you know, what moves are good or bad, how to play just on its own.
Travis: Let’s dive in a little bit to KataGo and just some of the things that it’s done because you and many others have done a lot of work on updating and improving and changing KataGo.
Travis: There were sort of two or three big ones that I think rose to the surface in some of our email communication and just in research of the work that you’ve done and others.
Travis: So there were three in particular.
Travis: One was the interesting sort of adversarial and circular situation that was sort of found with KataGo. And. And the second one tried to understand if smaller board sizes could be solved.
Travis: 7×7 board, 8×8, 9×9.
Travis: And then the final one is the classic Go problem that was seen as impossible to solve. And so I’m going to start to shut up because I really want you to tell the story a little bit.
Travis: Perhaps we start with the adversarial and the sort of circular situation.
David Wu: Sure. So,
David Wu: so basically there was some work done by a research group. They did some really interesting kind of analysis and training where they discovered that KataGo and other bots,
David Wu: pretty much every bot that people were able to test has a weakness where it misjudges groups that sort of wrap back them to themselves in a loop.
David Wu: The group that’s being surrounded is actually also is either alive or is not necessarily alive. But it has enough of eye space, enough liberties that it can win a capturing race against the surrounding group.
David Wu: People aren’t sure entirely why neural nets tend by default to have this kind of misjudgment.
David Wu: Recent experiments since then have shown that it’s possible, at least in like, you know, the bulk majority of cases to train a neural net to sort of to misjudge these positions less.
David Wu: But even then it still has flaws where it kind of misjudges these kinds of circular groups. And I have some guesses about why that is. It gets fairly technical.
Travis: Was one reason is just training data. There just weren’t many games where that was happening. Or is it much more complicated than that?
David Wu: It is partly training data and partly the fact that in go, groups that wrap around them to themselves in a loop are just different.
David Wu: So there’s a heuristic that usually works where you can tell that if an I is true or false, which is that an eye is false if the opponent controls at least two out of four of the corner points around the eye.
David Wu: And an eye is a real eye if you control at least three out of four of the corner points if the opponent controls fewer than two. And this heuristic breaks down for a group in a loop because it’s not a perfect rule.
David Wu: And so there’s this shape called the two headed dragon where it looks like the group has two false eyes, but actually they serve function as realized and the group survives.
David Wu: I’ve seen humans get tricked at first. It’s like why would I play that move? Isn’t that a false eye? Or shouldn’t this group be dead? You sometimes you see a question on it on a Reddit or forums or something like that.
David Wu: And so it’s a little unintuitive even for humans. But the thing is humans can pick that up and understand pretty quickly why it actually is alive. Whereas neural nets don’t seem to be quite as adaptable in that particular way.
David Wu: They’re sort of more restricted. They can’t sort of adapt and learn a new concept sort of on the fly. They’re sort of more limited to what’s in their training data and these kinds of cyclic groups and two headed dragons and things like that.
David Wu: While they’re probably not non existent in the training data, they are very, very rare. And so there are going to be situations where the neural net hasn’t fit well and so you have the situation where groups in a number of ways just sort of behave a little bit differently than you might expect.
David Wu: Certain kinds of heuristics that might have worked for groups that don’t have these cyclic shapes will now break down.
David Wu: And so the neural net extrapolates to them and it extrapolates incorrectly just because it doesn’t have that much data.
Travis: And where are things nowadays? I mean, it’s been. I think that was a year or two ago that that research project came out. Are things a bit improved? I know you’ve sent some updates about KataGo.
Travis: Has it been fed more training data to start to ameliorate the situation or.
David Wu: I think for a fundamental research perspective, the issue is unsolved in the sense that no one really knows how to get the neural nets to be robust to this.
David Wu: So what does work partially is you can try to painstakingly, by hand, and by generating data and by various means try to get more positions like this with cyclic groups and stuff in the training data.
David Wu: And that mostly works okay.
David Wu: The vast majority of the positions in which it was failing before, it now evaluates correctly because now it has a bunch of training data that reinforces the corrective data evaluation on those positions.
David Wu: But there’s still so many different corner cases. If you think about. Just forget about the cyclic groups, just think about capturing races and go.
David Wu: You have groups with very different numbers of liberties. You have groups with shared liberties versus outside liberties. You have approach liberties. You have small eyes and big eyes and heuristics like big I beat small I that sometimes aren’t perfect.
David Wu: You have big eyes, account for different numbers of liberties.
David Wu: You can also have cos involved between the groups and every different combinatoric, different permutation of those. You can have more than two groups fighting against each other. You can have three or four groups in every different permutation, right?
David Wu: So there’s all these different situations.
David Wu: And so it’s a combinatoric explosion.
David Wu: And even if you try to generate a lot of training data for cyclic groups, you can get them to handle like most cases well,
David Wu: but there’s going to still be some combinatoric case where in just the right situation, when this is present and this is present and this is present and the cycle is large enough to.
David Wu: But the neural net has trouble perceiving it. And is there still a problem?
David Wu: I think from a fundamental perspective, people don’t really know how to get the neural nets at least yet to be robust to it and kind of learn in a way that really gets the concept like human players can, where human players need fewer examples to really understand what is the actual key concept here.
David Wu: And neural nets, I think more do it just by brute force of having enough training data to see enough of the permutations that they’re mostly good. But you know, you have all this data needle and haystack weaknesses.
Travis: Maybe we can shift to the next topic or another project that it looks like either you started or others worked with you on. I know there was a lot of,
Travis: a lot of collaborating, so I don’t want to minimize that in any way.
Travis: Is the KataGo opening books?
Travis: So you have in here sort of 7×7 grids, 8×8 and 9×9. And it seemed to me that there was some work around trying to understand can any of these smaller board sizes be quote unquote solved by an AI system,
Travis: But also understanding things like what is the optimal commie or compensation that should be provided and those sorts of things. So could you give us a little bit of a high level, what is that project and what was found?
David Wu: There are a number of people that have been curious like about, you know, going even going way back before, like neural nets and stuff, just curious about what is optimal play on small boards.
David Wu: The largest size that has been fully, rigorously solved, you know, sort of just proven, I believe is five by five. It might be five by six.
David Wu: Even on that small board.
David Wu: Some lines were found normal play on five by five, you open in the center. Black owns a whole board. But for some suboptimal openings, if you deliberately make black’s first move, or maybe first and third move suboptimal, and then ask what’s optimal from that point onward.
David Wu: There are some lines in there that are actually fairly unintuitive. And I think people didn’t realize until the solver came along and determined them.
David Wu: And so a decent time ago, like a couple years back now or something like that, a few years back,
David Wu: I was interested in like, okay, what happens if we throw KataGo at the small boards?
Travis: Yes, this looks like 2020 is what you referenced on KataGoBooks.org Cool.
David Wu: Yeah. Yeah. I had it analyze a whole bunch on 7×7 and a whole bunch on 8 x 8. I just through like at least a couple months of compute with the GPUs at the time, just like non stop, just expanding the board, analyzing all the lines.
David Wu: One of the interesting things is on seven by seven.
David Wu: So there have been a lot of human attempts specifically on seven by seven to solve the board and figure out Optimal solutions even going dating back to like the 1990s and things like that, people have tried to solve seven by seven.
David Wu: And one of the interesting things is I did find a lot of confirmation of a lot of the human lines. But also KataGo found a couple of spots where black,
David Wu: I believe, yeah, it’s black in Japanese rules, can do better than people thought was possible. There’s a particular key move that is fairly surprising if you haven’t seen it. Several moves into one of the lines where black can end up doing one point better.
David Wu: There’s also a number of sidelines where, you know, KataGo is find some very surprising moves that seem to hold up under analysis that they’re not critical for the results. But in this or that variation, you can do one point better or two points better.
Travis: Very cool.
David Wu: And so I thought it was cool just as a kind of intellectual curiosity just to try throwing KataGo at these small boards and seeing what it produces. And so I ran it for a few months and I posted the results online.
David Wu: I tried again after that for 9×9 because 9×9 is a size people actually play. And 9×9 is complicated enough that you’re not going to get a solution of the game.
David Wu: Not even close. Even for 7×7, the solution isn’t like a rigorously proved solution. It is just a very strong bots probably mostly accurate guess of what the optimal play is.
David Wu: But it’s not mathematically proven.
Travis: What would it take for it to be proven out? I mean, is it more resources? Is it somebody just have taking all
David Wu: their time,
David Wu: you have to throw the compute at it. And I think for seven by seven, actually getting to the level of like a mathematically rigorous proof is probably beyond current abilities.
David Wu: The compute in the world does not exist to do it.
Travis: Wow.
David Wu: Like 6×6 even is not rigorously proven. 5×5 is rigorously proven. It has been done. And it was quite a number of decades ago, at least, at least a couple decades ago or something like that.
David Wu: But the complexity of actually rigorously proving it goes up exponentially with the board size. So 9×9, the only thing you can hope for is like a reasonable opening book, a reasonable guide to the probably good opening lines.
David Wu: I tried throwing KataGo at 9×9 and it wasn’t good enough.
Travis: Interesting.
David Wu: Not to the level I wanted. Where it would keep changing its mind on different lines and discover refutations to its own play. And you could throw up questionable evaluations that if you then explored them yourself in a bot interactively with KataGo or other bots running, you’d find mistakes.
David Wu: And so I ended up spending a few months training a specific neural net for 9×9, taking one of KataGo’s latest neural nets at the time and then just fine tuning it for another few months,
David Wu: specifically only playing 9×9 and with a lot more variety of positions, including all the positions it was misevaluating before.
David Wu: And then I used that neural net to build what is the current 9×9 opening book. And it was a lot better after that training.
David Wu: There are still a lot of lines where it has questionable evaluations. If you browse the 9×9 book, you can see it’s very easy to get into side variations where the win rate is like 70%.
David Wu: Oh, my gosh. That tells you how far it’s from being solved. Right? If it had solved the position, it would either be, you know, 50% exactly because it’s a draw, or 100% or 0% because it proves one side wins or loses.
David Wu: But it’s 70%. Right. It’s clearly unsure.
Travis: Do you think in some ways, it might very indirectly confirm some more similarities to chess? Only in the sense that there’s a more similar size of board.
Travis: And I know in chess, they’re very, very focused on openings and sort of memorizing openings.
Travis: Am I connecting completely disparate dots, or is there anything to say? Hey, Travis, we did find some openings that were sort of confirmed in 9×9, but even in the openings, it gets quite hairy, for lack of a better term.
David Wu: You can’t say anything for sure on 9×9, but my guess is that top bots, if you throw practically achievable amounts of compute, like, you have a really strong GPU, you run them on 9×9 with neural nets that are trained on 9×9, and you, you know, you do, like, millions of playouts per move.
David Wu: I would guess that the top bots typically play games that are, in fact, optimal most of the time. I would guess they would will, in fact, play a game that does not actually contain.
David Wu: Like, if, you know, God, were to look at the game later and,
David Wu: you know, were there actually any mistakes for real, the answer would probably be zero most of the time.
David Wu: But that’s a far cry from saying we can prove it. Right. That’s a very, very different thing to say that you can actually be completely sure.
Travis: Got it.
David Wu: And just to clarify that, the reason why that’s the case, even though, just as I mentioned before,
David Wu: so many of the lines the bots are unsure about, is because when bots are Given the choice to play moves, they’re going to play the ones they are the most sure about.
David Wu: And so you can probably get to positions where even a human pro is unsure about the analysis. If you have multiple beginner moves and playing out the position in a very unusual, weird way that, like,
David Wu: you can get to positions that are very complicated and that wouldn’t have actually occurred under, like, professional play and that are hard to judge. The same is true on 9×9.
David Wu: The bots, when sticking to positions they are sure about, can play moves that are probably correct most of the time, but they haven’t solved the position. And there are tons and tons of other lines for moves they haven’t chosen that they are very unsure about.
Travis: Okay, great. Thank you for that.
Travis: So my understanding is that there is this problem collection. It’s called the Igo HatsuyÅron,
Travis: which was a book of Go problems, or tsumego. And they came from one of the leaders of one of the Go schools back in the heyday of Japanese Go in the early 1700s.
Travis: And there is a problem in there of the 183 problems, and it’s number 120.
Travis: And there have been people through hundreds and hundreds of years trying to solve the problem, because the answers were either only known by a few people and the record of it, I think, was lost in a fire or something to that degree.
Travis: So can you just give us a little bit of a backdrop and what happened when you brought KataGo into the equation?
David Wu: Yeah, so this is a very famous problem. It is a whole board problem that features an extremely unusual capturing race position.
David Wu: That one of the big components of this capturing race position was called a hanezeki, where one of the sides has a gigantic string of stones, like more than a dozen stones in atari.
David Wu: And those stones are also cutting stones. And yet the other side cannot capture them because that would, for tactical reasons, cause this, you know, capturing race to collapse in an unfavorable way.
David Wu: Nonetheless, both sides have to play it out. Various fights happen, you get these enormously complicated variations, and eventually one side or the other maybe can be forced to capture,
David Wu: but only at the right time and so on.
David Wu: There’s been a lot of professional analysis, both amateur and professional analysis directed this problem. New moves discovered over the many, many years.
David Wu: This was also something when I was working on KataGo, like, you know, you browse various other, like go trivia and miscellaneous, and I noticed there’s this unsolved thing. I wonder what happens if we try training on this.
David Wu: So cool.
David Wu: Yeah, I hadn’t Heard of anyone else trying this, so I was very curious what would happen.
David Wu: And so just like you can throw AlphaZero at like, you know, train a bot to play from the empty Go board and it learns to play Go very well. What happens if you train it from this position and get it to specifically learn how to like the entire game is start from this board position play as well as you can.
David Wu: And so this is necessary because if you try to throw a Go bot that is only trained for normal Go at this Go board problem,
David Wu: it’s completely hopeless. The hanezeki kind of situation is so rare in normal play that it gets completely mis evaluated.
David Wu: Especially when you have like, you know, this huge group in atari that you can’t capture normally. You should be able to capture such a group and the huge capturing race and so on.
David Wu: Is it just very difficult to evaluate.
David Wu: So I tried training a bot on this position. I trained for about one week initially,
David Wu: and in that week I kind of was looking at how it was doing over the course of training and like around like halfway through training, it started playing some interesting new moves that I had not seen before in other analyses of this problem.
David Wu: Mostly it follows the human and analyzed, but there’s a few key deviations.
David Wu: And so I posted about them and posted tentative findings.
David Wu: And I think things have sort of gone on from there.
David Wu: I did that initial training, but really it has been the work of a few dedicated other researchers and volunteers and things like that who have really pushed this forward and spent like months and months more of training how to go on this problem and also throwing a lot of human effort into analyzing what’s actually going on and trying to understand and new results.
David Wu: And so there’s this website, if you search for Igo HatsuyÅron 120, you’ll find this website very easily where one particular dedicated enthusiast who I’ve spoken with and conferred with to help them sort of run KataGo and analyze things and has really established out all of the new analysis and kind of figured out what’s going on.
David Wu: So the current state of the problem is fairly different than what it was in terms of like who wins and by how much is fairly different than what it was as of like five, 10 years ago.
Travis: That’s cool. And I think you’re referring to Thomas Redecker, if I’m pronouncing that correctly. And so you actually ended up training KataGo on it. And as of sort of February of 2022,
Travis: it sounds like you guys potentially solved it.
David Wu: I haven’t kept up to date on.
Travis: Okay.
David Wu: It is. It is really their work. The most of the part, the training I did was that initial one week and then the initial results got it. And I think there have been several optimizations and refinements and the discovery of, you know, further new variations since then.
Travis: I see. So, yeah. So the question really is whether Thomas, you know, updated since the 2022 posting he has on the main part of the website. But at least as of that date, it looks like they had said that they used KataGo on it for a total of 11 months and that the problem they thought was potentially solved.
Travis: And the main variation was 205 moves and finishes with a score of white ahead by one point, assuming white begins the game and there’s no prisoner.
David Wu: Initially I think there have been actually smaller side results for side variations and updates and things like that even since then. I think of as recently as 2025. Actually just this year, I think.
David Wu: But it would not surprise me that the latest change of the main result for the problem as a whole is 2022.
Travis: And it is funny that even as of the 2022 information that is on Thomas’s website, he mentions that despite using KataGo for seven more months, after the first initial four months of training,
Travis: the best line to play remained unchanged, at least at that time. And so KataGo kind of consolidated, you know, the view. And so in some ways it sounds like it served as a way to confirm what humans thought were great and then also found something that was unique and interesting and novel.
David Wu: Yeah. After the discovery of the initial new moves, human analysis actually was able to take things a little bit further with KataGo assistants to try to poke holes in those things.
David Wu: And it’s an interesting case where for at least this brief interval, combined human plus AI analysis has been a little bit better than either one alone.
Travis: Very interesting. Lightning round. David, do you still play Go for fun? And if so, what is your preferred way to play and time format?
David Wu: Not so much. I haven’t played seriously for a long time,
David Wu: mostly maintain KataGo these days and have moved on to other things. But I might be up for a game occasionally with a friend or something. But like, yeah, not really.
Travis: If you do play or when you used to play, what was the time setting that you typically liked or used? Do you remember?
David Wu: I mostly relatively slow games. I get a lot worse at blitz more than other people. Like,
David Wu: like everyone gets worse when they play blitz. But like, I think me more than most. Like, I really rely on having time to like really consolidate my feeling about A position and read out some possibilities and figure things out.
Travis: How much time does it take to maintain KataGo on a regular basis?
David Wu: It’s really variable,
David Wu: so most weeks probably averages like an hour too among those weeks.
David Wu: But there are times when I’m working on a new feature or something, it could be five or 10 hours.
David Wu: And in the really, really busy period where like I was really getting KataGo set up and the kind of initial development stuff, there was bursts where of a few weeks where it was like 30 or 40 hours in a week in addition to actually working a full time job.
Travis: Whoa.
Travis: Yeah, that’s serious. So okay, that doesn’t happen all the time, but it can happen.
Travis: Next question.
Travis: What do you think? If you were to choose like, oh yeah, this was a moment or an achievement with KataGo that I’m most proud about, what might it be?
David Wu: Not sure,
David Wu: but I guess if I had to say,
David Wu: maybe the point of actually getting it in running in distributed fashion. So originally KataGo didn’t have a way for people to contribute to it and just getting the infrastructure up so people could do that and then seeing that there were actually people that found it worth their while to donate that computing power,
David Wu: that was a moment that I think made that felt really good.
Travis: A couple more questions. If you could start it all over again, start from the beginning.
Travis: What would you change knowing what you know now about KataGo’s development and use?
David Wu: I don’t know the answer to that one either.
David Wu: I think one of the tricky things is I think most of what I want to change or do differently isn’t contingent on starting again,
David Wu: but it’s more contingent on having like the time and ability and resources to test things.
David Wu: Like there’s a lot of things that are unknown right now, like what’s the optimal size of network? What parameters are better for the run as a whole? Right. Like you only get to do one run with the compute we have.
David Wu: We can’t test a lot of things easily.
David Wu: And so there’s a lot you could do with more resources that isn’t possible. And so I think that’s where my thoughts are as opposed to things I want to specifically do differently, given what we had.
Travis: Got it. Great. Any final words before we wrap up?
David Wu: Thank you for the chat. This was great.
Travis: Yeah, David, thank you so much for the time. We really appreciate it. And yeah, thank you so much.
Travis: Hey everybody. Just taking a quick pause to thank our individual contributors for all your support.
Travis: Also, I want to talk about the sponsors of this episode. Baduk Pop is the first sponsor. They are an app for Go players of every level and they can help you practice Go problems, do interactive Go lessons, and play against other players from around the world.
Travis: They have 27 million games played on their app so far, along with three and a half million user accounts. To download the app, go to your app store or BadukPop.com that’s b a d u k p o p. com the next sponsor of our episode is SmartGo One.
Travis: SmartGo One is your complete app for the game of Go. Learn to play, practice against a computer, study master games, solve problems, and read Go books. The app is available on iPhone, iPad, Mac, and the Go Books are available as an EPUB file as well for other devices.
Travis: AI Sensei is our next sponsor for the episode. Get your games analyzed using AI.
Travis: Find the spots in your game where you can improve.
Travis: Go to AISensei.com to learn more.
Travis: The final sponsor of our episode is Go Magic, a modern way to study Go like never before with an online platform. To learn the game of Go,
Travis: go to GoMagic.org okay, back to the episode.
Travis: We’re going to wrap up this episode with a final conversation with TelegraphGo about the differences of playing Go online versus in real life and some of the interesting little quirks and ticks that come along with it.
Travis: Let’s go ahead and jump into the conversation.
Sponsor Message
Conversation: In-Person Go Habits with TelegraphGo
TelegraphGo: You know, I’ve always had this strange feeling when I play Go that the opponent can see me and react to me. I think it’s because I started playing online and I became a dan player before I ever really played in person.
TelegraphGo: So I played a lot online, basically, is what I’m saying, before I ever played in person. And of course, when you play online, your opponent cannot see you. So I have all sorts of terrible habits.
TelegraphGo: I remember one of the first games that I played,
TelegraphGo: I was fiddling around with my stones in my bowl lid with my captured stones. I was like trying to aesthetically line them up with my bowl because it felt weird to have it just all sprayed around the table on this side, on that side.
TelegraphGo: And what I had accidentally done was hid my bowl lid behind my bowl so my opponent could not count my stones.
TelegraphGo: And they told me after the game they were like,
TelegraphGo: you know,
TelegraphGo: why were you fiddling around with the bowl lid so much? Were you trying to hide the stones? And I was like, wait, what? That’s what that looked like. I was just trying to like, like make it look good from my perspective.
TelegraphGo: I didn’t even think about what they were seeing.
TelegraphGo: I do all sorts of other, you know, I’m scratching the back of my head and lifting my arms up. It’s a very common posture for people who play online all the time to like, hold your shoulder with your other arm and like stretch yourself.
TelegraphGo: Basically what you’re doing is you’re making yourself feel big. I don’t know how to describe it. You expand your body posture.
TelegraphGo: But this feels really strange to do in front of the other person. Like, for me, this is just a confidence building stretch. But in front of the other person, I’m like, I’m not trying to intimidate them.
TelegraphGo: I’m just trying to get big like
Travis: a bear and try to scare your opponent away. But you’re saying that you almost do you do it almost subconsciously when you’re online.
TelegraphGo: Oh, absolutely. Like when I’m stretching, I’m just. I just get the urge to move my body in some way.
TelegraphGo: So anyway, I’ve always felt like somewhat conscious of myself whenever I catch myself doing one of these things. Like, I can’t help but twirl the stones in my hand sometimes when I’m like nervous about where it’s going to go and all these, like, fidgety habits.
TelegraphGo: Somehow I feel like if I were to play Go taken in person, I would feel even more pressured if you could see me do these habits. So I almost want to, like, hide myself.
TelegraphGo: I want to like, play behind the curtain, not let them see me as I play the game.
Travis: Oh my God. I don’t know. That’s really funny.
Travis: With that, we are going to go ahead and end the episode. Thank you so much for listening and catch you next time. This is all things Go.