I’m interested in estimating model evidence (marginal likelihood) for probabilistic models (using the DynamicPPL framework, but let me know if there is something on this matter with Soss.jl). The only available solution I’m aware of is Nested Sampling, but it’s currently not integrated with Turing.
I know they are other solutions out there (e.g. bridge sampling which is maybe more straigthforward when you already have samples drawn from the posterior distribution), but can’t find anything in the Turing ecosystem, and actually in Julia at all.
Is that something people would be interested to have, or is it to specific/model-sensitive to be delivered as a generic package ?
I also added a interface with Turing (via DynamicPPL.logjoint and Bijectors). It’s not registered yet since I’m having trouble with automatizing the documentation
The basic bridgesampling method requires nothing more than an AbstractMatrix of samples, a function that computes the logjoint (completely arbitrary as soon as it takes a sample input and returns a real scalar) and 2 vectors for lower and upper bounds.
So yes pretty agnostic ^^ I’m planning to interface with soss as i did with DynamicPPL, but i’m more familiar with the latter so I started there.