I’ve built a Turing model for some non-Gaussian data which contains a latent Gaussian process for spatial autocorrelation. I’ve run it on a small simulated dataset to confirm that it works. Now I want to run it on my real data–which includes about 11,000 data points, so impractical for a dense GP.
A simple MWE is below (the real model more complicated, but the essence is the same, i.e. GP => transformation => parameter of data distribution). Is there a simple(ish) way to modify this to use the sparse inducing-point approximations available in Stheno instead of the full GP?
using Turing, Stheno, Distributions, Random
Random.seed!(1)
x = 1.0:10.0
y = rand(GP(Matern32(), GPC())(x))
λ = exp.(y)
z = rand.(Poisson.(λ))
@model function example_model(x, z)
y ~ GP(Matern32(), GPC())(x)
λ = exp.(y)
z .~ Poisson.(λ)
end
mod = example_model(x, z)
chn = sample(mod, NUTS(), 100)