https://github.com/babayara/gp-parallel-ts

Parallelised Thompson Sampling in GPs for Bayesian Optimisation

https://github.com/babayara/gp-parallel-ts

Science Score: 10.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: arxiv.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.2%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Parallelised Thompson Sampling in GPs for Bayesian Optimisation

Basic Info
  • Host: GitHub
  • Owner: BabaYara
  • License: mit
  • Language: Fortran
  • Default Branch: master
  • Size: 151 KB
Statistics
  • Stars: 0
  • Watchers: 2
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Fork of kirthevasank/gp-parallel-ts
Created over 8 years ago · Last pushed over 8 years ago

https://github.com/BabaYara/gp-parallel-ts/blob/master/

## gp-parallel-ts
This is a python implementation of parallelised Bayesian optimisation via Thompson
sampling. For more details, see our paper below.

### Download
You can download the code from github
```bash
$ git clone https://github.com/kirthevasank/gp-parallel-ts
```

### Installation & Getting Started
- Run `source set_up_thompson` to set up all environment variables.
- You also need to build the direct fortran library. For this `cd` into
  `direct_fortran` and run `bash make_direct.sh`. You will need a fortran compiler
  such as gnu95. Once this is done, you can run `simple_direct_test.py` to make sure that
  it was installed correctly.
- To test the installation, run `bash run_all_tests.sh`. Some of the tests are
  probabilistic and could fail at times. If this happens, run the same test several times
  and make sure it is not consistently failing.

### Demo
- Check demo_simtime.py for a demo on how to run experiments with simulated time values
  (see paper below for experiments).
- We will also include a demo for real time experiments soon, but for now you can check
  out resnet_experiments/resnet_function_caller.py to see how to set it up. You need to
  use the
[RealWorkerManager](https://github.com/kirthevasank/gp-parallel-ts/blob/master/bo/worker_manager.py) class under bo/worker_manager.py

### Some notes
- We choose the GP hyper-parameters every 25 iterations via marginal likelihood
  maximisation for each GP. The chosen values are printed out.
- We report progress on the optimisation every 20 iterations.

### Citation
If you use any part of this code in your work, please cite our
[Arxiv paper](https://arxiv.org/pdf/1705.09236.pdf):

```bibtex
@article{kandasamy2017asynchronous,
  title={Asynchronous Parallel Bayesian Optimisation via Thompson Sampling},
  author={Kandasamy, Kirthevasan and Krishnamurthy, Akshay and Schneider, Jeff and Poczos, Barnabas},
  journal={arXiv preprint arXiv:1705.09236},
  year={2017}
}
```


### License
This software is released under the MIT license. For more details, please refer
[LICENSE.txt](https://github.com/kirthevasank/gp-parallel-ts/blob/master/LICENSE.txt).

"Copyright 2017 Kirthevasan Kandasamy"

- For questions and bug reports please email kandasamy@cs.cmu.edu

Owner

  • Name: Baba-yara
  • Login: BabaYara
  • Kind: user
  • Location: Portugal
  • Company: Nova School of Business and Economics

I am a Ph.D. candidate at NOVA SBE who combines machine-learning with econometrics in the study of asset pricing.

GitHub Events

Total
Last Year