lucasart
lucasart
@moe123 @ScratchyCode It's trivial to adapt backprop to any function you want. Read [this](https://en.wikipedia.org/wiki/Backpropagation#Derivation), preferably with a pen and paper, redoing the calculation on your own until it becomes crystal...
I wrote my own [nn library](https://github.com/lucasart/nn) library, if anyone's interested. Same functionality as genann. Also uses a flat memory layout for weights+neurons+delta (great for cache efficiency and use with more...
@Zeta36: Regarding speed, I expect the bottleneck is in gameplay, written in Python. I am happy to help you with a minimal C implementation for that. Let me know if...
I've implemented `PackedSfenValue` format in [c-chess-cli](https://github.com/lucasart/c-chess-cli), to generate the training data. You might find this interesting. It's engine agnostic, and can be used to sample game in any tournament condition...
Since I want to be engine agnostic, I am using: * cp for non mate scores: this is natural, and corresponds to what the UI reads when parsing `info ......
While writing the code, I couldn't help but notice 1. castling encoding is not Chess960 compatible, and that's easy to fix. if you take the castling rooks (of both colors),...
> when did that syntax change? 20-mar: https://github.com/lucasart/c-chess-cli/commit/4e8ec07e60cc1a8316145fb89c234d30f5e08d77 Now, be careful, because a critical bug was introduced on 20-Mar as well, which was reverted in 27-Mar. So 20-27 mar is...
@Sopel97 What help is wanted here ? It's trivial to change this line: https://github.com/glinscott/nnue-pytorch/blob/master/run_games.py#L75. As for the version programmatic test, you can forget about it, because the `c-chess-cli -version` was...
Thank you for the detailled bug report. I'm a bit reluctant to using poll/select in the worker threads though, as this would create further complexity. But I don't have an...
I looked into poll, but it's impractical because: * I want a str_getline() with timeout. It's not really practical to write that with poll(), because the only thing poll() tells...