Koivisto 5.0

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

Moderators: hgm, Rebel, chrisw

Madeleine Birchfield
Posts: 512
Joined: Tue Sep 29, 2020 4:29 pm
Location: Dublin, Ireland
Full name: Madeleine Birchfield

Re: Koivisto 5.0

Post by Madeleine Birchfield »

Daniel Shawul wrote: Thu Jul 08, 2021 4:05 pm
mvanthoor wrote: Thu Jul 08, 2021 3:54 pm
Daniel Shawul wrote: Thu Jul 08, 2021 3:42 pm Hand-crafted evaluation is now more like "Cave Mens evaluation" than "Real Mens evaluation"
To be honest, even HCE not completely HCE anymore. Now, we make a table that gives bonus/malus for open lines, doubled pawns, etc, and we have Texel Tuning tune those. It's like a poor man's neural network, where you define each parameter to be tuned yourself. A neural network just has a huge amount of parameters with no name. The "hand-crafted" part is only assigning when some parameters should be used. ("If you have an open line, use that value. If you have doubled pawns, use this value.") That's not really hard to do. The big advantage of a HCE is that humans can clearly understand what the engine is doing, and by looking at the games, you can clearly see the impact of a newly added feature.
Absolutely! HCE is just a perceptron with a linear activation function. "Texel tuning" is just training a perceptron with sigmoid activation function so as to map it to game results. So basically HCE is humans hand-selecting the weights and features, i.e. if you don't use a tuner, and if you do use tuner the human's job reduces to selecting features. If hand-selecting evaluation features is a "real man's" job, I will pass ...
Even Komodo, with a Grand master in its team, have moved to NNUEs now.
The real divide nowadays is between those who use handcrafted selectivity heuristics such as passed pawn extensions and handcrafted move ordering heuristics such as killer heuristics, and those who use a policy neural network.
User avatar
mvanthoor
Posts: 1784
Joined: Wed Jul 03, 2019 4:42 pm
Location: Netherlands
Full name: Marcel Vanthoor

Re: Koivisto 5.0

Post by mvanthoor »

Daniel Shawul wrote: Thu Jul 08, 2021 4:05 pm Absolutely! HCE is just a perceptron with a linear activation function. "Texel tuning" is just training a perceptron with sigmoid activation function so as to map it to game results. So basically HCE is humans hand-selecting the weights and features, i.e. if you don't use a tuner, and if you do use tuner the human's job reduces to selecting features. If hand-selecting evaluation features is a "real man's" job, I will pass ...
Even Komodo, with a Grand master in its team, have moved to NNUEs now.
My engine will probably move to a neural network as well, though I'm sad to lose the option to try and tune to a certain playing style. (Could I use 50 million positions from Tal's games, to Texel-tune a HCE to Tal's playing style, or to train a NNUE to that style? I'd have to try.)

However, I feel that I first must implement all the "classical" stuff myself before moving on to that. At this point, I don't have a clear idea how Texel tuning works. It's on the list for reseaerch after I finish my current optimization/testing run. While I know and have implemented the basics of neural networks (in university), and played with genetic algorithms, I don't know how I should apply any of that to chess. I'll have to study it... but only _after_ I understand Texel tuning.

In my opinion, if I don't yet fully understand the basic X (Texel tuning), I can't go and do the more advanced Y (NNUE).

And I just want to have a classical evaluation. Maybe HCE/NNUE will become a selectable UCI option. Why not have both, for people who like one or the other? I'll also have XBoard implemented in the end even though I'll never use it myself; but other people may want to. (I'm more of a UCI-guy for several reasons, but that's a different topic.)
Author of Rustic, an engine written in Rust.
Releases | Code | Docs | Progress | CCRL
Madeleine Birchfield
Posts: 512
Joined: Tue Sep 29, 2020 4:29 pm
Location: Dublin, Ireland
Full name: Madeleine Birchfield

Re: Koivisto 5.0

Post by Madeleine Birchfield »

mvanthoor wrote: Thu Jul 08, 2021 5:54 pm And I just want to have a classical evaluation. Maybe HCE/NNUE will become a selectable UCI option. Why not have both, for people who like one or the other? I'll also have XBoard implemented in the end even though I'll never use it myself; but other people may want to. (I'm more of a UCI-guy for several reasons, but that's a different topic.)
Stockfish has a UCI option that allows the user to disable the neural network in the evaluation.
Luecx
Posts: 138
Joined: Thu Jun 18, 2020 9:20 pm
Full name: Finn Eggers

Re: Koivisto 5.0

Post by Luecx »

Thinking that modern HCE are nothing but a 1-layer perceptron simply have no fucking clue how modern HCE work. What about the entire non-linear part? Space evaluation is non-linear. King-safety is non-linear. People wonder why this is not the place where top engines share their information and the simple answer ist that people like you are roaming around here...
The ability to speak does not make you intelligent. https://github.com/Luecx/Koivisto

Image
Luecx
Posts: 138
Joined: Thu Jun 18, 2020 9:20 pm
Full name: Finn Eggers

Re: Koivisto 5.0

Post by Luecx »

Also you dont seem to understand the difficulty in writing a good HCE. It is not about being linear or non-linear but about the features to select when writing the HCE...
The ability to speak does not make you intelligent. https://github.com/Luecx/Koivisto

Image
Madeleine Birchfield
Posts: 512
Joined: Tue Sep 29, 2020 4:29 pm
Location: Dublin, Ireland
Full name: Madeleine Birchfield

Re: Koivisto 5.0

Post by Madeleine Birchfield »

Luecx wrote: Thu Jul 08, 2021 6:32 pm Thinking that modern HCE are nothing but a 1-layer perceptron simply have no fucking clue how modern HCE work. What about the entire non-linear part? Space evaluation is non-linear. King-safety is non-linear. People wonder why this is not the place where top engines share their information and the simple answer ist that people like you are roaming around here...
Luecx wrote: Thu Jul 08, 2021 6:33 pm Also you dont seem to understand the difficulty in writing a good HCE. It is not about being linear or non-linear but about the features to select when writing the HCE...
The same is true of writing a good neural network from scratch, which features to use as input into the neural network (piece square tables, king safety heuristics, et cetera), which neural network architecture to use, et cetera, as the authors of Wasp, Winter, Fizbo, and Ethereal have done in the past and continue to today. Winter, Fizbo, and Ethereal have source code available and you could take a look at just how they managed to mix handcrafted evaluation with their neural networks. Wasp uses a very small neural network with only five perceptrons and handcrafted features inside each perceptron. Your binary view of neural networks vs hce ignores the various hybrids that exist in the computer chess world already for five years, all before nnue came on the scene.

The problem was never neural networks vs handcrafted, but that many people, such as the authors of Igel, Rubichess, and Nemorino, have simply decided to copy Stockfish's neural network evaluation code and train/tune neural networks for the copied code. The equivalent pre-nnue action would be people copying Pesto's evaluation function or Stockfish's handcrafted evaluation into the engine and tuning the copied handcrafted evaluation. Engine developers need to leave behind the nnue architecture consisting of an input layer with king piece square tables and three layers with 32×2×256, 32×32, and 32×1 weights, and start doing the hard work finding unique alternatives, which may or may not involve human selected features.
mar
Posts: 2554
Joined: Fri Nov 26, 2010 2:00 pm
Location: Czech Republic
Full name: Martin Sedlak

Re: Koivisto 5.0

Post by mar »

Daniel Shawul wrote: Thu Jul 08, 2021 3:42 pm Hand-crafted evaluation is now more like "Cave Mens evaluation" than "Real Mens evaluation"
really? so how did Scorpio become a top 10 engine out of nowhere, did you find a big idea? :D oh yeah, you don't care about rating lists, right :D
Martin Sedlak
Madeleine Birchfield
Posts: 512
Joined: Tue Sep 29, 2020 4:29 pm
Location: Dublin, Ireland
Full name: Madeleine Birchfield

Re: Koivisto 5.0

Post by Madeleine Birchfield »

mar wrote: Thu Jul 08, 2021 8:10 pm
Daniel Shawul wrote: Thu Jul 08, 2021 3:42 pm Hand-crafted evaluation is now more like "Cave Mens evaluation" than "Real Mens evaluation"
really? so how did Scorpio become a top 10 engine out of nowhere, did you find a big idea? :D oh yeah, you don't care about rating lists, right :D
Scorpio is only a top 10 engine if it uses a GPU. With CPU only, Scorpio is much weaker.
mar
Posts: 2554
Joined: Fri Nov 26, 2010 2:00 pm
Location: Czech Republic
Full name: Martin Sedlak

Re: Koivisto 5.0

Post by mar »

Madeleine Birchfield wrote: Thu Jul 08, 2021 8:42 pm Scorpio is only a top 10 engine if it uses a GPU. With CPU only, Scorpio is much weaker.
that's completely irrelevant. I'm deeply disgusted with the current state of computer chess,
so much hatred and nonsense is really something.
especially noting the high number of trolls that hijacked this Koivisto release thread just because Luecx dared to express his opinion.
there's nothing else for me here, really.

so, congratulations and good luck to koi guys, I'm outta CC, bye
Martin Sedlak
Daniel Shawul
Posts: 4185
Joined: Tue Mar 14, 2006 11:34 am
Location: Ethiopia

Re: Koivisto 5.0

Post by Daniel Shawul »

mar wrote: Thu Jul 08, 2021 8:10 pm
Daniel Shawul wrote: Thu Jul 08, 2021 3:42 pm Hand-crafted evaluation is now more like "Cave Mens evaluation" than "Real Mens evaluation"
really? so how did Scorpio become a top 10 engine out of nowhere, did you find a big idea? :D oh yeah, you don't care about rating lists, right :D
Did I say I don’t care about rating of my engine ? The point is I dont go lecture others on the “value of real-men-evaluation” while at the same time implementing NN to get the Elo points. That hollier than thou attitude needs to go. You like hand crafted evaluation, traditional search etc fine! Just do it and save us the lecture...