A comprehensive guide to Gaussian Process libraries

LIBRARYLANGUAGELICENSEREPOSITORYRELEASEINSTALLATIONDEVELOPERS & FUNDINGDOCUMENTATIONCOMMUNITY SUPPORTFRAMEWORKGPUSOLVERSTREND TYPESKERNEL   \( R(x,x';\theta) \)LIKELIHOODESTIMATION METHODSOPTIMIZATION METHODSRESAMPLINGMETRICS
MODELSCOMPLEXITYLENGTH SCALECORRELATION FAMILIESMIXTUREMIXTURE MODELTYPENUGGETNOISE VARIANCE \( \sigma^2 \)
AbstractGPs.jl
JuliaGaussianProcesses (2020)
juliaMITJuliaGaussianProcesses/AbstractGPs.jlv0.5.24Pkg.jlAbstractGPs.jl contributorsdocs examplesDistributions.jlFeature not availableGaussian Process Regression (GPR) Sparse Gaussian Process Regression (SGPR) Deep Kernel Learning (DKL)Zero Constant CustomIsotropic AnisotropicSquared Exponential Exponential Gamma Exponential Matern Matern12 Matern32 Matern52 Matern72 Rational Quadratic Rational Gamma Rational Linear Polynomial Piecewise Polynomial Periodic Cosine Constant White noise Exponentiated Fractional Brownian Motion Gabor Gibbs Neural Network Wiener Spectral Mixture Independent Multi-output Intrinsic Coregionalization Latent Factor Linear Mixing ModelFeature availableSum Product Scale Tensor ProductGaussianCustomInferable CustomMaximum Likelihood Estimation (MLE) Evidence Lower Bound (ELBO) Variational Free Energy (VFE) Variational Inference (VI) Markov Chain Monte Carlo (MCMC) Hamiltonian Monte Carlo (HMC) Elliptical Slice Sampling (ESS)Optim.jl optimizer L-BFGS AdamFeature not available
albatross
Swift Navigation (2018)
C++MITswift-nav/albatrossmaster (2026-09-22)Swift Navigation albatross contributorsdocsFeature not availableGaussian Process Regression (GPR) Sparse Gaussian Process Regression (SGPR)\( \mathcal{O}(N^3) \) \( \mathcal{O}(NM^2) \)Zero Linear CustomIsotropicSquared Exponential Exponential Matern32 Matern52 Constant Polynomial White noise CustomFeature availableSum Product ScaleGaussianCustomInferable CustomMaximum Likelihood Estimation (MLE) Leave-One-Out Cross-Validation (LOOCV) Markov Chain Monte Carlo (MCMC) Fully Independent Training Conditional (FITC) Partially Independent Training Conditional (PITC)NLoptFeature availableRoot Mean Squared Error (RMSE) Leave-One-Out Cross-Validation (LOOCV) Negative Log Predictive Density (NLPD)
ApproximateGPs.jl
JuliaGaussianProcesses (2021)
juliaMITJuliaGaussianProcesses/ApproximateGPs.jlv0.4.5Pkg.jlApproximateGPs.jl contributorsdocs user manuals API examplesDistributions.jlFeature not availableGaussian Process Regression (GPR) Gaussian Process Classification (GPC) Sparse Variational Gaussian Process (SVGP)Zero Constant CustomIsotropic AnisotropicSquared Exponential Exponential Gamma Exponential Matern Matern12 Matern32 Matern52 Rational Quadratic Rational Gamma Rational Linear Polynomial Piecewise Polynomial Periodic Cosine Constant White noise Exponentiated Fractional Brownian Motion Gabor Gibbs Neural Network Wiener Spectral Mixture Independent Multi-output Intrinsic Coregionalization Latent Factor Linear Mixing ModelFeature availableSum Product Scale Tensor ProductGaussian BernoulliCustomCustomMaximum Likelihood Estimation (MLE) Evidence Lower Bound (ELBO) Variational Inference (VI) Stochastic Variational Inference (SVI) Laplace Approximation (LA)Flux.jl optimizer Adam Optim.jl optimizer L-BFGSFeature not available
AugmentedGaussianProcesses.jl
Galy-Fajou et al. (2020)
juliaMITtheogf/AugmentedGaussianProcesses.jlv0.11.5Pkg.jlTechnische Universität Berlin AugmentedGaussianProcesses.jl contributorsdocs user manuals API examplesFeature not availableGaussian Process Regression (GPR) Gaussian Process Classification (GPC) Variational Gaussian Process (VGP) Sparse Variational Gaussian Process (SVGP) Gaussian Process Markov Chain Monte Carlo (GPMC) Online Sparse Variational Gaussian Process (OnlineSVGP) Multi-output Gaussian Process (MOGP) Variational Student-T Process (VStP)\( \mathcal{O}(N^3) \) \( \mathcal{O}(M^3) \)Zero Constant Empirical LinearIsotropic AnisotropicSquared Exponential Exponential Gamma Exponential Matern Matern12 Matern32 Matern52 Rational Quadratic Rational Gamma Rational Linear Polynomial Piecewise Polynomial Periodic Cosine Constant White noise Exponentiated Fractional Brownian Motion Gabor Gibbs Neural Network Wiener Spectral Mixture Independent Multi-output Intrinsic Coregionalization Latent Factor Linear Mixing ModelFeature availableSum Product Scale Tensor ProductGaussian Student-T Laplace Heteroskedastic Noise Bernoulli Bayesian SVM Poisson Negative Binomial Softmax Logistic-SoftmaxInferableExact inference Variational Inference (VI) Stochastic Variational Inference (SVI) Evidence Lower Bound (ELBO) Markov Chain Monte Carlo (MCMC)Flux.jl optimizer Adam Gradient Descent Momentum Robbins-Monro Natural Gradient Descent (NGD)Feature not available
AutoGP
Krauth et al. (2017)
PythonApache-2.0ebonilla/AutoGPmaster (2019-07-19)The University of New South Wales EURECOM AutoGP contributorsdocsTensorFlowFeature availableGaussian Process Regression (GPR) Gaussian Process Classification (GPC) Sparse Variational Gaussian Process (SVGP) Multi-output Gaussian Process (MOGP)ZeroIsotropic AnisotropicSquared Exponential ArcCosineFeature not availableGaussian Logit Softmax Regression NetworkStochastic Variational Inference (SVI) Evidence Lower Bound (ELBO) Leave-One-Out Cross-Validation (LOOCV)TensorFlow optimizer RMSPropFeature not available
AutoGP.jl
Saad et al. (2023)
juliaApache-2.0probsys/AutoGP.jlv0.1.19Pkg.jlCarnegie Mellon University Google Research Massachusetts Institute of Technologydocs tutorials APIDistributions.jlFeature not availableGaussian Process Regression (GPR) Automatic Kernel Structure DiscoveryZeroIsotropicWhite noise Constant Linear Squared Exponential Gamma Exponential PeriodicFeature availableSum Product Change PointsGaussianInferable CustomInferable CustomSequential Monte Carlo (SMC) Markov Chain Monte Carlo (MCMC) Hamiltonian Monte Carlo (HMC)Greedy SearchFeature not available
BayesianOptimization
Nogueira (2014)
PythonMITbayesian-optimization/BayesianOptimizationv3.3.0PyPI condaBayesianOptimization contributorsdocs API tutorials examplesNumPy SciPyFeature not availableGaussian Process Regression (GPR) scikit-learn GaussianProcessRegressorIsotropic AnisotropicMatern52 CustomFeature availableSum Product ExponentiationGaussianCustom default value: 1e-6Maximum Likelihood Estimation (MLE)L-BFGS-B CustomFeature not available
BayesianOptimization.jl
jbrea (2018)
juliaMITjbrea/BayesianOptimization.jlv0.2.5Pkg.jlEPFL BayesianOptimization.jl contributorsdocsFeature not availableGaussian Process Regression (GPR) Elastic Gaussian Process (ElasticGPE)ConstantAnisotropicSquared ExponentialFeature not availableGaussianInferableMaximum A Posteriori (MAP)NLopt L-BFGSFeature not available
Bayes-Newton
Wilkinson et al. (2023)
PythonApache-2.0AaltoML/BayesNewtonv1.3.4PyPIAalto University Bayes-Newton contributorsdocs examplesJAXFeature availableGaussian Process Regression (GPR) Gaussian Process Classification (GPC) Variational Gaussian Process (VGP) Sparse Variational Gaussian Process (SVGP) Markov (State Space) Gaussian Process Sparse Markov Gaussian Process Spatio-Temporal Gaussian Process Expectation Propagation GP Laplace / Newton GP Posterior Linearisation GP Taylor / Extended Kalman Smoother GP Gauss-Newton GP Quasi-Newton GP Riemannian Gradient GP Infinite Horizon GP Parallel Markov GP Multi-output Gaussian Process (MOGP)Isotropic AnisotropicMatern12 Matern32 Matern52 Matern72 Spatio-Temporal Matern Cosine Periodic Quasi-Periodic Matern Subband Matern Spectro-Temporal Latent Exponentially Generated Divergence-Free Oscillator IndependentFeature availableSum ProductGaussian Bernoulli Poisson Student-T Beta Gamma Negative Binomial Zero-Inflated Negative Binomial Heteroskedastic Noise Heteroskedastic Student-T Positive Positive Student-T Gaussian Multivariate Student-T Multivariate Softmax Multi-Stage Nonnegative Matrix Factorisation Audio Amplitude Demodulation Linear Coregionalisation Regression NetworkInferableMaximum Likelihood Estimation (MLE) Variational Inference (VI) Evidence Lower Bound (ELBO) Expectation Propagation (EP) Power Expectation Propagation (PEP) Laplace Approximation (LA) Newton's Method Posterior Linearisation (PL) Taylor Expansion / Analytical Linearisation Gauss-Newton Quasi-Newton Riemannian GradientsAdamFeature not availableNegative Log Predictive Density (NLPD)
celerite
Foreman-Mackey et al. (2017)
C++ julia PythonMITdfm/celeritev0.4.3PyPI condaUniversity of Washington Flatiron Institute Indian Institute of Science Columbia University celerite contributorsdocs APINumPyFeature not availableGaussian Process Regression (GPR)\( \mathcal{O}(N) \)Zero Constant CustomReal Term Complex Term SHO Term Matern32 White noise CustomFeature availableSum ProductGaussianCustom InferableInferable CustomMaximum Likelihood Estimation (MLE) Markov Chain Monte Carlo (MCMC)L-BFGS-B SciPy optimizerFeature not available
celerite2
Gordon et al. (2020)
C++ PythonMITexoplanet-dev/celerite2v0.3.3PyPI condaUniversity of Washington Flatiron Institute celerite2 contributorsdocs tutorialsJAX NumPyroFeature not availableGaussian Process Regression (GPR)Zero ConstantSHO Term Rotation Term Matern32 Real Term Complex Term CustomFeature availableSum Product Derivative ConvolutionGaussianCustom InferableInferable CustomMaximum Likelihood Estimation (MLE) Markov Chain Monte Carlo (MCMC) Hamiltonian Monte Carlo (HMC)L-BFGS-B SciPy optimizerFeature not available
CppGPs
Winovich (2019)
C++MITnw2190/CppGPsmaster (2019-04-24)Nick Winovichdocs examplesFeature not availableGaussian Process Regression (GPR)IsotropicSquared ExponentialFeature not availableGaussiandefault value: 1e-10InferableMaximum Likelihood Estimation (MLE)L-BFGSFeature not available
DACE
Nielsen et al. (2002)
MATLABCustomn/av2.5add to the pathTechnical University of Denmark (DTU)docs user manualsFeature not availableGaussian Process Regression (GPR)\( \mathcal{O}(N^3) \)Constant Linear QuadraticIsotropic AnisotropicGaussian Exponential Linear Spherical Cubic SplineFeature not availableGaussianInferableMaximum Likelihood Estimation (MLE)Matlab Optimization ToolboxFeature not available
Dakota
Adams et al. (2026)
C++ PythonLGPLsnl-dakota/dakotav6.24.0condaSandia National Laboratories Dakota contributorsdocs API examples tutorialsGitHub discussionsFeature not availableGaussian Process Regression (GPR) Gradient-enhanced Kriging (GEK)Constant Linear Reduced Quadratic QuadraticAnisotropicSquared Exponential Matern32 Matern52Feature not availableGaussianCustom InferableInferableMaximum Likelihood Estimation (MLE)DIRECT CONMIN Random sampling L-BFGS-BFeature availableRoot Mean Squared Error (RMSE) Mean Squared Error (MSE) Mean Absolute Error (MAE) Coefficient of determination (\( R^2 \)) Leave-One-Out Cross-Validation (LOOCV)
deepgp
Sauer et al. (2023)
RLGPLcran/deepgp1.2.3CRANVirginia Polytechnic Institute and State Universitydocs tutorialsFeature not availableGaussian Process Regression (GPR) Deep Gaussian Processes (DGP) Vecchia-approximated GP/DGP Gradient-enhanced GP/DGP Monotonically-warped DGP\( \mathcal{O}(N^3) \)ZeroIsotropic AnisotropicMatern Squared ExponentialFeature not availableGaussianCustom InferableInferableMarkov Chain Monte Carlo (MCMC) Metropolis-Hastings (MH) Elliptical Slice Sampling (ESS)Feature not availableRoot Mean Squared Error (RMSE)
DiceKriging
Roustant et al. (2012)
RGPL-2.0cran/DiceKriging1.6.1CRANINSA Toulouse Ecole des Mines de St-Etienne Universitat Bern AlpestatdocsblogFeature not availableGaussian Process Regression (GPR)\( \mathcal{O}(N^3) \)Zero Constant Polynomial CustomIsotropic AnisotropicGaussian Exponential Matern32 Matern52 Power ExponentialFeature not availableGaussianCustom InferableInferableMaximum Likelihood Estimation (MLE)BFGS genoudFeature available
egobox-gp
Lafage (2022)
Rust PythonApache-2.0relf/egobox0.37.9cargo PyPIONERA University of Toulouse egobox contributorsdocsFeature not availableGaussian Process Regression (GPR) Sparse Gaussian Process Regression (SGPR)\( \mathcal{O}(N^3) \) \( \mathcal{O}(NM^2) \)Constant Linear QuadraticIsotropic AnisotropicSquared Exponential Absolute Exponential Matern32 Matern52Feature not availableGaussianMaximum Likelihood Estimation (MLE) Fully Independent Training Conditional (FITC)COBYLA SLSQPFeature availableLeave-One-Out Cross-Validation (LOOCV) Leave-One-Out Cross-Validation (CV)
Emukit
Paleyes et al. (2019)
PythonApache-2.0EmuKit/emukit0.5.1PyPIAmazon University of Cambridge Emukit contributorsdocs API tutorials jupyter notebooksNumPy SciPyFeature not availableGaussian Process Regression (GPR) Multi-output Gaussian Process (MOGP) Linear Multi-fidelity GP Nonlinear Multi-fidelity GPIsotropic AnisotropicSquared Exponential Matern12 Matern32 Matern52 Brownian CustomFeature availableProductGaussianInferableMarkov Chain Monte Carlo (MCMC)Feature not available
fbm
Neal (1996)
CBSL-1.0radfordneal/fbmfbm.2022-04-21University of TorontodocsFeature not availableGaussian Process Regression (GPR) Gaussian Process Classification (GPC) Multi-class Classification (softmax) Poisson Regression (count data)ZeroIsotropic AnisotropicConstant Linear Squared Exponential Power Exponential Cauchy (power -1) White noiseFeature not availableGaussian Student-T Logit Softmax Poissondefault value: 0 Custom Inferable Fixed Non-TrainableInferableMarkov Chain Monte Carlo (MCMC) Hamiltonian Monte Carlo (HMC) Gibbs sampling Metropolis-HastingsFeature not availableMean Squared Error (MSE) Mean Absolute Error (MAE) Negative Log Predictive Density (NLPD)
fdagstat
Grujic et al. (2017)
RGPL-2.0ogru/fdagstat1.0Stanford University Politecnico di MilanotutorialsFeature not availableGaussian Process Regression (GPR) Multi-output Gaussian Process (MOGP) Ordinary Trace Kriging Universal Trace Kriging Universal Trace Co-Kriging Co-Kriging of FPC scoresConstant LinearIsotropic AnisotropicGaussian Matern CustomFeature availableSum Product Product-Sum SeparableGaussianCustom InferableOrdinary Least Squares (OLS) Generalised Least Squares (GLS)Feature available
friedrich
Demeure (2019)
RustApache-2.0nestordemeure/friedrich0.6.0cargofriedrich contributorsdocsFeature not availableGaussian Process Regression (GPR)\( \mathcal{O}(N^3) \)Zero Constant Linear CustomIsotropicSquared Exponential Exponential Matern32 Matern52 Rational Quadratic Linear Polynomial Multiquadric Hyperbolic Tangent CustomFeature availableSum ProductGaussianCustomCustom InferableMaximum Likelihood Estimation (MLE)Adam Gradient DescentFeature not available
FRK
Zammit-Mangion et al. (2021)
RGPL-2.0andrewzm/FRK2.3.2CRANUniversity of Wollongongdocs r docs tutorials APIFeature not availableGaussian Process Regression (GPR) Fixed Rank Kriging (FRK) Spatial Random Effects (SRE) model Spatio-Temporal Kriging Generalised Linear Mixed Model (GLMM)Constant Linear CustomIsotropic AnisotropicBisquare Gaussian Exponential Matern32Feature not availableGaussian Poisson Binomial Gamma Negative Binomial Inverse-GaussianCustom InferableInferableMaximum Likelihood Estimation (MLE) Expectation Maximisation (EM) Laplace Approximation (LA)nlminbFeature not available
gaussianproc
RobinRCM (2020)
GOMITRobinRCM/sklearnv0RobinRCMdocsFeature not availableGaussian Process Regression (GPR)Isotropic AnisotropicSquared Exponential Constant Dot Product White noiseFeature availableSum Product ExponentiationGaussianInferableMaximum Likelihood Estimation (MLE)L-BFGSFeature availableCoefficient of determination (\( R^2 \))
GaussianProcesses.jl
Fairbrother et al. (2022)
juliaMITSTOR-i/GaussianProcesses.jlv0.12.6Pkg.jlLancaster University EPFL GaussianProcesses.jl contributorsdocs tutorials jupyter notebooksOptim.jl Distributions.jlFeature not availableGaussian Process Regression (GPR) Gaussian Process Classification (GPC) Sparse Gaussian Process (SGP)\( \mathcal{O}(N^3) \) \( \mathcal{O}(NM^2) \)Zero Constant Linear Polynomial Sum Product CustomIsotropic AnisotropicSquared Exponential Matern12 Matern32 Matern52 Polynomial Periodic Rational Quadratic Fixed MaskedFeature availableSum ProductGaussian Bernoulli Poisson Binomial Exponential Student-TCustomInferableMaximum Likelihood Estimation (MLE) Markov Chain Monte Carlo (MCMC) Variational Inference (VI) Fully Independent Training Conditional (FITC) Subset of Regressors (SoR) Deterministic Training Conditional (DTC) Full scale approximation (FSA)Optim.jl optimizer L-BFGS Conjugate Gradient (CG)Feature available
george
Ambikasaran et al. (2015)
PythonMITdfm/georgev0.4.4PyPI condaNew York University Simons Foundation george contributorsdocs tutorialsNumPy SciPyFeature not availableGaussian Process Regression (GPR)\( \mathcal{O}(N^3) \) O(N log^2 N)Zero Constant CustomIsotropic AnisotropicConstant Dot Product Exponential Squared Exponential Matern32 Matern52 Rational Quadratic Exponential Sine Squared Cosine Local Gaussian Polynomial Linear CustomFeature availableSum ProductGaussianCustom Inferable default value: log(TINY)Inferable CustomMaximum Likelihood Estimation (MLE) Markov Chain Monte Carlo (MCMC)L-BFGS-B SciPy optimizerFeature not available
GeoStats.jl
Hoffimann (2018)
juliaMITJuliaEarth/GeoStats.jlv0.90.2Pkg.jlStanford University GeoStats.jl contributorsdocs tutorials user manuals talkchat GitHub discussionsFeature not availableGaussian Process Regression (GPR) Simple Kriging (SK) Ordinary Kriging (OK) Universal Kriging (UK) Multi-output Gaussian Process (MOGP)\( \mathcal{O}(N^3) \)Constant Linear Quadratic Polynomial CustomIsotropic AnisotropicGaussian Spherical Exponential Matern Cubic Penta-Spherical Sine Hole CircularFeature availableSum ScaleGaussianCustom InferableInferableWeighted Least Squares (WLS)Feature availableLeave-One-Out Cross-Validation (LOOCV) Validation Error
go-bayesopt
Rice (2017)
GOMITd4l3k/go-bayesoptmaster (2024-05-31)go-bayesopt contributorsAPIFeature not availableGaussian Process Regression (GPR)IsotropicMatern52 CustomFeature not availableGaussianCustom default value: 0Feature not available
go-kriging
lvisei (2020)
GOMITlvisei/go-krigingv0.0.1-alpha.15lviseidocsFeature not availableOrdinary Kriging (OK)IsotropicGaussian Exponential SphericalFeature not availableGaussianInferableCustomVariogram fitting (Bayesian priors)Feature not available
goptuna-bayesopt
Shibata (2020)
GOMITc-bata/goptuna-bayesoptmaster (2020-07-29)goptuna-bayesopt contributorsAPI examplesFeature not availableGaussian Process Regression (GPR) go-bayesopt GPIsotropicMatern52Feature not availableGaussiandefault value: 0Feature not available
GPax
Ziatdinov et al. (2021)
PythonMITziatdinovmax/gpax0.1.8PyPIOak Ridge National Laboratory GPax contributorsdocs tutorials API colab notebooks jupyter notebooksGitHub discussionsJAX NumPyroFeature availableGaussian Process Regression (GPR) Structured Gaussian Process (sGP) GP with Uncertain Inputs (UIGP) Heteroskedastic GP (VarNoiseGP) Measured-Noise GP Vector-valued GP (vExactGP) Variational Gaussian Process (VGP) Sparse Variational Gaussian Process (SVGP) Deep Kernel Learning (DKL) Variational Deep Kernel Learning (viDKL) Infinite-width Bayesian Neural Network (iBNN) Multi-output Gaussian Process (MOGP) Multi-task Deep Kernel Learning (viMTDKL) Structured Probabilistic Model (sPM)Zero CustomIsotropic AnisotropicSquared Exponential Matern52 Periodic NNGP Multitask LCMK CustomFeature not availableGaussian Heteroskedastic NoiseCustom default value: 1e-6InferableMarkov Chain Monte Carlo (MCMC) Hamiltonian Monte Carlo (HMC) Stochastic Variational Inference (SVI) Evidence Lower Bound (ELBO) Maximum A Posteriori (MAP)AdamFeature not available
GPc
SheffieldML (2014)
C++MITSheffieldML/GPcmaster (2021-09-16)University of Sheffield GPc contributorsdocs examplesFeature not availableGaussian Process Regression (GPR) Gaussian Process Classification (GPC) Sparse Gaussian Process Regression (SGPR) Informative Vector Machine (IVM) Gaussian Process Latent Variable Model (GPLVM) Back constrained Gaussian Process Latent Variable Model (BCGPLVM) Gaussian Process Dynamical Model (GPDM)Isotropic AnisotropicSquared Exponential Exponential Rational Quadratic Matern32 Matern52 Linear Polynomial MLP Bias White noiseFeature availableSum ProductGaussian Probit Ordered Categorical Null Category Noise Model (NCNM)InferableInferableMaximum Likelihood Estimation (MLE) Deterministic Training Conditional (DTC) Variational Free Energy (VFE)Scaled Conjugate Gradient (SCG) Conjugate Gradient (CG) Gradient DescentFeature not available
GPEXP
Gorodetsky et al. (2016)
PythonGPL-2.0goroda/GPEXPpre-refactorMassachusetts Institute of Technology GPEXP contributorsexamplesNumPy SciPyFeature not availableGaussian Process Regression (GPR)Isotropic AnisotropicSquared Exponential Matern MehlerFeature not availableFeature not available
GPflow
Matthews et al. (2017)
PythonApache-2.0GPflow/GPflowv2.11.1PyPIUniversity of Cambridge University of Oxford Kyoto University University of Edinburgh The University of Manchester Lancaster University GPflow contributorsdocsslack GitHub discussions stackoverflowTensorFlowFeature availableGaussian Process Regression (GPR) Gaussian Process Classification (GPC) Sparse Gaussian Process Regression (SGPR) GPR with Fully Independent Training Conditional (FITC) Variational Gaussian Process (VGP) Sparse Variational Gaussian Process (SVGP) Gaussian Process Latent Variable Model (GPLVM) Conjugate Gradient Lower Bound (CGLB) Gaussian Process Markov Chain Monte Carlo (GPMC) Sparse Gaussian Process Markov Chain Monte Carlo (SGPMC) Convolutional Gaussian Process Multi-output Gaussian Process (MOGP)\( \mathcal{O}(N^3) \) \( \mathcal{O}(NM^2) \)Zero Sum Polynomial Constant Identity Linear Product Switched Function CustomIsotropic AnisotropicArcCosine Bias Change Points Constant Convolutional Coregion Cosine Exponential Independent Latent Linear Linear Coregionalization Matern12 Matern32 Matern52 Multioutput Periodic Polynomial Squared Exponential Rational Quadratic Separate Independent Shared Independent Static Stationary White noise CustomFeature availableSum Product CombinationBernoulli Beta Exponential Gamma Gaussian Gaussian MC Heteroskedastic TFP Conditional Monte Carlo Likelihood Multi Latent Likelihood Student-T Poisson Softmax Switched Likelihood Scalar CustomCustom Fixed Non-Trainable default value: 1e-6InferableMaximum Likelihood Estimation (MLE) Variational Free Energy (VFE) Evidence Lower Bound (ELBO) Markov Chain Monte Carlo (MCMC) Expectation Propagation (EP) Laplace Approximation (LA)Natural Gradient Descent (NGD) Adam SciPy optimizer Keras optimizerFeature available
GPflux
Dutordoir et al. (2021)
PythonApache-2.0secondmind-labs/GPfluxv0.4.5PyPIUniversity of Cambridge Imperial College London University College London Secondimind labs GPflux contributorsdocs tutorials APIslackTensorFlowFeature not availableDeep Gaussian Processes (DGP) Sparse Variational Gaussian Process (SVGP)\( \mathcal{O}(M^3) \)Identity Linear ZeroAnisotropicSquared Exponential Matern12 Linear Periodic Separate Independent CustomFeature availableSumGaussian Bernoulli Softmax RobustMax CustomInferableEvidence Lower Bound (ELBO) Variational Inference (VI)Adam Keras optimizer Natural Gradient Descent (NGD)Feature not available
GpGp
Guinness et al. (2018)
RMITcran/GpGp1.0.0CRANCornell University GpGp contributorsdocs tutorialsFeature not availableGaussian Process Regression (GPR) Vecchia-approximated Gaussian Process Spatio-Temporal Gaussian Process Gaussian Process on the Sphere Nonstationary-variance Gaussian ProcessConstant LinearIsotropic AnisotropicMatern Matern32 Matern52 Matern72 Matern92 Exponential Spatio-Temporal Matern Matern on Sphere Nonstationary-Variance Matern Categorical Random-Effects MaternFeature not availableGaussianCustom InferableInferableMaximum Likelihood Estimation (MLE) Vecchia LikelihoodFisher ScoringFeature not available
GPJax
Pinder et al. (2022)
PythonApache-2.0QuantClimate/GPJaxv1.0.0PyPILancaster University GPJax contributorsdocs tutorials APIGitHub discussions contact formJAXFeature availableGaussian Process Regression (GPR) Gaussian Process Classification (GPC) Deep Gaussian Processes (DGP) Sparse Gaussian Process Regression (SGPR) Sparse Variational Gaussian Process (SVGP) Multi-output Gaussian Process (MOGP)\( \mathcal{O}(N^3) \) \( \mathcal{O}(NM^2) \)Zero Constant CombinationIsotropic AnisotropicMatern12 Matern32 Matern52 Squared Exponential Rational Quadratic Power Exponential Periodic White noise Linear Polynomial Graph kernels Non-stationary ArcCosine Non-stationary Linear Non-stationary Polynomial CustomFeature availableSum ProductGaussian Bernoulli PoissonCustom Inferable default value: 1e-6InferableMaximum Likelihood Estimation (MLE) Leave-One-Out Cross-Validation (LOOCV) Markov Chain Monte Carlo (MCMC) Stochastic Variational Inference (SVI) Evidence Lower Bound (ELBO) Variational Expectation (VE)Optax SciPy optimizerFeature availableLeave-One-Out Cross-Validation (LOOCV) Conjugate Marginal Log-Likelihood (MLL) Log-Posterior Density
GPmat
SheffieldML (2013)
MATLABBSD-3-ClauseSheffieldML/GPmatv1.0.0add to the pathUniversity of Sheffield GPmat contributorsdocs examplesFeature not availableGaussian Process Regression (GPR) Gaussian Process Classification (GPC) Sparse Gaussian Process Regression (SGPR) Informative Vector Machine (IVM) Gaussian Process Latent Variable Model (GPLVM) Back constrained Gaussian Process Latent Variable Model (BCGPLVM) Hierarchical Gaussian Process Latent Variable Model (HGPLVM) Gaussian Process Dynamical Model (GPDM)Zero CustomIsotropic AnisotropicSquared Exponential Gaussian Matern32 Matern52 Rational Quadratic Linear Polynomial Periodic Gibbs MLP Ornstein-Uhlenbeck (OU) Wiener Single Input Motif (SIM) Latent Force Model (LFM) Bias White noiseFeature availableSum ProductGaussian Probit Ordered Categorical Null Category Noise Model (NCNM)Inferable Fixed Non-TrainableInferableMaximum Likelihood Estimation (MLE) Deterministic Training Conditional (DTC) Fully Independent Training Conditional (FITC) Partially Independent Training Conditional (PITC) Variational Free Energy (VFE)Scaled Conjugate Gradient (SCG) Conjugate Gradient (CG)Feature not available
GPML
Rasmussen et al. (2010)
MATLAB GNU OctaveFreeBSDhnickisch/gpml-matlabv4.2+dev2add to the pathUniversity of Cambridge Max Planck Institutedocs user manualsFeature not availableGaussian Process Regression (GPR) Gaussian Process Classification (GPC)\( \mathcal{O}(N^3) \) \( \mathcal{O}(NM^2) \)Zero One Constant Linear Polynomial Discrete Precomputed mean Predictive Nearest neighbor Weighted sum of projected cosines Scaled Sum Product Power Mask Difference WarpedIsotropic AnisotropicConstant White noise Piecewise Polynomial Matern12 Matern32 Matern52 Rational Quadratic Squared Exponential LinearFeature availableSum Product Scale MaskProbit Logit Uniform Gaussian Gumbel Laplace Sech-square Student-T Poisson Negative Binomial Gamma Exponential Log Gaussian Beta MixtureCustom Inferable Fixed Non-TrainableInferableExact inference Laplace Approximation (LA) Expectation Propagation (EP) Variational Bayes Approximation (VB) Kullback-Leibler Approximation (KL) Markov Chain Monte Carlo (MCMC) Leave-One-Out Cross-Validation (LOOCV)Conjugate Gradient (CG) L-BFGS-B minFuncFeature not available
GPmp
Vazquez (2026)
PythonGPL-3.0gpmp-dev/gpmpv0.9.31PyPICentraleSupélec GPmp contributorsdocs tutorials examples APINumPy SciPy PyTorchFeature not availableGaussian Process Regression (GPR)\( \mathcal{O}(N^3) \)Zero Constant Linear Predictor (Universal Kriging) CustomAnisotropicSquared Exponential Exponential Matern12 Matern32 Matern52 Matern CustomFeature not availableGaussianCustom default value: 10*sigma2*eps_machCustomMaximum Likelihood Estimation (MLE) Restricted Maximum Likelihood Estimation (REMLE) Restricted Maximum A Posteriori (REMAP) Markov Chain Monte Carlo (MCMC) Sequential Monte Carlo (SMC)SLSQP L-BFGS-B SciPy optimizerFeature availableRoot Mean Squared Error (RMSE) Coefficient of determination (\( R^2 \)) Leave-One-Out Cross-Validation (LOOCV)
GPRust
KentaKato (2024)
RustN/AKentaKato/GPRustmain (2024-03-22)GPRust contributorsexamplesFeature not availableGaussian Process Regression (GPR)Feature not availableMaximum Likelihood Estimation (MLE)Grid SearchFeature not available
GPstuff
Vanhatalo et al. (2017)
R MATLAB GNU OctaveGPL-3.0gpstuff-dev/gpstuffv4.7add to the path CRANUniversity of Helsinki Aalto University of Science GPstuff contributorsdocsFeature not availableGaussian Process Regression (GPR) Gaussian Process Classification (GPC) Sparse Gaussian Process (SGP) GPR with Fully Independent Training Conditional (FITC) GPR with Partial Independent Training Conditional (PITC) Sparse Variational Gaussian Process (SVGP)\( \mathcal{O}(N^3) \) \( \mathcal{O}(NM^2) \)Zero Constant Linear SquaredIsotropic AnisotropicCategorical Constant Squared Exponential Linear Matern32 Matern52 NN Periodic Piecewise Polynomial Rational QuadraticFeature availableSum Product ScaleGaussian Gaussian scale mixture Student-T Logit Probit Softmax Binomial Poisson Negative Binomial Hurdle model WeibullCustomInferableMaximum Likelihood Estimation (MLE) Deviance information criterion (DIC) Leave-One-Out Cross-Validation (LOOCV) Widely Applicable Information Criterion (WAIC) Laplace Approximation (LA) Expectation Propagation (EP) Markov Chain Monte Carlo (MCMC) Hamiltonian Monte Carlo (HMC)fminscg fminlbfgs fminuncFeature availableEuclidean distance
gptk
Kalaitzis et al. (2014)
RFreeBSDcran/gptk1.08University of Sheffield University of Cambridge Aalto Universitydocs examplesFeature not availableGaussian Process Regression (GPR) Sparse Gaussian Process Regression (SGPR) GPR with Fully Independent Training Conditional (FITC) GPR with Partial Independent Training Conditional (PITC) GPR with Deterministic Training Conditional (DTC)IsotropicSquared Exponential White noiseFeature availableSumGaussianInferableMaximum Likelihood Estimation (MLE)Scaled Conjugate Gradient (SCG) Conjugate Gradient (CG)Feature not available
GPvecchia
Katzfuss et al. (2017)
RGPL-2.0 GPL-3.0katzfuss-group/GPvecchia0.1.8CRANTexas A&M University Cornell University GPvecchia contributorsdocs tutorialsFeature not availableGaussian Process Regression (GPR) Vecchia-approximated Gaussian Process Sparse General Vecchia (SGV) Vecchia-Laplace Generalised Gaussian Process Nearest Neighbour Gaussian Process (NNGP) Multi-Resolution Approximation (MRA) Modified Predictive Process (MPP) Full-Scale Approximation (FSA)Zero Constant LinearIsotropicMatern Exponential + Squared Exponential (esqe) CustomFeature not availableGaussian Logit Poisson Gamma BetaCustom InferableInferableMaximum Likelihood Estimation (MLE) Vecchia Likelihood Laplace Approximation (LA)optim Nelder-MeadFeature not available
GPy
GPy (2012)
PythonBSD-3-ClauseSheffieldML/GPyv1.14.2PyPIUniversity of Sheffield GPy contributorsdocs jupyter notebooksGitHub discussionsNumPy SciPyFeature not availableGaussian Process Regression (GPR) Gaussian Process Classification (GPC) Sparse Gaussian Process Regression (SGPR) Sparse Gaussian Process Classification (SGPC) Variational Gaussian Process (VGP) Gaussian Process Latent Variable Model (GPLVM) Sparse Gaussian Process Latent Variable Model (SGPLVM) Spike-and-Slab Gaussian Process Latent Variable Model (SSGPLVM) Back constrained Gaussian Process Latent Variable Model (BCGPLVM) Multi-output Gaussian Process (MOGP)\( \mathcal{O}(N^3) \) \( \mathcal{O}(NM^2) \)Zero Constant Linear Polynomial CustomIsotropic AnisotropicSquared Exponential Matern Brownian Linear Bias Periodic Polynomial MLP Coregionalized White noise Cosine Exponential Rational QuadraticFeature availableSum Product Coregionalization Active DimensionsGaussian Bernoulli Binomial Exponential Gamma Log Logistic Log Gaussian Mixed Noise Poisson Student-T WeibullCustom Inferable default value: 1e-6InferableMaximum Likelihood Estimation (MLE) Evidence Lower Bound (ELBO) Variational Free Energy (VFE) Laplace Approximation (LA) Variational Inference (VI)L-BFGS Scaled Conjugate Gradient (SCG) Gradient Descent SciPy optimizerFeature available
GPyTorch
Gardner et al. (2018)
PythonMITcornellius-gp/gpytorchv1.15.2PyPI condaCornell University The University of British Columbia Meta New York University University of Pennsylvania GPyTorch contributorsdocs examplesstackoverflow GitHub discussionsPyTorchFeature availableGaussian Process Regression (GPR) Gaussian Process Classification (GPC) GPR with BlackBox Matrix-Matrix Inference (BBMM) GPR with LancZos Variance Estimates (LOVE) Sparse Gaussian Process Regression (SGPR) Structured Kernel Interpolation (SKI/KISS-GP) Structured Kernel Interpolation for Products (SKIP) Structure-Exploiting Kernels Approximate GP Inference Deep Gaussian Processes (DGP) Gaussian Process Latent Variable Model (GPLVM) Multi-output Gaussian Process (MOGP)\( \mathcal{O}(N^3) \) \( \mathcal{O}(N^2) \) \( \mathcal{O}(NM^2) \) \( \mathcal{O}(N) \) \( \mathcal{O}(N + M \log M) \)Zero Constant LinearIsotropic AnisotropicCosine Constant Cylindrical Linear Matern Periodic Piecewise Polynomial Polynomial Squared Exponential Rational Quadratic Spectral Delta Spectral Mixture Arc Index LCMK Multitask Grid Grid Interpolation Inducing Point RFFK Hamming IMQ Gaussian Symmetrized KL Distributional InputFeature availableSum Product Scale Spectral MixtureGaussian Gaussian With Missing Values Fixed Noise Gaussian Dirichlet Classification Bernoulli Beta Laplace Student-T Multitask Gaussian Softmax Heteroskedastic NoiseCustom Fixed Non-Trainable default value: 1e-6 for float default value: 1e-8 for doubleInferableMaximum Likelihood Estimation (MLE) Leave-One-Out Cross-Validation (LOOCV) Evidence Lower Bound (ELBO) Variational Inference (VI) Predictive Log Likelihood Gamma Robust Variational ELBO Deep Approximate MLL Inducing Point Kernel Added Loss Term KL Gaussian Added Loss TermNatural Gradient Descent (NGD) PyTorch optimizer Adam L-BFGS SGDFeature availableNegative Log Predictive Density (NLPD) Meas Standardized Log Loss (MSLL) Mean Absolute Error (MAE) Mean Squared Error (MSE)
GSTools
Müller et al. (2022)
PythonLGPLGeoStat-Framework/GSToolsv1.7.0PyPI condaUFZ University of Potsdam CASUS Utrecht University GSTools contributorsdocs tutorials APIGitHub discussionsNumPy SciPyFeature not availableGaussian Process Regression (GPR) Simple Kriging (SK) Ordinary Kriging (OK) Universal Kriging (UK) External Drift Kriging Detrended KrigingConstant Linear Quadratic Polynomial External Drift CustomIsotropic AnisotropicGaussian Exponential Matern Exponential Integral Stable Rational Quadratic Cubic Linear Circular Spherical HyperSpherical SuperSpherical J-Bessel Truncated Power Law (TPLGaussian, TPLExponential, TPLStable, TPLSimple) White noise CustomFeature availableSumGaussianCustom InferableCustomVariogram fitting (non-linear least squares) Weighted Least Squares (WLS)SciPy optimizer Trust Region Reflective (trf) Dogleg (dogbox)Feature not availableCoefficient of determination (\( R^2 \))
IterGP
Wenger et al. (2022)
PythonMITJonathanWenger/itergpmain (2023-04-12)University of Tübingen Columbia University Max Planck Institute for Intelligent Systems IterGP contributorsdocs tutorials API jupyter notebooksFeature not availableGaussian Process Regression (GPR) Computation-aware Gaussian Process (IterGP) IterGP-Cholesky IterGP-CG (Conjugate Gradient) IterGP-PI (Pseudo-Input / Inducing Points) Auto-Preconditioned Conjugate Gradient Projected Bayes Regressor Mixed Strategy\( \mathcal{O}(N^2) \)Zero CustomIsotropicSquared Exponential Matern White noiseFeature availableSum ScaleGaussianFeature not available
Keras-GP
Al-Shedivat et al. (2017)
PythonMITalshedivat/keras-gp0.3.2Carnegie Mellon University Cornell University Keras-GP contributorsexamples tutorialsTensorFlowFeature not availableGaussian Process Regression (GPR) Deep Kernel Learning (DKL) GP-RNN / GP-LSTM / GP-GRU Structured Kernel Interpolation (SKI/KISS-GP) Massively Scalable Gaussian Process (MSGP)Zero Constant Linear SumIsotropicSquared Exponential Spectral MixtureFeature not availableGaussianCustom InferableInferableMaximum Likelihood Estimation (MLE) Exact inferenceAdam Keras optimizerFeature not availableRoot Mean Squared Error (RMSE) Mean Squared Error (MSE)
libgp
Blum & Riedmiller (2013)
C++BSD-3-Clausemblum/libgpv0.3.0Manuel BlumdocsFeature not availableGaussian Process Regression (GPR)ZeroIsotropic AnisotropicSquared Exponential Matern32 Matern52 Rational Quadratic Linear Periodic White noise CustomFeature availableSum ProductGaussianCustomInferable CustomMaximum Likelihood Estimation (MLE)Conjugate Gradient (CG) RpropFeature not available
libKriging
Richet et al. (2023)
C++ Python R MATLAB GNU OctaveApache-2.0libKriging/libKrigingv1.2.2PyPI CRANlibKriging contributorsdocs r docs API colab notebooksGitHub discussionsFeature not availableGaussian Process Regression (GPR) Ordinary Kriging (OK) Universal Kriging (UK) Input-warped Kriging (WarpKriging) Deep Kernel Learning (DKL) Nested Kriging (NK / PoE / gPoE / BCM / rBCM)\( \mathcal{O}(N^3) \)Constant Linear Interactive QuadraticAnisotropicGaussian Exponential Matern32 Matern52Feature not availableGaussianInferableCustomMaximum Likelihood Estimation (MLE) Leave-One-Out Cross-Validation (LOOCV) Log-Marginal Posterior (LMP) Vecchia approximated log-likelihood (LLVecchia) Nystrom approximated log-likelihood (LLNystrom)BFGS Multi-start BFGS NewtonFeature availableLeave-One-Out Cross-Validation (LOOCV)
mogptk
de Wolff et al. (2020)
PythonMITGAMES-UChile/mogptkv0.5.3PyPIGAMES Universidad de Chile mogptk contributorsdocs tutorials examplesPyTorchFeature availableGaussian Process Regression (GPR) Multi-output Gaussian Process (MOGP) Spectral Mixture (SM) Multi-Output Spectral Mixture (MOSM) Cross Spectral Mixture (CSM) Spectral Mixture Linear Model of Coregionalization (SM-LMC) Convolutional Gaussian (CONV) Multi-Output Harmonizable Spectral Mixture (MOHSM) Sparse Gaussian Process Regression (SGPR) Sparse Variational Gaussian Process (SVGP) Variational Gaussian Process (VGP) Sparse Pseudo-input GP (Snelson and Ghahramani)\( \mathcal{O}(N^3) \) \( \mathcal{O}(N^2) \)Constant Linear Multi-Output Mean CustomIsotropic AnisotropicConstant Cosine Exponential Function Linear Locally Periodic Matern Periodic Polynomial Rational Quadratic Sinc Spectral Spectral Mixture Squared Exponential White noise Change Points Cross Spectral (CSM) Gaussian Convolution Process (CONV) Independent Multi-output Linear Coregionalization Multi-Output Harmonizable Spectral (MOHSM) Multi-Output Spectral (MOSM) Multi-Output Spectral Mixture Uncoupled Multi-Output Spectral (uMOSM) CustomFeature availableSum Product Mixture Automatic Relevance DeterminationBernoulli Beta Chi-Squared Exponential Gamma Gaussian Laplace Log Gaussian Log Logistic Multi-Output Likelihood Poisson Student-T Weibull CustomCustom Fixed Non-Trainable default value: 1e-8 default value: 1e-6Inferable CustomMaximum Likelihood Estimation (MLE) Exact inference Evidence Lower Bound (ELBO) Variational Inference (VI)Adam L-BFGS Adagrad SGD PyTorch optimizerFeature not availableMean Absolute Error (MAE) Mean Absolute Percentage Error (MAPE) Mean Squared Error (MSE) Root Mean Squared Error (RMSE)
MUQ
Parno et al. (2021)
C++ PythonBSD-3-Clausemituq/muq2v0.5.0condaMassachusetts Institute of Technology Dartmouth College New York University Heidelberg University National Science Foundation US Department of Energydocs examples py examplesslackFeature not availableGaussian Process Regression (GPR) Markov (State Space) Gaussian ProcessZero Constant Linear Linear Transform SumIsotropic AnisotropicSquared Exponential Matern Periodic Linear Constant White noise Linear TransformFeature availableSum Product ConcatenateGaussiandefault value: 1e-14CustomFeature not available
Neural Tangents
Novak et al. (2020)
PythonApache-2.0google/neural-tangentsv0.6.5PyPIGoogle Brain University of Cambridge Neural Tangents contributorsdocs colab notebooks talkGitHub discussionsJAXFeature availableGaussian Process Regression (GPR) Neural Network Gaussian Process (NNGP) Neural Tangent Kernel (NTK) NTK Gaussian Process (NTKGP)NNGP NTKFeature availableSum Product Concatenation Serial composition Parallel compositionCustom default value: 0.0Exact inference Infinite-time Gradient Flow (NTK)Feature not available
ooDACE
Couckuyt et al. (2014)
MATLABGPL-3.0n/av1.4add to the pathGhent UniversitydocsFeature not availableGaussian Process Regression (GPR)\( \mathcal{O}(N^3) \)Zero Constant Linear PolynomialIsotropic AnisotropicGaussian Matern32 Matern52 ExponentialFeature not availableGaussianInferableMaximum Likelihood Estimation (MLE) Cross-validation estimation (CV)NLopt PCTOptimizerFeature not availableMean Squared Error (MSE) Leave-One-Out Cross-Validation (CV)
OpenCossan
Patelli (2017)
MATLABLGPLcossan-working-group/OpenCossanv1.1.2add to the pathUniversity of Liverpool Leibniz University Hannover OpenCossan contributorsdocs tutorialsFeature not availableGaussian Process Regression (GPR)Constant Linear QuadraticAnisotropicExponential Power Exponential Gaussian Linear Spherical SplineFeature not availableFeature not availableCoefficient of determination (\( R^2 \))
OpenTURNS
Baudin et al. (2016)
C++ PythonLGPLopenturns/openturnsv1.26PyPI condaAirbus Group EDF R&D Phimeca Engineering IMACS ONERA OpenTURNS contributorsdocschat forum stackoverflowFeature not availableGaussian Process Regression (GPR)\( \mathcal{O}(N^3) \)Constant Linear Quadratic CustomIsotropic AnisotropicSquared Exponential Exponential Matern Kronecker Rank-M Spherical Tensorized CustomFeature availableProductGaussianCustom InferableInferableMaximum Likelihood Estimation (MLE)NLopt COBYLA L-BFGS-B TNCFeature availableCoefficient of determination (\( R^2 \)) Mean Squared Error (MSE)
PyDeepGP
SheffieldML (2016)
PythonBSD-3-ClauseSheffieldML/PyDeepGPmaster (2021-05-04)University of Sheffield PyDeepGP contributorsexamples jupyter notebooksNumPy SciPyFeature not availableDeep Gaussian Processes (DGP) Variational Auto-encoded Deep GPs\( \mathcal{O}(NM^2) \)Isotropic AnisotropicSquared Exponential BiasFeature availableSumGaussianInferableVariational Inference (VI) Stochastic Variational Inference (SVI)GPy optimizerFeature not available
pyGPs
Neumann et al. (2015)
PythonFreeBSDmarionmari/pyGPsv1.3.5PyPIWashington University Fraunhofer IAIS TU Dortmund Sproutling pyGPs contributorsdocs examplesNumPy SciPyFeature not availableGaussian Process Regression (GPR) Gaussian Process Classification (GPC) GPR with Fully Independent Training Conditional (FITC) GPC with Fully Independent Training Conditional (FITC) Multi-class Gaussian Process Classification (one-vs-one)Zero One Constant Linear Sum Product Scaled Power CustomIsotropic AnisotropicConstant Linear Matern Periodic Polynomial Piecewise Polynomial Squared Exponential Rational Quadratic Gabor Spectral Mixture White noise Graph kernels Precomputed CustomFeature availableSum Product ScaleGaussian Probit LaplaceCustom Inferable default value: 0.1InferableMaximum Likelihood Estimation (MLE) Exact inference Expectation Propagation (EP) Laplace Approximation (LA) Fully Independent Training Conditional (FITC)Minimize Conjugate Gradient (CG) BFGS Scaled Conjugate Gradient (SCG)Feature availableRoot Mean Squared Error (RMSE) Negative Log Predictive Density (NLPD)
pyinterpolate
Moliński (2022)
PythonBSD-3-ClauseDataverseLabs/pyinterpolatev1.2.1PyPI condaDataverse Labs pyinterpolate contributorsdocs tutorials jupyter notebooks APIGitHub discussions chatNumPy SciPyFeature not availableGaussian Process Regression (GPR) Indicator Kriging Poisson Kriging Block Kriging (area-to-area, area-to-point)Constant LinearIsotropic AnisotropicCircular Cubic Exponential Gaussian Linear Power SphericalFeature not availableGaussianCustom InferableVariogram autofit (RMSE/MAE/Bias/SMAPE)Grid SearchFeature availableRoot Mean Squared Error (RMSE) Mean Absolute Error (MAE)
PyKrige
Müller et al. (2022)
PythonBSD-3-ClauseGeoStat-Framework/PyKrigev1.7.3PyPI condaUFZ University of Potsdam CASUS Utrecht University PyKrige contributorsdocs examples APIGitHub discussionsNumPy SciPyFeature not availableGaussian Process Regression (GPR) Ordinary Kriging (OK) Universal Kriging (UK) Regression Kriging Classification Kriging (Simplicial Indicator Kriging)Constant Linear Point Logarithmic External Drift CustomIsotropic AnisotropicLinear Power Gaussian Spherical Exponential Hole-Effect CustomFeature not availableGaussianCustom InferableVariogram fitting (soft L1 norm minimization)Feature availableCoefficient of determination (\( R^2 \)) Leave-One-Out Cross-Validation (CV)
PyMC
Abril-Pla et al. (2023)
PythonApache-2.0pymc-devs/pymcv6.3.2PyPI condaArviZ-Devs Boston University Google Research University of Toronto The Hospital for Sick Children Philadelphia Phillies Baseball Operations Department PyMC Labs Stony Brook University Universidad Nacional de San Luis Forschungszentrum Jülich University of Oxford NumFOCUS Mistplay ODSC ADIA Lab PyMC contributorsdocs examples APIforum GitHub discussionsJAX NumbaFeature availableGaussian Process Regression (GPR) Latent Gaussian Process Sparse Gaussian Process Regression (SGPR) Kronecker Structured Gaussian Process Hilbert Space Gaussian Process (HSGP) Student-T Process (TP) Gaussian Process Classification (GPC) Multi-output Gaussian Process (MOGP)\( \mathcal{O}(N^3) \) O(NM + M)Zero Constant Linear CustomIsotropic AnisotropicConstant White noise Squared Exponential Rational Quadratic Exponential Matern12 Matern32 Matern52 Linear Polynomial Cosine Periodic Circular Gibbs Warped Input Scaled Covariance Kronecker Coregion CustomFeature availableSum Product Scale ExponentiationGaussian Student-T Bernoulli CustomCustom default value: 1e-6InferableMarkov Chain Monte Carlo (MCMC) No-U-Turn Sampler (NUTS) Maximum A Posteriori (MAP) Automatic Differentiation Variational Inference (ADVI) Variational Free Energy (VFE) Fully Independent Training Conditional (FITC) Deterministic Training Conditional (DTC)L-BFGS-B BFGS Powell SciPy optimizerFeature not available
pymc-learn
Emaasit et al. (2018)
PythonBSD-3-Clausepymc-learn/pymc-learnv0.0.1rc3PyPIpymc-learn contributorsdocs user manuals examples API jupyter notebooksstackoverflowFeature availableGaussian Process Regression (GPR) Sparse Gaussian Process Regression (SGPR) Student-T Process Regression (STPR)\( \mathcal{O}(N^3) \) \( \mathcal{O}(NM^2) \)Zero ConstantIsotropic AnisotropicSquared Exponential Dot Product White noiseFeature availableSumGaussian Student-TInferableVariational Inference (VI) Automatic Differentiation Variational Inference (ADVI) Markov Chain Monte Carlo (MCMC) No-U-Turn Sampler (NUTS)Feature not availableCoefficient of determination (\( R^2 \))
PYRO
Bingham et al. (2019)
PythonApache-2.0pyro-ppl/pyro1.9.1PyPI condaUber AI Stanford University Broad Institute Linux Foundation PYRO contributorsdocs examplesforumPyTorchFeature availableGaussian Process Regression (GPR) Sparse Gaussian Process Regression (SGPR) Variational Gaussian Process (VGP) Sparse Variational Gaussian Process (SVGP) Gaussian Process Classification (GPC) Gaussian Process Latent Variable Model (GPLVM) Multi-output Gaussian Process (MOGP)\( \mathcal{O}(N^3) \) \( \mathcal{O}(NM^2) \) \( \mathcal{O}(M^3) \)Zero CustomIsotropic AnisotropicSquared Exponential Matern32 Matern52 Exponential Rational Quadratic Periodic Cosine Linear Polynomial Constant White noise Brownian Coregionalize CustomFeature availableSum Product Exponent Vertical Scaling WarpingGaussian Bernoulli Softmax Poisson CustomCustom default value: 1e-6InferableMaximum Likelihood Estimation (MLE) Maximum A Posteriori (MAP) Evidence Lower Bound (ELBO) Variational Inference (VI) Stochastic Variational Inference (SVI) Markov Chain Monte Carlo (MCMC) Hamiltonian Monte Carlo (HMC) Variational Free Energy (VFE) Fully Independent Training Conditional (FITC) Deterministic Training Conditional (DTC)Adam PyTorch optimizerFeature not available
scikit-learn
Pedregosa et al. (2011)
PythonBSD-3-Clausescikit-learn/scikit-learn1.9.1PyPI condaCommunity driven NVIDIA INRIA Hugging Face Microsoft Quansight Labs sci-kit-learn contributorsdocs examples tutorials APIblog stackoverflow GitHub discussionsNumPy SciPyFeature not availableGaussian Process Regression (GPR) Gaussian Process Classification (GPC)\( \mathcal{O}(N^3) \)ZeroIsotropic AnisotropicMatern Constant Dot Product Squared Exponential Rational Quadratic White noiseFeature availableSum Product Exponentiation CompoundGaussian BernoulliCustom default value: 1e-10InferableMaximum Likelihood Estimation (MLE) Laplace Approximation (LA) Expectation Propagation (EP)L-BFGS-B SciPy optimizerFeature availableMean Squared Error (MSE) Mean Squared Log Error (MSLE) Root Mean Squared Error (RMSE) Mean Absolute Error (MAE) Mean Absolute Percentage Error (MAPE) Median Absolute Error (MedAE) Coefficient of determination (\( R^2 \)) Explained Variance Max Error
SMT
Saves et al. (2024)
PythonBSD-3-ClauseSMTorg/smtv2.15.0PyPIISAE SUPEAERO NASA ONERA University of Michigan University of San Diego Polytechnique Montréal SMT contributorsdocs tutorialsGitHub discussionsNumPy Numba SciPyFeature not availableGaussian Process Regression (GPR) Sparse Gaussian Process Regression (SGPR) Marginal GP Inference Kriging with Partial Least Squares (KPLS / KPLSK) Gradient-enhanced Kriging (GEK)\( \mathcal{O}(N^3) \) \( \mathcal{O}(NM^2) \)Constant Linear QuadraticIsotropic AnisotropicPower Exponential Absolute Exponential Squared Exponential Matern32 Matern52 Categorical HierarchicalFeature not availableGaussianCustom Inferable default value: 2.22e-14InferableMaximum Likelihood Estimation (MLE) Fully Independent Training Conditional (FITC) Variational Free Energy (VFE)COBYLA TNCFeature available
STAN
Stan Development Team (2017)
R C++ julia Python MATLABBSD-3-Clausebrian-lau/MatlabStanv2.15.1.0CRAN PyPI Pkg.jl condaStan Development Team NumFOCUS Stan contributors MatlabStan contributors RStan contributors pyStan contributors Stan.jl contributorsdocs r docs mat docs py docs jl docsforum slackFeature availableGaussian Process Regression (GPR) Gaussian Process Classification (GPC) Multi-output Gaussian Process (MOGP)\( \mathcal{O}(N^3) \)Zero CustomIsotropic AnisotropicSquared Exponential Dot Product Exponential Matern32 Matern52 Periodic CustomFeature not availableGaussian Poisson Bernoulli CustomCustomInferableMarkov Chain Monte Carlo (MCMC) Hamiltonian Monte Carlo (HMC) No-U-Turn Sampler (NUTS) Maximum A Posteriori (MAP) Automatic Differentiation Variational Inference (ADVI) Pathfinder Laplace Approximation (LA)L-BFGS BFGS NewtonFeature not available
Stheno
Tebbutt et al. (2019)
julia PythonMITJuliaGaussianProcesses/Stheno.jlv0.8.2Pkg.jl PyPIUniversity of Cambridge Stheno.jl contributors Stheno py contributorspy docs jl docs py examples jl examples py API jl API talkGitHub discussionsNumPy TensorFlow PyTorch JAXFeature not availableGaussian Process Regression (GPR) Gaussian Process Probabilistic Programme (GPPP) Multi-output Gaussian Process (MOGP) Sparse Gaussian Process Regression (SGPR) GPR with Fully Independent Training Conditional (FITC) GPR with Deterministic Training Conditional (DTC) Bayesian Linear RegressionZero Constant CustomIsotropic AnisotropicSquared Exponential Exponential Gamma Exponential Matern Matern12 Matern32 Matern52 Matern72 Rational Quadratic Rational Gamma Rational Linear Polynomial Piecewise Polynomial Periodic Cosine Constant White noise Exponentiated Fractional Brownian Motion Gabor Gibbs Neural Network Wiener Spectral Mixture Independent Multi-output Intrinsic Coregionalization Latent Factor Linear Mixing Model Causal Exponentiated Quadratic (CEQ) Decaying LogFeature availableSum Product Scale Tensor ProductGaussianCustom default value: 1e-12Inferable CustomMaximum Likelihood Estimation (MLE) Markov Chain Monte Carlo (MCMC) Hamiltonian Monte Carlo (HMC) Evidence Lower Bound (ELBO) Variational Free Energy (VFE) Fully Independent Training Conditional (FITC) Deterministic Training Conditional (DTC)Optim.jl optimizer BFGS Nelder-Mead L-BFGS-B PyTorch optimizer AdamFeature not available
STK
Bect et al. (2023)
MATLAB GNU OctaveGPL-3.0stk-kriging/stk2.8.1add to the pathCentraleSupélec STK contributorsdocs examplesmailing-listFeature not availableGaussian Process Regression (GPR)\( \mathcal{O}(N^3) \)Zero Constant LinearIsotropic AnisotropicGaussian Matern32 Matern52 Spherical DiscreteFeature not availableGaussianInferableRestricted Maximum Likelihood Estimation (REMLE)fmincon fminsearchFeature availableLeave-One-Out Cross-Validation (LOOCV)
SuperGauss
Ling et al. (2020)
RGPL-3.0mlysy/SuperGauss2.0.4CRANUniversity of Waterloo SuperGauss contributorsdocs tutorialsFeature not availableStationary Gaussian Time Series (Toeplitz likelihood)\( \mathcal{O}(N^2) \) O(N log^2 N)Zero CustomIsotropicFractional Brownian Motion Matern Power Exponential ExponentialFeature not availableGaussianMaximum Likelihood Estimation (MLE)optimize nlm Newton's MethodFeature not available
Surrogates.jl
Rackauckas et al. (2024)
juliaMITSciML/Surrogates.jlv8.0.0Pkg.jlChan Zuckerberg Initiative Wellcome Trust Microsoft Surrogates.jl contributorsdocschatFeature not availableGaussian Process Regression (GPR) Gradient-enhanced Kriging (GEK) Kriging with Partial Least Squares (KPLS / KPLSK) Gradient-enhanced KPLS (GEKPLS)\( \mathcal{O}(N^3) \)ConstantIsotropic AnisotropicPower Exponential Gaussian Matern52 PolynomialFeature availableSum Product Scale Tensor ProductGaussianCustom default value: 10*eps()CustomMaximum Likelihood Estimation (MLE)Nelder-MeadFeature not available
TemporalGPs.jl
Tebbutt et al. (2021)
juliaMITJuliaGaussianProcesses/TemporalGPs.jlv0.7.3Pkg.jlUniversity of Cambridge Aalto University TemporalGPs.jl contributorsexamples talkDistributions.jlFeature not availableGaussian Process Regression (GPR) Markov (State Space) Gaussian Process Spatio-Temporal Gaussian Process Sparse Markov Gaussian Process Gaussian Process Classification (GPC)\( \mathcal{O}(N) \)Zero ConstantIsotropicMatern12 Matern32 Matern52 Cosine Approximate Periodic Constant Squared ExponentialFeature availableSum Product Scale SeparableGaussian BernoulliCustomInferable CustomMaximum Likelihood Estimation (MLE) Evidence Lower Bound (ELBO) Deterministic Training Conditional (DTC)Optim.jl optimizer BFGSFeature not available
TensorFlow Probability
Dillon et al. (2017)
PythonApache-2.0tensorflow/probabilityv0.25.0PyPI condaGoogle Columbia University TensorFlow Probability contributorsdocs API tutorials examples jupyter notebooksstackoverflow mailing-list blogTensorFlow JAXFeature availableGaussian Process Regression (GPR) Variational Gaussian Process (VGP) Student-T Process Regression Gaussian Process Latent Variable Model (GPLVM) Multi-output Gaussian Process (MOGP)Zero CustomIsotropic AnisotropicSquared Exponential Matern12 Matern32 Matern52 Matern Periodic Rational Quadratic Constant Linear Polynomial Gamma Exponential Exponential Curve Parabolic Pointwise Exponential Spectral Mixture Change Points Schur Complement Feature Scaled Feature Transformed Kumaraswamy Transformed CustomFeature availableSum ProductGaussian CustomCustom default value: 1e-6InferableMaximum Likelihood Estimation (MLE) Evidence Lower Bound (ELBO) Variational Inference (VI) Markov Chain Monte Carlo (MCMC)Adam L-BFGS BFGS Nelder-Mead Differential Evolution Stochastic Gradient Langevin Dynamics (SGLD) Variational SGDFeature not available
tinygp
Foreman-Mackey et al. (2024)
PythonMITdfm/tinygpv0.3.1PyPISimons Foundation tinygp contributorsdocs tutorials APIGitHub discussionsJAX NumPyroFeature availableGaussian Process Regression (GPR) Scalable Gaussian Processes\( \mathcal{O}(N^3) \)CustomIsotropic AnisotropicConstant Polynomial Dot Product Exponential Squared Exponential Matern32 Matern52 Cosine Exponential Sine Squared Rational Quadratic CustomFeature availableSum ProductGaussian Non-GaussianCustomInferableMaximum Likelihood Estimation (MLE)jaxoptFeature available
Trieste
Picheny et al. (2023)
PythonApache-2.0secondmind-labs/triestev4.6.0PyPISecondmind Labs Trieste contributorsdocs tutorials API jupyter notebooksslack GitHub discussionsTensorFlowFeature availableGaussian Process Regression (GPR) Sparse Gaussian Process Regression (SGPR) Sparse Variational Gaussian Process (SVGP) Variational Gaussian Process (VGP) Gaussian Process Classification (GPC) Multi-fidelity Autoregressive GP Multi-fidelity Nonlinear Autoregressive GP Deep Gaussian Processes (DGP)ConstantMatern52 Matern32 CustomFeature not availableGaussian BernoulliInferableMaximum Likelihood Estimation (MLE) Variational Inference (VI)SciPy optimizer Adam Natural Gradient Descent (NGD)Feature not available
UQLab
Marelli et al. (2014)
MATLABBSD-3-Clausen/av2.1.0add to the pathRSUQ ETH Zürich UQLab contributorsdocs user manuals examplescontact form forumFeature not availableGaussian Process Regression (GPR) Multi-output Gaussian Process (MOGP)\( \mathcal{O}(N^3) \)Zero Constant Linear Quadratic Polynomial CustomIsotropic AnisotropicLinear Exponential Gaussian Matern32 Matern52 CustomFeature not availableGaussianCustom default value: 1e-10InferableMaximum Likelihood Estimation (MLE) Cross-validation estimation (CV)L-BFGS GA HGA CMA-ES HCMA-ESFeature availableLeave-One-Out Cross-Validation (LOOCV) Validation Error
UQpy
Olivier et al. (2020)
PythonMITSURGroup/UQpyv4.2.1PyPI condaJohns Hopkins University UQpy contributorsdocs examplesGitHub discussionsNumPy SciPyFeature not availableGaussian Process Regression (GPR)\( \mathcal{O}(N^3) \)Constant Linear Quadratic CustomIsotropic AnisotropicSquared Exponential Matern CustomFeature not availableGaussianInferableMaximum Likelihood Estimation (MLE)SciPy optimizer MinimizeOptimizer COBYLAFeature not available
UQ[py]Lab
Lataniotis et al. (2021)
PythonBSD-3-Clausen/av1.0.2PyPIRSUQ ETH Zürich UQ[py]Lab contributorsdocs user manuals examplescontact form forumFeature not availableGaussian Process Regression (GPR) Multi-output Gaussian Process (MOGP)\( \mathcal{O}(N^3) \)Zero Constant Linear Quadratic Polynomial CustomIsotropic AnisotropicLinear Exponential Gaussian Matern32 Matern52 CustomFeature not availableGaussianCustom default value: 1e-10InferableMaximum Likelihood Estimation (MLE) Cross-validation estimation (CV)L-BFGS GA HGA CMA-ES HCMA-ESFeature availableLeave-One-Out Cross-Validation (LOOCV) Validation Error
UQTk
Debusschere et al. (2017)
C++BSD-3-Clausesandialabs/UQTkv3.1.5Sandia National Laboratories UQTk contributorsdocs user manuals API examplesGitHub discussionsFeature not availableGaussian Process Regression (GPR)PolynomialAnisotropicSquared ExponentialFeature not availableGaussiandefault value: 1e-6 CustomExact inference Maximum A Posteriori (MAP)L-BFGSFeature not available

Source: © A. Faraci, P. Beaurepaire, N. Gayton; A comprehensive guide to Gaussian Process libraries: bridging theory with practice through features, limitations, and performance.

This Project has received funding from the European Union’s Horizon 2020 research and innovation programme under Marie Sklodowska-Curie project GREYDIENT – Grant Agreement n°955393