AbstractGPs.jl icon indicating copy to clipboard operation
AbstractGPs.jl copied to clipboard

GP Sampling

Open Crown421 opened this issue 7 months ago • 3 comments
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).

Crown421 avatar Apr 06 '25 15:04 Crown421