Wanna test out Bayesian Optimization with jupyter notebook support?
Docker files to test-out Spearmint PESM with Python 2 and 'Vanilla' Spearmint with Python 3.
The docker image is based off of https://github.com/beangoben/pimp_jupyter, a scientific jupyter notebook image with enabled nbextensions. Also included:
- MongoDB (+ pymongo)
- Spearmint PESC is from https://github.com/HIPS/Spearmint/tree/PESC
- Each version also has access to NLOPT http://ab-initio.mit.edu/wiki/index.php/NLopt
- There are two test scripts that show how to run for each version a simple Bayesian Optimization on branin
Don't forget to read the license and cite the work! (Check original githubs for more info)
To run the software on any computer you need to install docker.
Then you can either download or build the docker image.
To download running the following command in your favorite terminal:
docker pull beangoben/spearmint_docker
of build it (good to change things) by moving to the git cloned repository :
docker build -t "beangoben/spearmint_docker" .
And then move to whatever folder you want to work with and execute:
docker run -p 8888:8888 -v "$(pwd)":/home/jovyan/work -it beangoben/spearmint_docker
You can also execute spearmint directly on your experiment folder "test_py2" using:
docker run -p 8888:8888 -v "$(pwd)":/home/jovyan/work -it beangoben/spearmint_docker start.sh ./run_experiment.sh test
Basically a utility wrapped for the above command with three inputs, only the first is required: EXP_DIR (experiment name, i.g. test_py2), PY (default is py2) and PORT (default is 8888).
Some examples of running this are:
./run_spearmint.sh test_2 8890
./run_spearmint.sh test