Codes of models and data processing for paper "Automated Chess Commentator Powered by Neural Chess Engine, Hongyu Zang, Zhiwei Yu and Xiaojun Wan, ACL2019" (pdf) will be released in this repo.
(Zhiwei and me contribute equally in this paper.)
- Data preparation
- Make sure you follow this repo to get the basic dataset in
data/crawler
- Ask the permission from Jhamtani et.al for the distribution of
annotation2.tsv
,rules.txt
, and their processed dataset with[train/test/valid]_[0/1/2].en
for data pre-processing. - Put the above file into
data/mycrawler/data/
, and run the scripts (to be detailed) indata/mycrawler/
to getdata/mycrawler/data/[train/valid/test].pickle
- Make sure you follow this repo to get the basic dataset in
- Experiment environments
- Python 3.5, Tensorflow 1.8
- Necessary: GAC, alpha-zero-general
- In case you need: Arena, deep-pink, sunfish
- Training
- to be detailed
- Test the chess engine
- Install Arena in
arena/
. Getsunfish
anddeep-pink
in corresponding folders. Replace with files already in the folders. - Download the checkpoint use the links in
chess-agent/SCC/links
- Run Arena and compete with our model by adding
chess-agent/engine
into Arena engines. (to be detailed)
- Install Arena in
- Reproduce the results
- Get
Data preparation
Done. - Download the checkpoint use the links in
chess-agent/SCC/links
cd chess-agent/
python main.py -c mixall
- Get
-
The codes and README is still updating, more details will be cleared. Please be patient.
-
You can check previous most related work about Chess Commentary (GAC).
-
We also use the dataset provided by GAC. You may need to require the permission of distributions of the processed data and scripts from Jhamtani et al. (see previous link).
-
We build our chess agent on alpha-zero-general. If you are interested, you can learn and extend this project.