8 ms·
Gen: General-purpose probabilistic programming model with programmable inference
- ajb 7y agoOT (kind of): Do any of these recent Probabalistic Languages support utility maximisation? The only one I've found so far is IBAL (http://hopl.info/showlanguage.prx?exp=7766&language=IBAL http://hopl.info/showlanguage.prx?exp=7766&language=IBAL) which seems to have died.
- Vaslo 7y agoWould this language be comparable to a package like JAGS?
- nextos 7y agoYes, but JAGS would only be able to solve a subset of the problems you can do inference on using a general probabilistic programming language like Gen. That's because JAGS only supports models that can be expressed as graphical models.
- ChrisRackauckas 7y agoJAGS defined the optimizers you're allowed to use for you. Its MCMC algorithm is what you get. For simple problems, that works, but in many complex cases you might want have to tweak things to make them work. For example, you may want to make it explore the space more easily at first, and then fix to a few discrete variables to find the max of some variables, then jiggle all a little bit in that area. The authors of Gen were really keen about this ability to tweak when I talked to them, and it's a core capability of Gen. They showed cases which wouldn't converge in other systems because they were lacking this ability to take user input. This is probably the biggest change from previous iterations like JAGS, Stan, PyMC3, Turing.jl, etc. And then the dynamic compiler mode uses AD to work with Julia packages, so you can easily set it up to do Bayesian inference on neural (Flux.jl) partial differential equations with high order adaptive implicit integrators with DifferentialEquations.jl, which is why I am starting to use this library :). At the same time, there is also a static compiled sublanguage of Gen which is extremely fast (but cannot use arbitrary Julia packages of course).
- byt143 7y agoThis really showcases Julia's power. This is a DSL built on top of Julia, written in pure Julia. So, a Julia package ;) https://github.com/probcomp/Gen https://github.com/probcomp/Gen
- dang 7y agohttps://news.ycombinator.com/item?id=20301352 https://news.ycombinator.com/item?id=20301352 https://news.ycombinator.com/item?id=20302158 https://news.ycombinator.com/item?id=20302158