Python library for Gaussian Process Regression.
Project description
A python library for Gaussian Process Regression.
Setup GPlib
Create and activate virtualenv (for python2) or venv (for python3)
# for python3
python3 -m venv .env
# or for python2
python2 -m virtualenv .env
source .env/bin/activate
Upgrade pip
python -m pip install --upgrade pip
Install GPlib package
python -m pip install gplib
Matplotlib requires to install a backend to work interactively (See https://matplotlib.org/faq/virtualenv_faq.html). The easiest solution is to install the Tk framework, which can be found as python-tk (or python3-tk) on certain Linux distributions.
Use GPlib
Import GPlib to use it in your python script.
import gplib
Initialize the GP with the desired modules.
gp = gplib.GP(
mean_function=gplib.mea.Fixed(),
covariance_function=gplib.cov.SquaredExponential(),
likelihood_function=gplib.lik.Gaussian(),
inference_method=gplib.inf.ExactGaussian()
)
Plot the GP.
gplib.plot.gp_1d(gp, n_samples=10)
Generate some random data.
import numpy as np
data = {
'X': np.arange(3, 8, 1.0)[:, None],
'Y': np.random.uniform(0, 2, 5)[:, None]
}
Get the posterior GP given the data.
posterior_gp = gp.get_posterior(data)
Finally plot the posterior GP.
gplib.plot.gp_1d(posterior_gp, data, n_samples=10)
There are more examples in examples/ directory. Check them out!
Develop GPlib
Download the repository using git
git clone https://gitlab.com/ibaidev/gplib.git
cd gplib
git config user.email 'MAIL'
git config user.name 'NAME'
git config credential.helper 'cache --timeout=300'
git config push.default simple
Update API documentation
source ./.env/bin/activate
pip install Sphinx
cd docs/
sphinx-apidoc -f -o ./ ../gplib
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
Hashes for gplib-0.12.3-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aa0cc90c7e5d4c4c3c083d54725019640ddcd28c666a4de6b710d70d5073e0fd |
|
MD5 | 58859d9f81f92e54a2869a14ca690bc2 |
|
BLAKE2b-256 | 48168390aa2955853a7cb8c9736dc765e7287e3ea16671cceba96692e3343ecd |