Answers.Body: <p>NNUE was originally trained on depth 8 to 10 handcrafted eval. This is significantly stronger than a single node evaluation.</p>
  <p>Edit March 2024: More modern versions of SF are trained on data from LC0.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-02-25T02:53:13.567Z
Answers.LastActivityDate: 2024-03-21T00:51:26.557Z
Answers.LastEditDate: 2024-03-21T00:51:26.557Z
Answers.UserDisplayName: Oscar Smith
Answers.Body: <blockquote>
  <p>as far as I understand it, Stockfish NNUE was (<em><strong>at least in early stages</strong></em>) trained by positions which were evaluated by the hand-crafted eval. function by stockfish</p>
  </blockquote>
  <p>And after the early stages the neural network was built up by continual training.</p>
  <blockquote>
  <p>The question I have is, why the NNUE is stronger than the hand-crafted eval?</p>
  </blockquote>
  <p>Because it is more than the hand-crafted eval which was only used to speed up the initial training process.</p>
  <blockquote>
  <p>Since the ANN was trained using the hand-crafted function, it only represents it using an ANN?</p>
  </blockquote>
  <p>No. The finished product is much more than the had crafted evaluation. It incorporates additional evaluations which it &quot;discovered&quot; during training.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-02-26T20:14:25.297Z
Answers.Text: Okay, thank you. How did the training then continue? I'm guessing that supervised learning wasn't used, because backpropagation couldn't be applied, right? So the ANN was then trained using reinforcement learning?
Answers.UserDisplayName: Phil3453
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-02-24T11:51:51.440Z
Answers.LastActivityDate: 2022-02-24T11:51:51.440Z
Answers.UserDisplayName: Brian Towers
Body: <p>I read up on Stockfish NNUE and as far as I understand it, Stockfish NNUE was (at least in early stages) trained by positions which were evaluated by the hand-crafted eval. function by stockfish.
  The question I have is, why the NNUE is stronger than the hand-crafted eval? Since the ANN was trained using the hand-crafted function, it only represents it using an ANN? Is that correct, or is my understanding wrong?</p>
  <p>From what I've read, the search speed with the hand-crafted eval. was around 100 Million Positions. Search speed using the NNUE was around 60. Million. Therefore, the hand-crafted eval should be stronger.</p>
  <p>What am I missing?</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2022-02-24T12:19:06.497Z
Comments.Text: IIRC it wasn't train on plain eval but rather a search result from strong SF. The old SF eval is how good SF plays at depth 1 (or 0 if you will). But if you train a NN to play like old SF at depth 10 that would be way way stronger. (and then of course you still use that search on top of NNue)
Comments.UserDisplayName: koedem
Tags: <stockfish><evaluation>
Title: Stockfish NNUE vs handcrafted Evaluation
ThreadText: # Stockfish NNUE vs handcrafted Evaluation
  
  (Asked by: username_0 on 2022-02-24)
  
  I read up on Stockfish NNUE and as far as I understand it, Stockfish NNUE was (at least in early stages) trained by positions which were evaluated by the hand-crafted eval. function by stockfish.
  The question I have is, why the NNUE is stronger than the hand-crafted eval? Since the ANN was trained using the hand-crafted function, it only represents it using an ANN? Is that correct, or is my understanding wrong?
  
  From what I've read, the search speed with the hand-crafted eval. was around 100 Million Positions. Search speed using the NNUE was around 60. Million. Therefore, the hand-crafted eval should be stronger.
  
  What am I missing?
  
  **Tags:** stockfish, evaluation
  
  > **Comments:**
  > **username_1**: IIRC it wasn't train on plain eval but rather a search result from strong SF. The old SF eval is how good SF plays at depth 1 (or 0 if you will). But if you train a NN to play like old SF at depth 10 that would be way way stronger. (and then of course you still use that search on top of NNue)  
  
  ---
  
  ## 2 answers
  
  ### Answer by username_2 on 2022-02-25. Score: 2
  
  NNUE was originally trained on depth 8 to 10 handcrafted eval. This is significantly stronger than a single node evaluation.
  
  Edit March 2024: More modern versions of SF are trained on data from LC0.
  
  
  ---
  
  ### Answer by username_3 on 2022-02-24. Score: 0
  
  > as far as I understand it, Stockfish NNUE was (***at least in early stages***) trained by positions which were evaluated by the hand-crafted eval. function by stockfish
  
  And after the early stages the neural network was built up by continual training.
  
  > The question I have is, why the NNUE is stronger than the hand-crafted eval?
  
  Because it is more than the hand-crafted eval which was only used to speed up the initial training process.
  
  > Since the ANN was trained using the hand-crafted function, it only represents it using an ANN?
  
  No. The finished product is much more than the had crafted evaluation. It incorporates additional evaluations which it "discovered" during training.
  
  > **Comments:**
  > **username_0**: Okay, thank you. How did the training then continue? I'm guessing that supervised learning wasn't used, because backpropagation couldn't be applied, right? So the ANN was then trained using reinforcement learning?  
  
  ---
  
  