TuringLang / Turing.jl

Bayesian inference with probabilistic programming.
https://turinglang.org
MIT License
2.03k stars 218 forks source link

Any plans on implementing DREAM (Differential Evolution based particle inference)? #1640

Closed robertfeldt closed 1 year ago

robertfeldt commented 3 years ago

Has there been any discussion on implementing any of the DREAM and its variant MCMC algorithms as samplers for Turing? Specifically this paper includes simple Matlab implementations of DREAM and looks relatively simple to implement for Turing:

https://escholarship.org/content/qt6j55p5kh/qt6j55p5kh.pdf J. Vrugt, "Markov chain Monte Carlo simulation using the DREAM software package: Theory, concepts, and MATLAB implementation"

I'm not sure if DREAM is considered state-of-the-art any longer but I remember having good results with it a few years back. Would this maybe fit best in the particle-based package or would a better "home" be Turing.jl proper? In case I get some time over this summer I might give it a go.

Red-Portal commented 1 year ago

New inference algorithms can always be incorporated into the Turing ecosystem by implementing the LogDensityProblems interface in their own package. This is how most inference algorithms are handled, even those directly under the Turing umbrella. So if anybody is interested in contributing their own inference algorithm, this is the way to go.