Changes

Jump to: navigation, search

Stockfish NNUE

5 bytes added, 16:30, 14 August 2020
no edit summary
The [[Neural Networks|neural network]] consists of four layers. The input layer is heavily overparametrized, feeding in the [[Board Representation|board representation]] for all king placements per side.
The efficiency of [[NNUE]] is due to [[Incremental Updates|incremental update]] of the input layer outputs in [[Make Move|make]] and [[Unmake Move|unmake move]],
where only a tiny fraction of its neurons need to be considered <ref>[http://www.talkchess.com/forum3/viewtopic.php?f=7&t=74531&start=1 Re: NNUE accessible explanation] by [[Jonathan Rosenthal]], [[CCC]], July 23, 2020</ref>. The remaining three layers with 256x2x32-2x256x32, 32x32-and 32x1 neurons weights are computational less expensive, best calculated using appropriate [[SIMD and SWAR Techniques|SIMD instructions]] performing fast [[Word|16-bit integer]] arithmetic, like [[SSE2]] or [[AVX2]] on [[x86-64]], or if available, [[AVX-512]].
[[FILE:StockfishNNUELayers.png|none|border|text-bottom|1024px]]

Navigation menu