Things are coming together for #ArviZ's InferenceData (https://github.com/arviz-devs/InferenceObjects.jl) to be a supported output type for #Turing and #JuliaLang's  #Stan interface, similarly to how it is for #PyMC.

For details, see https://github.com/TuringLang/MCMCChains.jl/issues/381 and https://github.com/StanJulia/StanSample.jl/issues/60

#statistics #mcmc_stan #bayesian

GitHub - arviz-devs/InferenceObjects.jl: Storage for results of Bayesian inference

Storage for results of Bayesian inference. Contribute to arviz-devs/InferenceObjects.jl development by creating an account on GitHub.

GitHub

This has some really nice benefits for #Bayesian folks in #JuliaLang.

First, InferenceData is just more useful than MCMCChains.Chains because it contains more data, preserves the array structure of the draws, and integrates better with the ecosystem thanks to DimensionalData. It also follows a multi-language spec, so it's great for long-term storage and communication of inference results.

Second, since every PPL has its trade-offs, this promotes users using the best PPL for a given model with no changes to their downstream inference pipeline. While ArviZ.jl already supports this, having direct support in these PPLs makes this even easier.

Finally, part of this effort involves moving this integration code out of #ArviZ.jl, which still has #Python dependencies, and into pure Julia packages, so users get all of this with the convenience of #JuliaLang's package management.

While Python interop in Julia usually works quite well, sometimes the Python environment gets messed up, which blocks users from using ArviZ.jl 😦 , so moving this code to pure Julia packages supports more users.