hetGPy is a Python implementation of the hetGP R library. Please see our JOSS paper for an in-depth introduction to the package.
This package has the goals of:
- Matching the behavior of the
Rpackage - Having minimal Python and external dependencies, which are:
numpyandscipyfor computationsmatplotlibfor visualizationjoblibfor parallelizationtqdmfor progress barsEigen(C++) for fast calculations (when vectorization is non-obvious)
The motivation for such a package is due to the rising popularity of implementing simulation models (also known as computer experiments) in Python.
The package documentation is available at: https://hetgpy.readthedocs.io/en/latest/
hetGPyis available on pypi:
pip install hetgpy
python -m pip install git+https://github.com/davidogara/hetGPy.git
- To build from the source files:
- Clone the repository. Make sure to include
--recurve-submodulesif you do not already haveEigeninstalled on your system:
git clone --recurse-submodules https://github.com/davidogara/hetGPy.git
- With
hetGPyas 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.
-
hetGPyrequiresscipy>=1.14.0which fixed a memory leakage issue when usingL-BFGS-Binscipy.optimize.minizmize. That version of scipy requires Python 3.10. -
Since
hetGPyis 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. -
hetGPyalso requires a c++17 compiler andEigenfor 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.
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
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