Skip to content

Rescoring Training Data

dkappe edited this page Feb 7, 2020 · 10 revisions

Rescorer

The rescorer binary is a special compile of lc0, which you can clone from Tilps' fork of lc0.

git clone -b rescore_tb --recurse-submodules https://github.com/Tilps/lc0 rescorer

Setup for compilation

I have a virtualenv for compiling lc0. Here are the requirements you can feed to pip. For more info on compiling lc0, check the lc0 github repo.

meson==0.52.1
ninja==1.9.0.post1
pkg-resources==0.0.0

Building

I'm using ubuntu, but Windows should be vaguely similar. Hopefully everything is configured properly and you can just go to the source directory and type

./build.sh

After much downloading of protobuf and compiling, a lc0 binary should be in build/release and ready to be copied to a directory. I create a bin directory. A ls -l should show the following:

-rwxr-xr-x 1 dkappe dkappe 1912720 Feb  6 23:15 rescorer
drwxr-xr-x 3 dkappe dkappe    4096 Feb  6 23:17 rescorer@exe
drwxr-xr-x 4 dkappe dkappe    4096 Feb  6 23:17 subprojects

The Data

I have a directory called t60 to which I have downloaded some training files:

drwxr-xr-x 2 dkappe dkappe 598016 Dec  8 06:17 training-run1-20191208-1217
drwxr-xr-x 2 dkappe dkappe 286720 Dec  8 07:17 training-run1-20191208-1317

Both of those directories have files of the form training.30837054.gz that contain the training records for one game.

Rescoring with Syzygy

A little help can be had with ./bin/rescorer rescore --help

Some important snippets:

       --syzygy-paths=STRING
               List of Syzygy tablebase directories

       --gaviotatb-paths=STRING
               List of Gaviota tablebase directories

       --input=STRING
               Directory with gzipped files in need of rescoring.

       --output=STRING
               Directory to write rescored files.

IMPORTANT: RUNNING RESCORER WILL ERASE YOUR ORIGINAL TRAINING FILES.