Skip to main content

Toolkit for decision making under uncertainty.

Project description

Emukit

Build Status | Documentation Status | Tests Coverage | GitHub License

Website | Documentation | Contribution Guide

Emukit is a highly adaptable Python toolkit for enriching decision making under uncertainty. This is particularly pertinent to complex systems where data is scarce or difficult to acquire. In these scenarios, propagating well-calibrated uncertainty estimates within a design loop or computational pipeline ensures that constrained resources are used effectively.

The main features currently available in Emukit are:

  • Multi-fidelity emulation: build surrogate models when data is obtained from multiple information sources that have different fidelity and/or cost;
  • Bayesian optimisation: optimise physical experiments and tune parameters of machine learning algorithms;
  • Experimental design/Active learning: design the most informative experiments and perform active learning with machine learning models;
  • Sensitivity analysis: analyse the influence of inputs on the outputs of a given system;
  • Bayesian quadrature: efficiently compute the integrals of functions that are expensive to evaluate.

Emukit is agnostic to the underlying modelling framework, which means you can use any tool of your choice in the Python ecosystem to build the machine learning model, and still be able to use Emukit.

Installation

To install emukit, simply run

pip install emukit

For other install options, see our documentation.

Dependencies / Prerequisites

Emukit's primary dependencies are Numpy and GPy. See requirements.

Getting started

For examples see our tutorial notebooks.

Documentation

To learn more about Emukit, refer to our documentation.

To learn about emulation as a concept, check out the Emukit playground project.

Citing the library

If you are using emukit, we would appreciate if you could cite our paper in your research:

@inproceedings{emukit2019,
  author = {Paleyes, Andrei and Pullin, Mark and Mahsereci, Maren and Lawrence, Neil and González, Javier},
  title = {Emulation of physical processes with Emukit},
  booktitle = {Second Workshop on Machine Learning and the Physical Sciences, NeurIPS},
  year = {2019}
}

License

Emukit is licensed under Apache 2.0. Please refer to LICENSE and NOTICE for further license information.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

emukit-0.4.9.tar.gz (161.4 kB view hashes)

Uploaded source

Built Distribution

emukit-0.4.9-py3-none-any.whl (241.4 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page