A repository using a Bayesian hierarchical model to try to predict the outcomes of FIDE chess world cup games in 2019. The model fits an ordered logistic regression model and learns a per player ability rating.
Clone the repository then create the conda environment:
git clone [email protected]:maw501/bayesian-chess-prediction.git
cd bayesian-chess-prediction
conda env create -f environment.yml
In order to use the conda environment in a notebook run:
python -m ipykernel install --user --name=chess
There are example notebooks outlining the problem and parts of the Bayesian workflow.
0.overview_of_problem.ipynb
: introduces the dataset and a simple GLM model.1.fake_data_and_prior_simulation.ipynb
: simulating fake data and fitting a model to it and prior-predictive simulation.2.fit_ordered_logistic_model.ipynb
fit a model to the dataset.3.machine_learning_baseline.ipynb
: step back and fit another machine learning model to provide a benchmark for performance.
Less finished notebooks are in the notebooks/investigations
folder. These include fitting a simpler model that doesn't learn a per player ability rating.