AbstractGPs.jl
AbstractGPs.jl copied to clipboard
GP Sampling
trafficstars
Summary This PR is a (at this stage) draft PR to allow sampling of GP, including sampling via Cholesky, via Random Fourier Features, and pathwise/ decoupled sampling.
Proposed changes
The main interface revolves around a new GPSampler struct, as a subtype of Random.Sampler, which takes a GP and a "method". One can then draw from this sampler using rand`.
However, there are still issues to this implementation
- GP must have a kernel (when using RFF)
- Not yet working with sparse approximations
- Pathwise functionality was written to (theoretically) enable using Cholesky samples for the prior, and RFF for the posterior, but in practice one would never want to do that.
- It might not be worth to keep this use case around
- Multi-Output probably not working yet (and not tested)
What alternatives have you considered? Making a separate package, and/or (due to the complexity) just keeping it good enough for my needs.
Breaking changes Should not be breaking (at this point).