Asynchronous [black-box] Optimization
Project description
Oríon is an asynchronous framework for black-box function optimization.
Its purpose is to serve as a meta-optimizer for machine learning models and training, as well as a flexible experimentation platform for large scale asynchronous optimization procedures.
Core design value is the minimum disruption of a researcher’s workflow. It allows fast and efficient tuning, providing minimum simple non-intrusive (not even necessary!) helper client interface for a user’s script.
So if ./run.py --mini-batch=50 looks like what you execute normally, now what you have to do looks like this:
orion -n experiment_name ./run.py --mini-batch~'randint(32, 256)'
Check out our getting started guide or this presentation for an overview, or our scikit-learn example for a more hands-on experience. Finally we encourage you to browse our documentation.
Why Oríon?
Effortless to adopt, deeply customizable
- Adopt it with a single line of code
- Natively asynchronous, thus resilient and easy to parallelize
- Offers the latest established hyperparameter algorithms
- Elegant and rich search-space definitions
- Comprehensive configuration system with smart defaults
- Transparent persistence in local or remote database
- Integrate seamlessly your own hyper-optimization algorithms
- Language and configuration file agnostic
Installation
Install Oríon by running $ pip install orion. For more information consult the installation guide.
Contribute or Ask
Do you have a question or issues? Do you want to report a bug or suggest a feature? Name it! Please contact us by opening an issue in our repository below and checkout our contribution guidelines:
- Issue Tracker: https://github.com/epistimio/orion/issues
- Source Code: https://github.com/epistimio/orion
Start by starring and forking our Github repo!
Thanks for the support!
Citation
If you use Oríon for published work, please cite our work using the following bibtex entry.
@software{xavier_bouthillier_2020_4265424, author = {Xavier Bouthillier and Christos Tsirigotis and François Corneau-Tremblay and Thomas Schweizer and Pierre Delaunay and Mirko Bronzi and Lin Dong and Reyhane Askari and Dendi Suhubdy and Hadrien Bertrand and Michael Noukhovitch and Arnaud Bergeron and Dmitriy Serdyuk and Peter Henderson and Pascal Lamblin and Christopher Beckham}, title = {{Epistimio/orion: Plotting API and Database commands}}, month = nov, year = 2020, publisher = {Zenodo}, version = {v0.1.11}, doi = {10.5281/zenodo.3478592}, url = {https://doi.org/10.5281/zenodo.3478592} }
Roadmap
See ROADMAP.md.
License
The project is licensed under the BSD license.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size orion-0.1.12-py2.py3-none-any.whl (238.3 kB) | File type Wheel | Python version py2.py3 | Upload date | Hashes View |
Filename, size orion-0.1.12.tar.gz (2.2 MB) | File type Source | Python version None | Upload date | Hashes View |
Hashes for orion-0.1.12-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9741609ff432d67291a7c94f9ae7a72349c5191f39fd1ad6ebcfa9dd7c65b26f |
|
MD5 | e0136d0a86012eca7e6a21827c9912b3 |
|
BLAKE2-256 | 1e49f6421720b09d0881587fa3fbfaaaae6186f31d8cd32c9431df7c9917669d |