Gaussian Processes for Machine Learning in Julia
JuliaGPs is an organisation interested in making Gaussian process models work well in theJulia programming language.The packages in this ecosystem are targeted at people who want to useGaussian processes as Bayesian statistical models,or people who want to do methodological research on Gaussian processes.
If you're new to the organisation, you should develop an understanding of the core packages:
KernelFunctions
andGPLikelihoods
are low-level packages implementing APIs for kernel functions and observation likelihoods, respectively, and include implementations of the most commonclasses of kernels and likelihoods used in pratice.AbstractGPs
andApproximateGPs
are higher-level packages that implement inference of full and sparse GPs.AbstractGPs
is restricted to Gaussian likelihoods, whileApproximateGPs
also allows for non-Gaussian ones.AbstractGPs
dependends onKernelFunctions
, whileApproximateGPs
depends onAbstractGPs
and additionally onGPLikelihoods
.The lower-level packages are reexported, and thus to have the complete experience at your fingertips, you can just useApproximateGPs
.In order to develop an understanding of the ecosystem, however, it is best to study the packages in the above order 1-4.
These core packages are maintained jointly byall org members, and we try to ensure that they work well and are of a high standard.Consequently, you should expect to recieve good support when working with them, for example you should expect prompt responses when you open issues / pull requests.
You'll notice a variety of other packages in this organisation.These are all packages which depend on the above core packages in some way or another.Often they're developed by an org member to support their personal research agenda.They generally only have 1 or 2 maintainers, so you should expect a lower level of support.
Team
While numerous people have contributed to the JuliaGPs ecosystem, core contributors (in alphabetical order) includeDavid Widmann,Hong Ge,Ross Viljoen,Sharan Yalburgi,ST John,Théo Galy-Fajou, andWill Tebbutt
PinnedLoading
- KernelFunctions.jl
KernelFunctions.jl PublicJulia package for kernel functions for machine learning
- ApproximateGPs.jl
ApproximateGPs.jl PublicApproximations for Gaussian processes: sparse variational inducing point approximations, Laplace approximation, ...
- GPLikelihoods.jl
GPLikelihoods.jl PublicProvides likelihood functions for Gaussian Processes.
Repositories
- KernelSpectralDensities.jl Public
A Julia package work with spectral densities of stationary kernels.
JuliaGaussianProcesses/KernelSpectralDensities.jl’s past year of commit activity - TemporalGPs.jl Public
Fast inference for Gaussian processes in problems involving time. Partly built on results fromhttps://proceedings.mlr.press/v161/tebbutt21a.html
JuliaGaussianProcesses/TemporalGPs.jl’s past year of commit activity - AugmentedGPLikelihoods.jl Public
Provide all functions needed to work with augmented likelihoods (conditionally conjugate with Gaussians)
JuliaGaussianProcesses/AugmentedGPLikelihoods.jl’s past year of commit activity - ApproximateGPs.jl Public
Approximations for Gaussian processes: sparse variational inducing point approximations, Laplace approximation, ...
JuliaGaussianProcesses/ApproximateGPs.jl’s past year of commit activity