mirror of
https://github.com/HChaZZY/Stockfish.git
synced 2025-12-26 20:16:14 +08:00
Replace the old loss/grad calculation completely.
This commit is contained in:
@@ -195,7 +195,6 @@ namespace Eval::NNUE {
|
||||
uint64_t epoch,
|
||||
bool verbose,
|
||||
double learning_rate,
|
||||
Learner::CalcGradFunc calc_grad,
|
||||
Learner::CalcLossFunc calc_loss)
|
||||
{
|
||||
using namespace Learner::Autograd::UnivariateStatic;
|
||||
@@ -237,8 +236,8 @@ namespace Eval::NNUE {
|
||||
e.sign * network_output[b] * kPonanzaConstant));
|
||||
const auto discrete = e.sign * e.discrete_nn_eval;
|
||||
const auto& psv = e.psv;
|
||||
const double gradient =
|
||||
e.sign * calc_grad(shallow, (Value)psv.score, psv.game_result, psv.gamePly);
|
||||
const auto loss = calc_loss(shallow, (Value)psv.score, psv.game_result, psv.gamePly);
|
||||
const double gradient = loss.grad * e.sign * kPonanzaConstant;
|
||||
gradients[b] = static_cast<LearnFloatType>(gradient * e.weight);
|
||||
|
||||
|
||||
@@ -330,4 +329,4 @@ namespace Eval::NNUE {
|
||||
#endif
|
||||
out << "INFO (save_eval): Finished saving evaluation file in " << eval_dir << std::endl;
|
||||
}
|
||||
} // namespace Eval::NNUE
|
||||
} // namespace Eval::NNUE
|
||||
|
||||
Reference in New Issue
Block a user