Turing.jl Newsletter 6
Newsletter
The fortnightly newsletter for the Turing.jl probabilistic programming language
Turing v0.38 has just been released and incorporates the changes from DynamicPPL which were mentioned in the last newsletter. It also contains a fix for the Gibbs sampler, so that you can now specify arbitrary VarNames for each sampler (previously, you could only specify single-symbol VarNames). For example, you can now specify the a.x
and b.x
VarNames here:
@model function inner()
~ Normal()
x end
@model function outer()
~ to_submodel(inner())
a ~ to_submodel(inner())
b end
sample(outer(), Gibbs(@varname(a.x) => MH(), @varname(b.x) => MH()), 100)
It is theoretically possible that this will be slow for VarNames that involve indexing (e.g. x[1]
), although we don’t have an example of this yet. If you find anything you think should be faster, let us know.
One other minor point: on ADTests you can now hover over a model name to see its definition.
Back to top