Deep and Linked Gaussian Process Emulation using Stochastic Imputation
Project description
dgpsi
dgpsi implements inference of both deep and linked Gaussian process emulation using stochastic imputation.
Key features
dgpsi currently has the following features:
- Deep Gaussian process emulation with flexible architecture construction:
- multiple layers;
- multiple GP nodes;
- separable or non-separable squared exponential and Matérn2.5 kernels;
- global input connections;
- non-Gaussian likelihoods (Poisson, Negative-Binomial, heteroskedastic Gaussian, and more to come);
- Linked emulation of feed-forward systems of computer models:
- linking GP emulators of deterministic individual computer models;
- linking GP and DGP emulators of deterministic individual computer models;
- (New Feature) Multi-core predictions from GP, DGP, and Linked (D)GP emulators;
- More features coming soon.
Please see demo for some illustrative examples of the method. The API reference of the package can be accessed from https://dgpsi.readthedocs.io.
Installation
The simplest way to install the package is to use pip:
pip install dgpsi
However, to gain the best performance of the package, we recommend the following steps for the installation:
- Download and install
Miniforge3that is compatible to your system from here. - Run the following command in your terminal app to create a virtual environment called
dgp_si:
conda create -n dgp_si python=3.9.13
- Activate and enter the virtual environment:
conda activate dgp_si
-
Install required packages:
- for Mac Silicon chip users, you could gain speed-up by switching to Apple's Accelerate framework by running:
conda install -c conda-forge cython pybind11 matplotlib tqdm jupyter dill pathos psutil numpy pythran scipy scikit-learn scikit-build numba "libblas=*=*accelerate"
- for Intel chip users, you could gain speed-up by switching to MKL by running:
conda install -c conda-forge cython pybind11 matplotlib tqdm jupyter dill pathos psutil numpy pythran scipy scikit-learn scikit-build numba "libblas=*=*mkl"
- otherwise, simply run:
conda install -c conda-forge cython pybind11 matplotlib tqdm jupyter dill pathos psutil numpy pythran scipy scikit-learn scikit-build numba
-
Install
dgpsipackage:
cd A-LOCATION-YOU-PREFER
git clone https://github.com/mingdeyu/DGP.git
cd DGP
pip install .
Tips
- Since SI is a stochastic inference, in case of unsatisfactory results, you may want to try to restart the training multiple times even with initial values of hyperparameters unchanged;
- The recommended DGP structure is a two-layered one with the number of GP nodes in the first layer equal to the number of input dimensions (i.e., number of input columns) and the number of GP nodes in the second layer equal to the number of output dimensions (i.e., number of output columns) or the number of parameters in the specified likelihood.
Contact
Please feel free to email me with any questions and feedbacks:
Deyu Ming <deyu.ming.16@ucl.ac.uk>.
References
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dgpsi-2.1.0.tar.gz.
File metadata
- Download URL: dgpsi-2.1.0.tar.gz
- Upload date:
- Size: 29.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9ab09ba923c2462f652507ef41b71a6ff5a8975f8cc3c63e8e7a3a9aeb43281b
|
|
| MD5 |
b79039cb5a45d74fa2805cc3532b7559
|
|
| BLAKE2b-256 |
8bf4445aadcff78d2f3180681c0b796424a5f2f43afa2950bd9b4d4f8f3335ff
|
File details
Details for the file dgpsi-2.1.0-py3-none-any.whl.
File metadata
- Download URL: dgpsi-2.1.0-py3-none-any.whl
- Upload date:
- Size: 32.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
01e23202a3a8abfba3ee18046b4907689645ba6261a85c8c0ad3416cda4f00d4
|
|
| MD5 |
09748adc5493ab283fd9841c24016344
|
|
| BLAKE2b-256 |
2f2ad14852993fb28426000a4fc2c25000a72dbe2265166631f2eeb2da5d24d8
|