this will be the merge of a lifetime : SF 80 Elo+

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

Moderators: hgm, Rebel, chrisw

syzygy
Posts: 5557
Joined: Tue Feb 28, 2012 11:56 pm

Re: this will be the merge of a lifetime : SF 80 Elo+

Post by syzygy »

Joerg Oster wrote: Sun Aug 09, 2020 1:20 pm It is especially in unbalanced positions where classic eval seems to lack some knowledge,
at least that was my impression from many examples given in the past.
I suppose any gains from using the classic eval come solely from the time saving.
This suggests that any simplification of the classic eval will now pass in fishtest because it will save even more time.
syzygy
Posts: 5557
Joined: Tue Feb 28, 2012 11:56 pm

Re: this will be the merge of a lifetime : SF 80 Elo+

Post by syzygy »

syzygy wrote: Sun Aug 09, 2020 1:36 pm
Joerg Oster wrote: Sun Aug 09, 2020 1:20 pm It is especially in unbalanced positions where classic eval seems to lack some knowledge,
at least that was my impression from many examples given in the past.
I suppose any gains from using the classic eval come solely from the time saving.
This suggests that any simplification of the classic eval will now pass in fishtest because it will save even more time.
Btw, I'm not really sure why it speeds up since skipping the NNUE eval would seem to break the incremental updating (at least if the parent node did not get NNUE-evaluated).
zullil
Posts: 6442
Joined: Tue Jan 09, 2007 12:31 am
Location: PA USA
Full name: Louis Zulli

Re: this will be the merge of a lifetime : SF 80 Elo+

Post by zullil »

syzygy wrote: Sun Aug 09, 2020 1:36 pm
Joerg Oster wrote: Sun Aug 09, 2020 1:20 pm It is especially in unbalanced positions where classic eval seems to lack some knowledge,
at least that was my impression from many examples given in the past.
I suppose any gains from using the classic eval come solely from the time saving.
This suggests that any simplification of the classic eval will now pass in fishtest because it will save even more time.
Indeed. Let's not forget that the "pure" NNUE-eval version that was merged was +90 Elo over Stockfish with classical evaluation.

Time to admit that the era of humans tweaking evaluation code is done (thank God). Exploration of network architectures and training methods seems important. But it's time to return to focusing on searching. Does anyone really think that lazy smp is an optimal way to use 64 threads, for example?
Joerg Oster
Posts: 937
Joined: Fri Mar 10, 2006 4:29 pm
Location: Germany

Re: this will be the merge of a lifetime : SF 80 Elo+

Post by Joerg Oster »

syzygy wrote: Sun Aug 09, 2020 1:42 pm
syzygy wrote: Sun Aug 09, 2020 1:36 pm
Joerg Oster wrote: Sun Aug 09, 2020 1:20 pm It is especially in unbalanced positions where classic eval seems to lack some knowledge,
at least that was my impression from many examples given in the past.
I suppose any gains from using the classic eval come solely from the time saving.
This suggests that any simplification of the classic eval will now pass in fishtest because it will save even more time.
Btw, I'm not really sure why it speeds up since skipping the NNUE eval would seem to break the incremental updating (at least if the parent node did not get NNUE-evaluated).
Good point!
Jörg Oster
gladius
Posts: 568
Joined: Tue Dec 12, 2006 10:10 am
Full name: Gary Linscott

Re: this will be the merge of a lifetime : SF 80 Elo+

Post by gladius »

syzygy wrote: Sun Aug 09, 2020 1:42 pm
syzygy wrote: Sun Aug 09, 2020 1:36 pm
Joerg Oster wrote: Sun Aug 09, 2020 1:20 pm It is especially in unbalanced positions where classic eval seems to lack some knowledge,
at least that was my impression from many examples given in the past.
I suppose any gains from using the classic eval come solely from the time saving.
This suggests that any simplification of the classic eval will now pass in fishtest because it will save even more time.
Btw, I'm not really sure why it speeds up since skipping the NNUE eval would seem to break the incremental updating (at least if the parent node did not get NNUE-evaluated).
I believe the time savings comes from not having to compute the final layers. The incremental updates are still done, but they only update the first layer. The last 2 layers are still quite expensive.

That gives me an idea for NNUE lazy eval though :). Perhaps training a much smaller final layer (distilling the net) for material imbalanced positions. That way you could get a massive speed up still, but simplify having to use the classical eval.
carldaman
Posts: 2283
Joined: Sat Jun 02, 2012 2:13 am

Re: this will be the merge of a lifetime : SF 80 Elo+

Post by carldaman »

Deberger wrote: Sun Aug 09, 2020 2:10 am
carldaman wrote: Sat Aug 08, 2020 10:57 pm It defeats the purpose if the NNUE cannot always be set to active [as an option], because then you're at the mercy of the engine only using NNUE when it chooses. Hopefully the SF team will wake up to the fact that people also use the engine for analysis.
With a trivial change to the source code, you can build your own executable which always uses NNUE.

However this change can never yield stronger analysis.

Over time, using "always NNUE" will be gradually weaker and weaker as the nets are optimized for their intended use in balanced positions.
We're making too many assumptions for now, while in the early stages of NNUE. Much more convenient is if the end user is enabled to analyze with or without NNUE whenever he chooses. That way one can get more than one opinion on a given position, without loading a different engine altogether.
zullil
Posts: 6442
Joined: Tue Jan 09, 2007 12:31 am
Location: PA USA
Full name: Louis Zulli

Re: this will be the merge of a lifetime : SF 80 Elo+

Post by zullil »

carldaman wrote: Sun Aug 09, 2020 5:36 pm
Deberger wrote: Sun Aug 09, 2020 2:10 am
carldaman wrote: Sat Aug 08, 2020 10:57 pm It defeats the purpose if the NNUE cannot always be set to active [as an option], because then you're at the mercy of the engine only using NNUE when it chooses. Hopefully the SF team will wake up to the fact that people also use the engine for analysis.
With a trivial change to the source code, you can build your own executable which always uses NNUE.

However this change can never yield stronger analysis.

Over time, using "always NNUE" will be gradually weaker and weaker as the nets are optimized for their intended use in balanced positions.
We're making too many assumptions for now, while in the early stages of NNUE. Much more convenient is if the end user is enabled to analyze with or without NNUE whenever he chooses. That way one can get more than one opinion on a given position, without loading a different engine altogether.
Wish they'd just delete the classical evaluation completely, and stop this awkward hybridization. Yes, the NNUE evaluation is (currently) half as fast as the classical one. And given that it still was +90 Elo above classical-fish. Folks are just emotionally attached to the classical evaluation, because so many people tweaked it over the years. NNUE is the future; let it happen and evolve. And start working on SMP search. :wink:
Cornfed
Posts: 511
Joined: Sun Apr 26, 2020 11:40 pm
Full name: Brian D. Smith

Re: this will be the merge of a lifetime : SF 80 Elo+

Post by Cornfed »

zullil wrote: Sun Aug 09, 2020 6:06 pm

Wish they'd just delete the classical evaluation completely, and stop this awkward hybridization. Yes, the NNUE evaluation is (currently) half as fast as the classical one. And given that it still was +90 Elo above classical-fish. Folks are just emotionally attached to the classical evaluation, because so many people tweaked it over the years. NNUE is the future; let it happen and evolve. And start working on SMP search. :wink:
And why do you think Classical SF beats NN's when it does? It is because it does certain things better, correct?
zullil
Posts: 6442
Joined: Tue Jan 09, 2007 12:31 am
Location: PA USA
Full name: Louis Zulli

Re: this will be the merge of a lifetime : SF 80 Elo+

Post by zullil »

Cornfed wrote: Sun Aug 09, 2020 6:16 pm
zullil wrote: Sun Aug 09, 2020 6:06 pm

Wish they'd just delete the classical evaluation completely, and stop this awkward hybridization. Yes, the NNUE evaluation is (currently) half as fast as the classical one. And given that it still was +90 Elo above classical-fish. Folks are just emotionally attached to the classical evaluation, because so many people tweaked it over the years. NNUE is the future; let it happen and evolve. And start working on SMP search. :wink:
And why do you think Classical SF beats NN's when it does? It is because it does certain things better, correct?
Not much, if it's -90 Elo. :wink:
User avatar
Laskos
Posts: 10948
Joined: Wed Jul 26, 2006 10:21 pm
Full name: Kai Laskos

Re: this will be the merge of a lifetime : SF 80 Elo+

Post by Laskos »

Cornfed wrote: Sun Aug 09, 2020 6:16 pm
zullil wrote: Sun Aug 09, 2020 6:06 pm

Wish they'd just delete the classical evaluation completely, and stop this awkward hybridization. Yes, the NNUE evaluation is (currently) half as fast as the classical one. And given that it still was +90 Elo above classical-fish. Folks are just emotionally attached to the classical evaluation, because so many people tweaked it over the years. NNUE is the future; let it happen and evolve. And start working on SMP search. :wink:
And why do you think Classical SF beats NN's when it does? It is because it does certain things better, correct?
Luck can account for that.