Closed reppolice closed 6 years ago
Hi and welcome,
The entire project is not in training mode yet. We're close, but there is still work being done on the client/server code and training is also still a WIP.
You can play with a supervised learning version of a neutral network. See #51 and the weights repository. I'll update the readme to make things more clear.
The yaml config under training is a unified config that can be used for leela_to_proto.py
, supervised_parse.py
and parse.py
.
I got the client working and producing games now, and viewing the matches on the pgn web viewer also works now. The quality of the games is hilarious for any chess player, but that's to be expected especially after having seen Leela Zero back in November. I'm a bit surprised to see far more white wins than draws, shouldn't the white advantage be minimal at this skill level?
At any rate, I think the main items needed right now are a Readme that's more helpful in getting the Client running for the less computer savvy, a release for Windows users, and then a lot of advertising on various chess sites to make people aware that the distributed project has started.
Thanks to all contributors for making this happen!
I noticed that any game longer than 150 ply is ruled a draw by default. While that will of course shorten games, won't this impact the training data negatively by cutting short games which could have been won by one of the players? For Leela Zero, the limit of 723 moves is very conservative, but for chess a 75 move limit looks problematic to me...
I ran a few games with the client, looks good!
On the Google group, there are multiple people who are trying to get the client running, and either get stuck on the .dll's, or on the login which is supposed to be passed on by command line argument. A lot of Windows users aren't familiar with this. I think for more widespread adoption, the installation and initial setup should become a bit more user friendly. What about packaging all executables in an archive also including necessary .dll's, and changing the client so it doesn't just abort when no login information is specified, but prompts the user for -user and -password instead?
How to obtain windows version of lczero.exe and all dlls?
@kris-computer-go see #88
Somebody mentioned in reddit my project: https://www.reddit.com/r/MachineLearning/comments/81l7e5/p_keras_implementation_of_alphazero_for_chess/. As I know you are almost ready for the distributed effort I commanded everybody to visit this repo. I hope this to be helpful for the project.
I will paste also this same recommendation into the readme.md of my own repo since I'm having a lot of traffic.
@Zeta36 that's awesome! Thanks!
I linked #88 on https://www.reddit.com/r/ComputerChess/ since someone linked a .zip archive on a Google drive and I thought the instruction set here was safer, even though it's still a mix of different sources.
Starting to get some good docs now: https://github.com/glinscott/leela-chess/wiki/Getting-Started (thanks to everyone putting them together!)
It looks like quite a few people had no problem getting started, but I beg to differ :)
Right now, the train.sh file starts two processes, is this simply to "multithread" the code? I mean, to make sure we max out CPU and GPU, or is there some other point? I also thought it might be there to help testing some distributed code with such "data" directories spread across nodes, for example. Anyway, this leaves us with directories build/data-1 etc.
Then we jump to TF training which suggests, visually at least, that ../src/data/training is a directory, but once I get to creating/linking such directories under src, I find out that parse.py was looking for a .yaml . Now this is one hell of a "missing link"! Shouldnt this part be a bit more detailed?
Thanks!