Skip to main content

GPie: Gaussian Process tiny explorer

Project description

GPie

Language Python PyPI License

Gaussian Process tiny explorer

  • simple: an intuitive syntax inspired by scikit-learn
  • minimal: a compact core of expressive abstractions
  • extensible: a modular design for effortless composition
  • lightweight: as few dependencies as possible

This is a ongoing research project with many parts currently under construction - please expect bugs and sharp edges.

Features

  • several "avant-garde" kernels such as spectral kernel and neural kernel allow for exploration of new ideas
  • each kernel implements anisotropic variant besides isotropic one to support automatic relevance determination
  • a full-fledged toolkit of kernel operators enables all sorts of "kernel engineering", for example handcrafting composite kernels based on expert knowledge or exploiting special structure of datasets
  • core computations such as likelihood and analytical gradient are carefully formulated for speed and robustness
  • Bayesian optimizer offers a powerful strategy in optimizing expensive-to-evaluate, black-box objectives

Functionality

  • kernel functions
    • white kernel
    • constant kernel
    • radial basis function kernel
    • rational quadratic kernel
    • Matérn kernel
      • Ornstein-Uhlenbeck kernel
    • periodic kernel
    • spectral kernel
    • neural kernel
  • kernel operators
    • Hadamard (element-wise)
      • sum
      • product
      • exponentiation
    • Kronecker
      • sum
      • product
  • Gaussian process
    • regression
    • classification
  • t process
    • regression
    • classification
  • Bayesian optimizer
    • surrogate: Gaussian process, t process
    • acquisition: lower confidence bound, etc
  • sampling inference
    • Markov chain Monte Carlo
      • Metropolis-Hastings
      • Hamiltonian
      • no-U-turn
    • simulated annealing
  • variational inference

Parts of the project in italic font are under construction.

Examples

Gaussian process regression on Mauna Loa CO2

In this example, we use Gaussian process to model the concentration of CO2 at Mauna Loa as a function of time. alt text In the plot, scattered dots represent historical observations, and shaded area shows the prediction interval made by a Gaussian process regressor trained on historical data.

Installation

The fastest way to install GPie is from a prebuilt wheel using pip:

pip install --upgrade gpie

You can also install from source to try out the latest features (pep517>=0.8.0 and setuptools>=40.9.0 are needed):

pip install --upgrade git+https://github.com/zackxzhang/gpie

Backend

  • numpy: linear algebra, stochastic sampling
  • scipy: optimization, stochastic sampling

Project details


Download files

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

Source Distribution

gpie-0.1.2.tar.gz (21.4 kB view details)

Uploaded Source

Built Distribution

gpie-0.1.2-py3-none-any.whl (26.2 kB view details)

Uploaded Python 3

File details

Details for the file gpie-0.1.2.tar.gz.

File metadata

  • Download URL: gpie-0.1.2.tar.gz
  • Upload date:
  • Size: 21.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0.post20200714 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.3

File hashes

Hashes for gpie-0.1.2.tar.gz
Algorithm Hash digest
SHA256 c93b2ffecad4379d256ecc00edf8e32791da13a73ad151b56f7cd8675a52952f
MD5 62e4ac0f7c7863f38d3aae4c05c90c04
BLAKE2b-256 5ca3929281d5d64312c11239dfb8957d4e7d0ce77fc08ba1ba280085fbe4f997

See more details on using hashes here.

File details

Details for the file gpie-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: gpie-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 26.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0.post20200714 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.3

File hashes

Hashes for gpie-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9a491798ff35c75fd138d33c6e0076faf1f11de0f62b90961209663c0fcc1cf8
MD5 bd49b22dd2a3daeaeac834dd3d8983e7
BLAKE2b-256 ecf61d387efd34289117f072a41179331d167a0229a00f3e64403e00e77687a3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page