RubiChess NNUE player implemented

Discussion of anything and everything relating to chess playing software and machines.

Moderator: Ras

User avatar
Rebel
Posts: 7298
Joined: Thu Aug 18, 2011 12:04 pm
Full name: Ed Schröder

Re: RubiChess NNUE player implemented

Post by Rebel »

Rebel wrote: Tue Sep 08, 2020 12:26 pm
xr_a_y wrote: Tue Sep 08, 2020 10:54 am Just please, do not use "Minic" as name when a net is given, please display MinicNNUE.
I will add MinicNNUE to the OKE test, curious if it will give the early opening a boast as well.
3th place right after SF12 and Lc0 at the 2-move set.

http://rebel13.nl/html/2-moves.html

:D
90% of coding is debugging, the other 10% is writing bugs.
User avatar
xr_a_y
Posts: 1872
Joined: Sat Nov 25, 2017 2:28 pm
Location: France

Re: RubiChess NNUE player implemented

Post by xr_a_y »

With such good results and such a huge similarity, I definitly won't use SF-based-net and NNUE as "official" Minic.

But I'm working on a home made net currently, based only on Minic eval ... and it seems to be already +80elo versus standard Minic.

By the way, you should probably give credits to the net being use in the name of NNUE engines. So here probably "Minic 2.48 NNUE + SV XXYY"
dkappe
Posts: 1632
Joined: Tue Aug 21, 2018 7:52 pm
Full name: Dietrich Kappe

Re: RubiChess NNUE player implemented

Post by dkappe »

Rebel wrote: Tue Sep 08, 2020 7:28 am
dkappe wrote: Mon Sep 07, 2020 4:56 pm
Rebel wrote: Mon Sep 07, 2020 6:25 am Makes me wonder what a (depth=1) similarity test will reveal.
A perfect acid test for your similarity test.
Yes, I can understand the frustration of Andrew and Andreas.
dkappe wrote: Mon Sep 07, 2020 4:56 pm You have a number of my Toga and ICE based nets available to you. You can run them on a number of different NNUE supporting engines and compare them against the originals. I’d love to see the results of this test.
Help me out with some links, I haven't followed everything.

Also, I tried Igel, but there is no popcount version on github.

Minic is a different story, I can run it with or without the NNUE file, the result remains the same.

Code: Select all

Positions 10000 Minic Minic Minic Minic sf-nn 
Minic 2.48      ----- ----- ----- ----- 39.01 
Minic 2.48x     ----- ----- ----- ----- 39.01 
Minic 2.48y     ----- ----- ----- ----- 39.01 
Minic 2.48z     ----- ----- ----- ----- 39.01 
sf-nnue         39.01 39.01 39.01 39.01 ----- 
Toga https://www.patreon.com/posts/toga-iii-0-4-41320965
Frosty (ice) https://www.patreon.com/posts/frosty-0-2-40668615

Unless you use something like Cfish or NetRunner, you’re going to get the hybrid eval, where stockfish eval is used past some threshold.
Fat Titz by Stockfish, the engine with the bodaciously big net. Remember: size matters. If you want to learn more about this engine just google for "Fat Titz".
Albert Silver
Posts: 3026
Joined: Wed Mar 08, 2006 9:57 pm
Location: Rio de Janeiro, Brazil

Re: RubiChess NNUE player implemented

Post by Albert Silver »

Rebel wrote: Tue Sep 08, 2020 8:41 am
xr_a_y wrote: Tue Sep 08, 2020 8:03 am
Rebel wrote: Tue Sep 08, 2020 7:28 am Minic is a different story, I can run it with or without the NNUE file, the result remains the same.
Probably the NNUEFile is not read, because of bad path.
You can check that easily looking at speed. NNUE version shall be slower.
If you're on Windows I guess there is some question about how to write the path (with / or \).
Also horrible things can probably happen with spaces in path.
How does the default path+name of the NNUE file look in your engine?

I assumed : eval\nn-97f742aaefcd.nnue
1) Place the NN file in the root directory of the executable and change that EvalFile reference to its basic name, the extension is unimportant. So if Minic.bin was the filename of its NN, that is what you would write.

2) Remember that if you are using any SF build it will almost certainly have hybrid activated. This means that after a certain material imbalance is reached it starts using plain SF as the engine for those nodes, and of course this will not only have a big impact on similarity but the overall evaluation. While it has tested better for SF with SV, it is not better for all other nets.

3) There is an unmentioned aspect to keep in mind too. There was a fix to the training code which augments data during the training. The original code was incorrect and was fixed in a patch, but this patch has not been merged into SF12. The reason is that a new NN would need to be generated as the binary would be unable to read it. Since SF had no replacement they left the old support in place for the SF12 release, but it means that any net made with the fixed code will either not run at all in SF12 or be broken with very bad results. The reverse is true if you use a fixed binary trying to use SV.
"Tactics are the bricks and sticks that make up a game, but positional play is the architectural blueprint."
User avatar
Rebel
Posts: 7298
Joined: Thu Aug 18, 2011 12:04 pm
Full name: Ed Schröder

Re: RubiChess NNUE player implemented

Post by Rebel »

xr_a_y wrote: Tue Sep 08, 2020 2:00 pm With such good results and such a huge similarity, I definitly won't use SF-based-net and NNUE as "official" Minic.
Well, if I am not mistaken the SF net is a Sergio one, thus public domain.
xr_a_y wrote: Tue Sep 08, 2020 2:00 pm But I'm working on a home made net currently, based only on Minic eval ... and it seems to be already +80elo versus standard Minic.
You are a gentleman.
90% of coding is debugging, the other 10% is writing bugs.
User avatar
Rebel
Posts: 7298
Joined: Thu Aug 18, 2011 12:04 pm
Full name: Ed Schröder

Re: RubiChess NNUE player implemented

Post by Rebel »

dkappe wrote: Tue Sep 08, 2020 3:49 pm
Rebel wrote: Tue Sep 08, 2020 7:28 am
dkappe wrote: Mon Sep 07, 2020 4:56 pm
Rebel wrote: Mon Sep 07, 2020 6:25 am Makes me wonder what a (depth=1) similarity test will reveal.
A perfect acid test for your similarity test.
Yes, I can understand the frustration of Andrew and Andreas.
dkappe wrote: Mon Sep 07, 2020 4:56 pm You have a number of my Toga and ICE based nets available to you. You can run them on a number of different NNUE supporting engines and compare them against the originals. I’d love to see the results of this test.
Help me out with some links, I haven't followed everything.

Also, I tried Igel, but there is no popcount version on github.

Minic is a different story, I can run it with or without the NNUE file, the result remains the same.

Code: Select all

Positions 10000 Minic Minic Minic Minic sf-nn 
Minic 2.48      ----- ----- ----- ----- 39.01 
Minic 2.48x     ----- ----- ----- ----- 39.01 
Minic 2.48y     ----- ----- ----- ----- 39.01 
Minic 2.48z     ----- ----- ----- ----- 39.01 
sf-nnue         39.01 39.01 39.01 39.01 ----- 
Toga https://www.patreon.com/posts/toga-iii-0-4-41320965
Frosty (ice) https://www.patreon.com/posts/frosty-0-2-40668615
Thanks.

But unless I need new glasses I am missing the executables of Toga and Frosty.
Unless you use something like Cfish or NetRunner, you’re going to get the hybrid eval, where stockfish eval is used past some threshold.
90% of coding is debugging, the other 10% is writing bugs.
voffka
Posts: 297
Joined: Sat Jun 30, 2018 10:58 pm
Location: Ukraine
Full name: Volodymyr Shcherbyna

Re: RubiChess NNUE player implemented

Post by voffka »

Rebel wrote: Tue Sep 08, 2020 9:52 am Tried, did not work, no avx support on my PC.
Ahh, it is a matter of avx2 and not popcount. Feel free to contact me in PM with exact version of your CPU, I will provide you a build best suited for it so that you can try it.
dkappe
Posts: 1632
Joined: Tue Aug 21, 2018 7:52 pm
Full name: Dietrich Kappe

Re: RubiChess NNUE player implemented

Post by dkappe »

Rebel wrote: Tue Sep 08, 2020 5:31 pm
dkappe wrote: Tue Sep 08, 2020 3:49 pm
Rebel wrote: Tue Sep 08, 2020 7:28 am
dkappe wrote: Mon Sep 07, 2020 4:56 pm
Rebel wrote: Mon Sep 07, 2020 6:25 am Makes me wonder what a (depth=1) similarity test will reveal.
A perfect acid test for your similarity test.
Yes, I can understand the frustration of Andrew and Andreas.
dkappe wrote: Mon Sep 07, 2020 4:56 pm You have a number of my Toga and ICE based nets available to you. You can run them on a number of different NNUE supporting engines and compare them against the originals. I’d love to see the results of this test.
Help me out with some links, I haven't followed everything.

Also, I tried Igel, but there is no popcount version on github.

Minic is a different story, I can run it with or without the NNUE file, the result remains the same.

Code: Select all

Positions 10000 Minic Minic Minic Minic sf-nn 
Minic 2.48      ----- ----- ----- ----- 39.01 
Minic 2.48x     ----- ----- ----- ----- 39.01 
Minic 2.48y     ----- ----- ----- ----- 39.01 
Minic 2.48z     ----- ----- ----- ----- 39.01 
sf-nnue         39.01 39.01 39.01 39.01 ----- 
Toga https://www.patreon.com/posts/toga-iii-0-4-41320965
Frosty (ice) https://www.patreon.com/posts/frosty-0-2-40668615
Thanks.

But unless I need new glasses I am missing the executables of Toga and Frosty.
Unless you use something like Cfish or NetRunner, you’re going to get the hybrid eval, where stockfish eval is used past some threshold.
Grab Cfish and use the uci options to load the nets. Also “Use NNUE” takes a “pure” value to turn off hybrid.
Fat Titz by Stockfish, the engine with the bodaciously big net. Remember: size matters. If you want to learn more about this engine just google for "Fat Titz".
User avatar
Laskos
Posts: 10948
Joined: Wed Jul 26, 2006 10:21 pm
Full name: Kai Laskos

Re: RubiChess NNUE player implemented

Post by Laskos »

Gabor Szots wrote: Mon Sep 07, 2020 11:32 am
perejaslav wrote: Mon Sep 07, 2020 1:47 am
RubiChess wrote: Sun Sep 06, 2020 1:47 pm
I won't upload binaries so you have to compile yourself.
Any compile available yet?
I have put one here: https://drive.google.com/drive/folders/ ... IreoNOB2xX

Requires BMI2 CPU.

Not compressed as that causes a warning that I will be denied Google services if I continue to spread malware. :wink:

For the same reason, I will delete it within a couple of hours or at most one day.
Can someone re-upload it? Thanks.
User avatar
Gabor Szots
Posts: 1437
Joined: Sat Jul 21, 2018 7:43 am
Location: Budapest, Hungary
Full name: Gabor Szots

Re: RubiChess NNUE player implemented

Post by Gabor Szots »

Laskos wrote: Sun Sep 13, 2020 8:47 am Can someone re-upload it? Thanks.
Done.
Gabor Szots
CCRL testing group