Skip to main content

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

Release files for gplib 0.13.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gplib 0.13.2
File Size Uploaded
gplib-0.13.2.tar.gz 33.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for gplib 0.13.2
File Interpreter ABI Platform
gplib-0.13.2-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 109.5 kB

Release files / gplib-0.13.2.tar.gz

Download URL gplib-0.13.2.tar.gz
Size 33.4 kB
Tags Source
SHA-256 checksum
How to use checksums
7f5802b9ab51409cca97cce6c810ade14aadb5f45b05dea3ac5f56bcc03841de
BLAKE2b-256 checksum
How to use checksums
3f4a712801586168dae37b10e37a3e0bdbbd800b330ea52d75f1208782503e78
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.6.9

Release files / gplib-0.13.2-py2.py3-none-any.whl

Download URL gplib-0.13.2-py2.py3-none-any.whl
Size 76.0 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
6fbbb17c8665203c96e9e79251b085475b3cf5391cc1ec1dd29dfb37ed7f3aa5
BLAKE2b-256 checksum
How to use checksums
b44e807e3a6f7c515e98c4e1c2c158887947edaddcabad81f629da118a76681b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.6.9

Release history Release notifications | RSS feed

0.17.3

2 release files

0.17.2

2 release files

0.17.1

2 release files

0.17.0

2 release files

0.16.5

2 release files

0.16.4

2 release files

0.16.3

2 release files

0.16.2

2 release files

0.16.1

2 release files

0.16.0

2 release files

0.15.3

2 release files

0.15.2

2 release files

0.15.1

2 release files

0.14.9

2 release files

0.14.8

2 release files

0.14.7

2 release files

0.14.4

2 release files

0.14.3

2 release files

0.14.2

2 release files

0.14.1

2 release files

0.14.0

2 release files

0.13.4

2 release files

This release

0.13.2 This release

2 release files

0.13.0

2 release files

0.12.4

2 release files

0.12.3

2 release files

0.12.2

2 release files

0.12.1

2 release files

0.12.0

2 release files

0.11.5

2 release files

0.11.4

2 release files

0.11.3

2 release files

0.11.2

2 release files

0.11.1

2 release files

0.11.0

2 release files

0.10.3

2 release files

0.10.2

2 release files

0.9.2

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.12

2 release files

0.8.11

2 release files

0.8.9

2 release files

0.8.8

2 release files

0.8.7

2 release files

0.8.6

2 release files

0.8.5

2 release files

0.8.4

2 release files

0.8.3

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.2

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.17

2 release files

0.6.16

2 release files

0.6.15

2 release files

0.6.12

2 release files

0.6.11

2 release files

0.6.10

2 release files

0.6.9

2 release files

0.6.8

2 release files

0.6.7

2 release files

0.6.6

2 release files

0.6.5

2 release files

0.6.4

2 release files

0.6.3

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.13

2 release files

0.5.11

2 release files

0.5.9

2 release files

0.5.8

2 release files

0.5.7

2 release files

0.5.6

2 release files

0.5.5

2 release files

0.5.4

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page