Sequential learning in NumPyro with NUTS

Hi devs!

I want to update my Bayesian model sequentially using

The issue is, I don’t have a closed form over my posterior. Currently, at each iteration, I receive a new observation (x,y). Then, I refit the model using NUTS on the whole new dataset D + {(x, y)}. This seems inefficient because I’m fitting on the same observations multiple time, and not making use of current posterior.

Ideally, I’d like to supply the current posterior as a prior to my model, and only fit the model on the new observation (x,y) using NUTS to get the new posterior.

Is it possible to do something like this in NumPyro?

Hi! I am not aware of a standard method for doing this in general. There are some attempts but there are many caveats, see Updating Priors — PyMC example gallery