Neural net for other parts of the engine

486 views
Skip to first unread message

Graci Henn

unread,
May 2, 2021, 3:29:44 AMMay 2
to FishCooking
Is it possible to also create a nnue net on other parts of the engine let's say search or time management like it did on evaluation? Let's say create weights on search or time management variables and tune then like nnue on eval has been tuned. Or does Lc0 already do this?

Nickolas

unread,
May 16, 2021, 3:55:25 PMMay 16
to FishCooking
Leela is more or less entirely NN-driven, if you ignore the vast influence of the human-directed experiments and decisions that resulted in the underlying architecture we have today. But yes, Leela uses its neural network both as an evaluation function and to generate a "policy" that guides the MCTS-like process by which the game tree is traversed.

There's no fundamental reason why Stockfish's NNUE couldn't be modified to additionally output a move ordering, decisions on pruning, extensions, and reductions, etc. But you would probably want to make use of at least some of the extra input features and processes currently used in the handcrafted search heuristics, like SEE, MVV-LVA, various killer/countermove/history tables, various statistics like depth and aspiration windows, quiescence, just to name a few. So it definitely wouldn't be anywhere near as simple as integrating the NNUE evaluation function into Stockfish was.

Ivan Ivec

unread,
Jun 17, 2021, 3:04:10 AMJun 17
to FishCooking
I also think this is a right direction: one network for evaluation and one for search decisions.
And this should be done better than in Leela, as Leela's search is too slow.

Reply all
Reply to author
Forward
0 new messages