The evaluation is just as much a book as the NN.
Recent Alpha zero vs Stockfish 8 match.
Moderators: hgm, Rebel, chrisw
-
- Posts: 27796
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
-
- Posts: 3657
- Joined: Wed Nov 18, 2015 11:41 am
- Location: hungary
Re: Recent Alpha zero vs Stockfish 8 match.
NN keeps the results of the self play.
When you use an NN-type engine the engine does nothing but search for sequence of moves in NN.
Do you think Stockfish also uses pre-evaluated positions?
Stockfish and other AB-type engines use a type of evaluation and NN-type engines use an other type of evaluation.
The concrete method of evaluation is not a philosophical question but a technical question.
-
- Posts: 793
- Joined: Sun Aug 03, 2014 4:48 am
- Location: London, UK
Re: Recent Alpha zero vs Stockfish 8 match.
That's not how it works. A neural network is a function approximator - it looks at data and try to extract patterns that can be applied to positions it hasn't seen before.corres wrote: ↑Sun Dec 30, 2018 12:49 pm NN keeps the results of the self play.
When you use an NN-type engine the engine does nothing but search for sequence of moves in NN.
Do you think Stockfish also uses pre-evaluated positions?
Stockfish and other AB-type engines use a type of evaluation and NN-type engines use an other type of evaluation.
The concrete method of evaluation is not a philosophical question but a technical question.
Training a neural network to evaluate a position is like tuning the SF evaluation coefficients to make it better predict game results given a position, because ultimately, that's what evaluation functions are supposed to do. If you have a function that can tell you whether a position is won or loss given perfect play, you have solved chess.
Neither NNs nor Stockfish evaluation terms memorize sequences.
Disclosure: I work for DeepMind on the AlphaZero project, but everything I say here is personal opinion and does not reflect the views of DeepMind / Alphabet.
-
- Posts: 165
- Joined: Tue Dec 02, 2014 1:29 am
Re: Recent Alpha zero vs Stockfish 8 match.
with book or without book?
play chess 960!!
would be interesting an experiment.
play chess 960!!
would be interesting an experiment.
-
- Posts: 3657
- Joined: Wed Nov 18, 2015 11:41 am
- Location: hungary
Re: Recent Alpha zero vs Stockfish 8 match.
NN contains not only the winning possibility of a position but a prediction for the next good moves.matthewlai wrote: ↑Sun Dec 30, 2018 1:43 pmThat's not how it works. A neural network is a function approximator - it looks at data and try to extract patterns that can be applied to positions it hasn't seen before.corres wrote: ↑Sun Dec 30, 2018 12:49 pm NN keeps the results of the self play.
When you use an NN-type engine the engine does nothing but search for sequence of moves in NN.
Do you think Stockfish also uses pre-evaluated positions?
Stockfish and other AB-type engines use a type of evaluation and NN-type engines use an other type of evaluation.
The concrete method of evaluation is not a philosophical question but a technical question.
Training a neural network to evaluate a position is like tuning the SF evaluation coefficients to make it better predict game results given a position, because ultimately, that's what evaluation functions are supposed to do. If you have a function that can tell you whether a position is won or loss given perfect play, you have solved chess.
Where is a predictor in an AB engine?
When NN engine plays it does not evaluate positions but read out the possibilities what belong to that position and it uses these possibilities to search for the best move sequence.
Opposite to this, AB engines itself evaluate every each necessary position and it gives the value of evaluation (centi-pawn, manly) to every each analyzed position.
The substance is, in the case of NN-type engine the evaluation of every each position contained by the NN happened during self-play of NN engine, but in the case of AB-type engine the evaluation happens the course of search.
When developers optimize the parameters of an AB engines they can not make optimization for every each position what AB engine will analyze. So parameter optimization of AB engine is not equivalent to NN engine self-playing.
[qoute=matthewlai post_id=784420 time=1546173816 user_id=1759]
Neither NNs nor Stockfish evaluation terms memorize sequences.
[/quote]
I wrote: NN engine SEARCH for sequence of moves.
During search NN engine rests on the results of the self-play stored in NN.
-
- Posts: 27796
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
-
- Posts: 3657
- Joined: Wed Nov 18, 2015 11:41 am
- Location: hungary
Re: Recent Alpha zero vs Stockfish 8 match.
There is a fundamental difference: NN engine gives the own predictions to every each positions but AB engine uses the same move ordering ("prediction" ?) to the same type of move.
-
- Posts: 27796
- Joined: Fri Mar 10, 2006 10:06 am
- Location: Amsterdam
- Full name: H G Muller
Re: Recent Alpha zero vs Stockfish 8 match.
That is of course not possible, because different positions have different moves. In reality the sort key of an alpha-beta engine depends not just on the move, but also on other aspects of the position. Like whether there is something on the to-square, what it is, whether there are other pieces around that can also reach the to-square, perhaps whether there are enemy pieces around that can go to the from-square... Not fundamentally different from what the NN does.
Furthermore it seems to me that what you claim about the NN is 100% speculation on your part, not based on any real data. What is your proof that the move ordering recommended by the policy head of the NN isn't very similar to the conventional move ordering in conventional alpha-beta engines? (Except that we know it doesn't do null move.)
Furthermore it seems to me that what you claim about the NN is 100% speculation on your part, not based on any real data. What is your proof that the move ordering recommended by the policy head of the NN isn't very similar to the conventional move ordering in conventional alpha-beta engines? (Except that we know it doesn't do null move.)
-
- Posts: 3657
- Joined: Wed Nov 18, 2015 11:41 am
- Location: hungary
Re: Recent Alpha zero vs Stockfish 8 match.
Where is your proof about the similarity between AB move ordering and the move prediction of NN?hgm wrote: ↑Sun Dec 30, 2018 6:33 pm That is of course not possible, because different positions have different moves. In reality the sort key of an alpha-beta engine depends not just on the move, but also on other aspects of the position. Like whether there is something on the to-square, what it is, whether there are other pieces around that can also reach the to-square, perhaps whether there are enemy pieces around that can go to the from-square... Not fundamentally different from what the NN does.
Furthermore it seems to me that what you claim about the NN is 100% speculation on your part, not based on any real data. What is your proof that the move ordering recommended by the policy head of the NN isn't very similar to the conventional move ordering in conventional alpha-beta engines? (Except that we know it doesn't do null move.)
I think the developers of Leela and A0 have direct proofs.
But the different playing stile strongly renders the difference in prediction.
Or you think what I wrote about NN is it also a complot theory?
I know this is your favorite presuming.
-
- Posts: 1080
- Joined: Fri Sep 16, 2016 6:55 pm
- Location: USA/Minnesota
- Full name: Leo Anger
Re: Recent Alpha zero vs Stockfish 8 match.
Thanks Mathew for joining in on Talkchess.matthewlai wrote: ↑Sun Dec 30, 2018 1:43 pmThat's not how it works. A neural network is a function approximator - it looks at data and try to extract patterns that can be applied to positions it hasn't seen before.corres wrote: ↑Sun Dec 30, 2018 12:49 pm NN keeps the results of the self play.
When you use an NN-type engine the engine does nothing but search for sequence of moves in NN.
Do you think Stockfish also uses pre-evaluated positions?
Stockfish and other AB-type engines use a type of evaluation and NN-type engines use an other type of evaluation.
The concrete method of evaluation is not a philosophical question but a technical question.
Training a neural network to evaluate a position is like tuning the SF evaluation coefficients to make it better predict game results given a position, because ultimately, that's what evaluation functions are supposed to do. If you have a function that can tell you whether a position is won or loss given perfect play, you have solved chess.
Neither NNs nor Stockfish evaluation terms memorize sequences.
Advanced Micro Devices fan.