I’ve fitted my model and am trying to compute posterior predictive distributions for new data, however currently the
sample_posterior_predictive routine returns an empty object when I run it with defaults, i.e. when I just give it the training trace. If, on the other hand, I specific var_names=[some_variables…], then I get a seemingly useful trace out. Is this the correct behaviour, or am I doing some wrong? What I mean is that previously, in v3 I believe was the last I used, the
sample_posterior_predictive routine would just give predictive distributions for all the variables in the model by default. Is that no longer the case? I now have to explicitly list them all? Additionally my actual data prediction variable, the “likelihood” variable, doesn’t seem to be included in this list so I can’t seem to get a trace for the thing I want most.
I know I haven’t given you the model yet, so I’m just happy to be informed about the general expected behaviour of this function :). If what I am seeing sounds wrong then I’ll work harder to create a minimal example.
Edit: Ok I did more experimenting with simpler models and it seems that there everything works as I expected, i.e. no need to specify var_names for sample_posterior_predictive. So I guess it is something in my model (though it samples just fine so I am confused). Any idea why sample_posterior_predictive would return an empty dataset?
Edit 2: So sample_posterior_predict works fine using the training dataset again. So I guess something is wrong in the new input data and/or the model definition. It’s strange though because there is no error or anything, just empty output…