mirror of
https://github.com/sockspls/badfish
synced 2025-04-30 16:53:09 +00:00

Further tune the net parameters, now the last but one layer (32x32). To limit the number of parameters optimized, the network layer was decomposed using SVD, and the singular values were treated as parameters and tuned. Tuning branch: https://github.com/vondele/Stockfish/tree/svdTune Tuner: https://github.com/vondele/nevergrad4sf passed STC: https://tests.stockfishchess.org/tests/view/5f83e82f8ea73fb8ddf83e4e LLR: 2.94 (-2.94,2.94) {-0.25,1.25} Total: 8488 W: 944 L: 795 D: 6749 Ptnml(0-2): 39, 609, 2811, 734, 51 passed LTC: https://tests.stockfishchess.org/tests/view/5f83f4118ea73fb8ddf83e66 LLR: 2.94 (-2.94,2.94) {0.25,1.25} Total: 169016 W: 8043 L: 7589 D: 153384 Ptnml(0-2): 133, 6623, 70538, 7085, 129 closes https://github.com/official-stockfish/Stockfish/pull/3181 Bench: 3945198
52 lines
1.5 KiB
C++
52 lines
1.5 KiB
C++
/*
|
|
Stockfish, a UCI chess playing engine derived from Glaurung 2.1
|
|
Copyright (C) 2004-2020 The Stockfish developers (see AUTHORS file)
|
|
|
|
Stockfish is free software: you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation, either version 3 of the License, or
|
|
(at your option) any later version.
|
|
|
|
Stockfish is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
#ifndef EVALUATE_H_INCLUDED
|
|
#define EVALUATE_H_INCLUDED
|
|
|
|
#include <string>
|
|
|
|
#include "types.h"
|
|
|
|
class Position;
|
|
|
|
namespace Eval {
|
|
|
|
std::string trace(const Position& pos);
|
|
Value evaluate(const Position& pos);
|
|
|
|
extern bool useNNUE;
|
|
extern std::string eval_file_loaded;
|
|
|
|
// The default net name MUST follow the format nn-[SHA256 first 12 digits].nnue
|
|
// for the build process (profile-build and fishtest) to work. Do not change the
|
|
// name of the macro, as it is used in the Makefile.
|
|
#define EvalFileDefaultName "nn-04cf2b4ed1da.nnue"
|
|
|
|
namespace NNUE {
|
|
|
|
Value evaluate(const Position& pos);
|
|
bool load_eval(std::string name, std::istream& stream);
|
|
void init();
|
|
void verify();
|
|
|
|
} // namespace NNUE
|
|
|
|
} // namespace Eval
|
|
|
|
#endif // #ifndef EVALUATE_H_INCLUDED
|