Skip to main content

Python implementation of hetGP

Project description

hetGPy: Heteroskedastic Gaussian Process Modeling in Python

hetGPy is a Python implementation of the hetGP R library.

This package is designed to be a "pure" Python implementation of hetGP, with the goals of:

  • Matching the behavior of the R package
  • Having minimal dependencies, which are:
    • numpy and scipy for computations
    • matplotlib for visualization
    • joblib for parallelization
    • tqdm for progress bars

The motivation for such a package is due to the rising popularity of implementing simulation models (also known as computer experiments) in Python.

Documentation

The package documentation is available at: https://hetgpy.readthedocs.io/en/latest/

Installing and Environments

pypi

  • hetGPy is availalbe on pypi:
pip install hetgpy

Development Version:

python -m pip install git+https://github.com/davidogara/hetGPy.git
  • To build from the source files:
  1. Clone the repository. Make sure to include --recurve-submodules if you do not already have Eigen installed on your system:
git clone --recurse-submodules https://github.com/davidogara/hetGPy.git
  1. With hetGPy as your current working directory:
pip install -e .

We recommend installing in a virtual environment. One way to do this with venv is:

python3.10 -m venv .venv

After this you should be able to run the examples in the examples folder.

Note on Dependencies

  • hetGPy requires scipy>=1.14.0 which fixed a memory leakage issue when using L-BFGS-B in scipy.optimize.minizmize. That version of scipy requires Python 3.10.

  • Since hetGPy is designed for large-scale problems, this was chosen as a necessary feature. Experienced users may be able to roll back some of the dependencies, but this is not the recommended use.

  • hetGPy also requires a c++17 compiler and Eigen for the underlying covariance functions. Eigen 3.4.0 is included with the source files (and is a submodule of the git repository), but experienced users may wish to link against their own installation.

Contact

For questions regarding this package, please contact:
David O'Gara
Division of Computational and Data Sciences, Washington University in St. Louis
david.ogara@wustl.edu

References

Binois M, Gramacy RB (2021). “hetGP: Heteroskedastic Gaussian Process Modeling and Sequential Design in R.” Journal of Statistical Software, 98(13), 1-44. doi:10.18637/jss.v098.i13 https://doi.org/10.18637/jss.v098.i13

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

hetgpy-1.0.0.tar.gz (3.0 MB view details)

Uploaded Source

File details

Details for the file hetgpy-1.0.0.tar.gz.

File metadata

  • Download URL: hetgpy-1.0.0.tar.gz
  • Upload date:
  • Size: 3.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for hetgpy-1.0.0.tar.gz
Algorithm Hash digest
SHA256 a87a4291d8f05267d97777c0d51e049646f5b97f53671231b35fecd615b097f6
MD5 2a12a2c8fb15b9db17208f7d7ab349bd
BLAKE2b-256 99c632f3ef7d09b2e63b6e7a91d1675765844afa79e7ebb735c50ee90089cd69

See more details on using hashes here.

Provenance

The following attestation bundles were made for hetgpy-1.0.0.tar.gz:

Publisher: release-to-pypi.yaml on davidogara/hetGPy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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