It is currently Tue Jan 26, 2021 9:32 pm

All times are UTC - 8 hours [ DST ]




Post new topic Reply to topic  [ 15 posts ] 
Author Message
Offline
 Post subject: Neural-net-extracted Go problems from pro games
Post #1 Posted: Sun May 20, 2018 4:33 pm 
Lives in gote

Posts: 624
Liked others: 102
Was liked: 731
Rank: maybe 2d
I just finished a new website today that I hope people will find interesting! I trained neural nets to model players of different ranks, and then took a large database of pro games and used them to extract positions when the next move would likely be instinctual for a typical human pro but less instinctual for a typical weaker player.

The result was this collection of Go problems:
https://neuralnetgoproblems.com/

Among other things, it seems to have a high density of "basic shape problems" from local open-space fights. Keep in mind that they are all auto-generated so may not be as clean as typical tsumego, and the ranks are only very approximate. Also feel free to PM me if you're having trouble getting it to load, getting things to work right on all browsers is hard

I'm excited to see what people make of it.

(also posted to reddit r/baduk: https://www.reddit.com/r/baduk/comments ... pro_games/)


This post by lightvector was liked by 13 people: Bill Spight, Calvin Clark, daal, dfan, ez4u, gamesorry, Kirby, Knotwilg, le_4TC, Marcel Grünauer, serbes, Tapani, xela
Top
 Profile  
 
Offline
 Post subject: Re: Neural-net-extracted Go problems from pro games
Post #2 Posted: Sun May 20, 2018 4:49 pm 
Gosei

Posts: 1488
Liked others: 805
Was liked: 494
Rank: AGA 3k KGS 1k Fox 2d
GD Posts: 61
KGS: dfan
This is a great idea and I'm excited to try it out!

Top
 Profile  
 
Offline
 Post subject: Re: Neural-net-extracted Go problems from pro games
Post #3 Posted: Sun May 20, 2018 6:04 pm 
Lives in gote

Posts: 663
Liked others: 290
Was liked: 329
That looks really interesting; thank you!

Could you explain a bit about how you accomplished that? Specifically I'm interested in:

- How did you train the network?

- How did you generate the problems?

- How did you assign a rank?

Thank you.

Top
 Profile  
 
Offline
 Post subject: Re: Neural-net-extracted Go problems from pro games
Post #4 Posted: Sun May 20, 2018 7:09 pm 
Honinbo

Posts: 9202
Liked others: 1547
Was liked: 1595
KGS: Kirby
Tygem: 커비라고해
Marcel Grünauer wrote:
That looks really interesting; thank you!

Could you explain a bit about how you accomplished that? Specifically I'm interested in:

- How did you train the network?

- How did you generate the problems?

- How did you assign a rank?

Thank you.


The about page has a link to his github repo, which has some interesting information:
https://github.com/lightvector/GoNN

_________________
be immersed

Top
 Profile  
 
Offline
 Post subject: Re: Neural-net-extracted Go problems from pro games
Post #5 Posted: Sun May 20, 2018 7:53 pm 
Lives in gote

Posts: 624
Liked others: 102
Was liked: 731
Rank: maybe 2d
Marcel Grünauer wrote:
That looks really interesting; thank you!

Could you explain a bit about how you accomplished that? Specifically I'm interested in:

- How did you train the network?

- How did you generate the problems?

- How did you assign a rank?

Thank you.


I used human pro games plus a lot of games from online servers by different ranks of players. I trained the network by using the architecture similar to the one in the latest commit in my Github that Kirby linked, except I made the neural net slightly bigger and added the rank and server combination as a one-hot-encoded input feature. Except with a dimensionality reduction gadget to force the neural net to embed the 60+ different server/rank combinations into a lower-dimensional space. It mostly did learn a smoothish embedding where nearby ranks were usulaly embedded to nearby points, which was a great sign that it really was learning how differently-ranked players played, since that means it managed to learn which ranks were similar to which other ranks entirely on its own without being told anything about the ordering of the ranks.

Armed with a neural net that "understood" what kinds of moves each rank of player was likely to make in a given position, I then filtered pro games for moves that the neural net thought were clear for pros (the neural net predicted a pro would be very likely to make exactly a specific move, and indeed the pro did make that move) and where the neural net thought they would not so clear for different weaker ranks of players. I had to playtest and iterate on the criteria for filtering quite a bit.

The final nominal ranks that the problem sets are labeled with are only loosely related to the ranks used in the filtering criteria. They were mostly determined by further testing with a few volunteers, along with some by-hand fudging, particularly on the lower end of the scale, which was initially much too hard.


This post by lightvector was liked by: Marcel Grünauer
Top
 Profile  
 
Offline
 Post subject: Re: Neural-net-extracted Go problems from pro games
Post #6 Posted: Mon May 21, 2018 2:14 am 
Oza
User avatar

Posts: 2506
Liked others: 1293
Was liked: 1119
Incredible! Great work!

_________________
Patience, grasshopper.

Top
 Profile  
 
Offline
 Post subject: Re: Neural-net-extracted Go problems from pro games
Post #7 Posted: Tue May 22, 2018 1:33 am 
Lives in sente
User avatar

Posts: 1108
Liked others: 87
Was liked: 381
Very interesting! Two questions:

1. How many problems are there in your database?

2. How did you determine that a move is "possible/unlikely, might have been the pro move in other situations"?

Top
 Profile  
 
Offline
 Post subject: Re: Neural-net-extracted Go problems from pro games
Post #8 Posted: Tue May 22, 2018 5:28 am 
Lives in gote

Posts: 624
Liked others: 102
Was liked: 731
Rank: maybe 2d
* Around 127000 problems.

* The neural net assigned a nontrivial amount of probability to a typical pro playing those moves, even though they were not the game move and the amount of probability assigned was far less than the game move.


This post by lightvector was liked by: jlt
Top
 Profile  
 
Offline
 Post subject: Re: Neural-net-extracted Go problems from pro games
Post #9 Posted: Wed May 23, 2018 10:13 pm 
Lives in gote

Posts: 426
Liked others: 186
Was liked: 191
Impressive. There seems to be quite the variance for a given level. This showed up as a 3d problem, but if :b1: to :b5: are on the board, I have doubts. (Problem 3d-13598.sgf)

But this is definitely a useful project, and I hope you and your collaborators can take it further. Wasn't the chess.com tactics trainer created by computer analysis? (Pre-neural net engines, I think).


Top
 Profile  
 
Offline
 Post subject: Re: Neural-net-extracted Go problems from pro games
Post #10 Posted: Thu May 24, 2018 4:09 am 
Lives in gote

Posts: 624
Liked others: 102
Was liked: 731
Rank: maybe 2d
That seems to be a case where the neural net is just wrong that the move would be unlikely for a lower-ranked player. I'm not sure I can do much about that, except to train better nets if I were to try to regenerate the problem sets. Neural nets "blunder" too I guess. It does seem to be different between different rotations of the neural net in this specific case. Maybe averaging across rotations would be a thing to try.

I did notice that there was high variance, which is why I labeled it as "Avg difficulty" rather than simply "Difficulty". Although I agree this is a little too much variance.

If I were to make up a reason why in retrospect still having some fraction of easy problems is good, it would be that in a real game, many of the moves *are* easy, so maybe it's good to to keep you on your toes and not always be expecting something non-obvious. ;-)

Edit: Going ahead and trying a problem generation run where I average multiple rotations of the neural net together, to see if it results in some reduction of the frequency of this.


Last edited by lightvector on Thu May 24, 2018 4:52 am, edited 1 time in total.
Top
 Profile  
 
Offline
 Post subject: Re: Neural-net-extracted Go problems from pro games
Post #11 Posted: Thu May 24, 2018 4:48 am 
Gosei
User avatar

Posts: 1762
Location: Ghent, Belgium
Liked others: 270
Was liked: 811
Rank: KGS 2d OGS 1d Fox 4d
KGS: Artevelde
OGS: Knotwilg
Online playing schedule: UTC 18:00 - 22:00
I tried out a few problems at 14k level and 1d level.

First of all, it's a fantastic piece of work! This might just be my new favorite online resource.

One feature that may even improve it is: the level of the problem is a bit of a giveaway to me. In a 14k level problem, I know that we're looking for the basic move. A 1d problem may have a more intricate solution and the first move I think of is probably not the one to play.

Would it be feasible to offer random level problems?


This post by Knotwilg was liked by: lightvector
Top
 Profile  
 
Offline
 Post subject: Re: Neural-net-extracted Go problems from pro games
Post #12 Posted: Thu May 24, 2018 5:09 am 
Lives in gote

Posts: 624
Liked others: 102
Was liked: 731
Rank: maybe 2d
Sure! Hopefully the new problem generation run will be finished by the end of this weekend (it takes a while to complete), and at that point I'll see if it somewhat reduces the incidence of "super-easy" problems in harder sets that Calvin noticed, although surely there will still be plenty of it. But given that I'm trying to do that, seems worth also adding a button that puts all of the problems together in a giant pool, or something like that.

I'll also push a few bugfixes at that time too, as right now you can get into some strange glitched states with mixing clicking on the board and redo after undo. Hopefully it should be up by the end of this weekend, if not, then the first half of next week.

Top
 Profile  
 
Offline
 Post subject: Re: Neural-net-extracted Go problems from pro games
Post #13 Posted: Thu May 24, 2018 5:37 am 
Honinbo

Posts: 10627
Liked others: 3559
Was liked: 3332
Let me add my voice to the chorus:

Wonderful idea! Great job!

:clap: :clap: :clap:
:salute: :salute: :salute:
:bow: :bow: :bow:

_________________
The Adkins Principle:
At some point, doesn't thinking have to go on?
— Winona Adkins

My two main guides in life:
My mother and my wife. :)

Everything with love. Stay safe.


This post by Bill Spight was liked by: lightvector
Top
 Profile  
 
Offline
 Post subject: Re: Neural-net-extracted Go problems from pro games
Post #14 Posted: Sun May 27, 2018 10:24 pm 
Lives in gote

Posts: 624
Liked others: 102
Was liked: 731
Rank: maybe 2d
Done! Regenerated the problems (although I find any difference hard to notice), fixed some UI bugs, and added an "all" button that simply has all the problems from every other set mixed together.


This post by lightvector was liked by 3 people: dfan, Knotwilg, le_4TC
Top
 Profile  
 
Offline
 Post subject: Re: Neural-net-extracted Go problems from pro games
Post #15 Posted: Sat Jun 02, 2018 11:25 pm 
Lives in gote

Posts: 635
Liked others: 58
Was liked: 116
Fantastic project. Bravo!
Real helpful set of whole board middle game problems.
Thanks a lot for making this! :bow:


This post by Ian Butler was liked by: lightvector
Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 15 posts ] 

All times are UTC - 8 hours [ DST ]


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group