Recent Releases of Turing

Turing - v0.40.2

Turing v0.40.2

Diff since v0.40.1

sample(model, NUTS(), N; verbose=false) now suppresses the 'initial step size' message.

Merged pull requests: - Improve error message for initialization failures with troubleshootin… (#2637) (@AoifeHughes) - Suppress info message with verbose=false (#2657) (@penelopeysm)

Closed issues: - Option to suppress "Warning" and "Info" statements (#1398)

- Julia
Published by github-actions[bot] 6 months ago

Turing - v0.40.1

Turing v0.40.1

Diff since v0.40.0

Extra release to trigger Documenter.jl build (when 0.40.0 was released GitHub was having an outage). There are no code changes.

Closed issues: - Broadcasting , addprob and PPL not functionning with PG and SMC sampler (#1996) - values of logp in chain do not include logabsdetjac term (#2617) - Skip extra re-evaluation with Prior (#2641)

- Julia
Published by github-actions[bot] 7 months ago

Turing - v0.40.0

Turing v0.40.0

Breaking changes

DynamicPPL 0.37

Turing.jl v0.40 updates DynamicPPL compatibility to 0.37. The summary of the changes provided here is intended for end-users of Turing. If you are a package developer, or would otherwise like to understand these changes in-depth, please see the DynamicPPL changelog.

  • @submodel is now completely removed; please use to_submodel.

  • Prior and likelihood calculations are now completely separated in Turing. Previously, the log-density used to be accumulated in a single field and thus there was no clear way to separate prior and likelihood components.

    • @addlogprob! f, where f is a float, now adds to the likelihood by default.
    • You can instead use @addlogprob! (; logprior=x, loglikelihood=y) to control which log-density component to add to.
    • This means that usage of PriorContext and LikelihoodContext is no longer needed, and these have now been removed.
  • The special __context__ variable has been removed. If you still need to access the evaluation context, it is now available as __model__.context.

Log-density in chains

When sampling from a Turing model, the resulting MCMCChains.Chains object now contains not only the log-joint (accessible via chain[:lp]) but also the log-prior and log-likelihood (chain[:logprior] and chain[:loglikelihood] respectively).

These values now correspond to the log density of the sampled variables exactly as per the model definition / user parameterisation and thus will ignore any linking (transformation to unconstrained space). For example, if the model is @model f() = x ~ LogNormal(), chain[:lp] would always contain the value of logpdf(LogNormal(), x) for each sampled value of x. Previously these values could be incorrect if linking had occurred: some samplers would return logpdf(Normal(), log(x)) i.e. the log-density with respect to the transformed distribution.

Gibbs sampler

When using Turing's Gibbs sampler, e.g. Gibbs(:x => MH(), :y => HMC(0.1, 20)), the conditioned variables (for example y during the MH step, or x during the HMC step) are treated as true observations. Thus the log-density associated with them is added to the likelihood. Previously these would effectively be added to the prior (in the sense that if LikelihoodContext was used they would be ignored). This is unlikely to affect users but we mention it here to be explicit. This change only affects the log probabilities as the Gibbs component samplers see them; the resulting chain will include the usual log prior, likelihood, and joint, as described above.

Particle Gibbs

Previously, only 'true' observations (i.e., x ~ dist where x is a model argument or conditioned upon) would trigger resampling of particles. Specifically, there were two cases where resampling would not be triggered:

  • Calls to @addlogprob!
  • Gibbs-conditioned variables: e.g. y in Gibbs(:x => PG(20), :y => MH())

Turing 0.40 changes this such that both of the above cause resampling. (The second case follows from the changes to the Gibbs sampler, see above.)

This release also fixes a bug where, if the model ended with one of these statements, their contribution to the particle weight would be ignored, leading to incorrect results.

The changes above also mean that certain models that previously worked with PG-within-Gibbs may now error. Specifically this is likely to happen when the dimension of the model is variable. For example:

julia @model function f() x ~ Bernoulli() if x y1 ~ Normal() else y1 ~ Normal() y2 ~ Normal() end # (some likelihood term...) end sample(f(), Gibbs(:x => PG(20), (:y1, :y2) => MH()), 100)

This sampler now cannot be used for this model because depending on which branch is taken, the number of observations will be different. To use PG-within-Gibbs, the number of observations that the PG component sampler sees must be constant. Thus, for example, this will still work if x, y1, and y2 are grouped together under the PG component sampler.

If you absolutely require the old behaviour, we recommend using Turing.jl v0.39, but also thinking very carefully about what the expected behaviour of the model is, and checking that Turing is sampling from it correctly (note that the behaviour on v0.39 may in general be incorrect because of the fact that Gibbs-conditioned variables did not trigger resampling). We would also welcome any GitHub issues highlighting such problems. Our support for dynamic models is incomplete and is liable to undergo further changes.

Other changes

  • Sampling using Prior() should now be about twice as fast because we now avoid evaluating the model twice on every iteration.
  • Turing.Inference.Transition now has different fields. If t isa Turing.Inference.Transition, t.stat is always a NamedTuple, not nothing (if it genuinely has no information then it's an empty NamedTuple). Furthermore, t.lp has now been split up into t.logprior and t.loglikelihood (see also 'Log-density in chains' section above).

- Julia
Published by github-actions[bot] 7 months ago

Turing - v0.39.10

Turing v0.39.10

Diff since v0.39.9

Added a compatibility entry for DataStructures v0.19.

Merged pull requests: - Use accumulators to fix all logp calculations when sampling (#2630) (@penelopeysm) - CompatHelper: bump compat for DataStructures to 0.19, (keep existing compat) (#2643) (@github-actions[bot])

- Julia
Published by github-actions[bot] 7 months ago

Turing - v0.39.9

Turing v0.39.9

Diff since v0.39.8

Revert a bug introduced in 0.39.5 in the external sampler interface. For Turing 0.39, external samplers should define

Turing.Inference.getparams(::DynamicPPL.Model, ::MySamplerTransition)

rather than

AbstractMCMC.getparams(::DynamicPPL.Model, ::MySamplerState)

to obtain a vector of parameters from the model.

Note that this may change in future breaking releases.

Merged pull requests: - DPPL 0.37 compat for particle MCMC (#2625) (@mhauru) - "Fixes" for PG-in-Gibbs (#2629) (@penelopeysm) - Fix externalsampler interface (#2640) (@penelopeysm)

- Julia
Published by github-actions[bot] 7 months ago

Turing - v0.39.8

Turing v0.39.8

Diff since v0.39.7

MCMCChains.jl doesn't understand vector- or matrix-valued variables, and in Turing we split up such values into their individual components. This patch carries out some internal refactoring to avoid splitting up VarNames until absolutely necessary. There are no user-facing changes in this patch.

Merged pull requests: - Fix typos in README.md (#2624) (@xukai92) - Gibbs fixes for DPPL 0.37 (plus tiny bugfixes for ESS + HMC) (#2628) (@penelopeysm)

Closed issues: - Optimizing model with vector-valued observations produces error when data are a LinearAlgebra.Adjoint (#1481) - Progress reporting in parallel sampling (#2264) - Avoid re-evaluating model in getparams (#2545) - Correctness of Gibbs implementation (?) (#2627)

- Julia
Published by github-actions[bot] 7 months ago

Turing - v0.39.7

Turing v0.39.7

Diff since v0.39.6

Update compatibility to AdvancedPS 0.7 and Libtask 0.9.

These new libraries provide significant speedups for particle MCMC methods.

Merged pull requests: - AdvancedPS v0.7 (and thus Libtask v0.9) support (#2585) (@mhauru) - Add changelog for AdvancedPS/Libtask #2585 (#2622) (@penelopeysm) - Bump patch in Project.toml (#2623) (@penelopeysm)

Closed issues: - Dirac not working properly when assigned in a vector (#2621)

- Julia
Published by github-actions[bot] 7 months ago

Turing - v0.39.6

Turing v0.39.6

Diff since v0.39.5

Bumped compatibility of AbstractPPL to include 0.13.

Merged pull requests: - AbstractPPL@0.13 compat (#2620) (@penelopeysm)

- Julia
Published by github-actions[bot] 7 months ago

Turing - v0.39.5

Turing v0.39.5

Diff since v0.39.4

Fixed a bug where sampling with an externalsampler would not set the log probability density inside the resulting chain. Note that there are still potentially bugs with the log-Jacobian term not being correctly included. A fix is being worked on.

Merged pull requests: - Update logp in varinfo when external samplers are used (#2616) (@penelopeysm)

Closed issues: - Gibbs sampler does not carry through log-prob from an external sampler (#2583)

- Julia
Published by github-actions[bot] 8 months ago

Turing - v0.39.4

Turing v0.39.4

Diff since v0.39.3

Bumped compatibility of AbstractPPL to include 0.12.

Merged pull requests: - Modernise README (#2575) (@penelopeysm) - Gibbs test | Fix dynamic model test in Gibbs sampler suite (#2579) (@AoifeHughes) - Replace 2018 AISTATS conference paper with the latest 2025 ACM paper (#2608) (@sunxd3) - Bump AbstractPPL to 0.12 (#2614) (@penelopeysm)

Closed issues: - HMM example model with missing data yields Malformed dims error (#1359) - Help with intializing the getq function from the tutorials (#1515) - Sampling from prior using return value doesn't work with MvNormal (#1559) - Needs a method to get generatedquantities from the result of an optimization (#1886) - Turing Sampling specified parameters (#1911) - OrdinalLogistic - wrong support? (#1970) - Arraydist and Dirichlet cause stackoverflow error (#1989) - Hidden Markov tutorial crashes (#2074) - Cannot sample from bounded distribution when using Dual types (#2088) - missing keyword arguments not property processed (#2259) - ReverseDiff Error with Vector{Real} Input in Turing Model (#2364) - Remove hmc.jl and mh.jl in light of upstreamed "getparams" into AbstractMCMC (#2367) - Improve Gibbs dynamic model test (#2402) - Question: MCMChain after VI sampling (#2462) - parameters macro for specifying trace manually (aka Turing's VarInfo) (#2492) - Automate formatter on PRs (#2596) - Add a supportpolicy.md (#2601) - How to mimick a discrete bayes net? (#2606) - arraydist() errors with non <:Real data (#2611) - arraydist() errors when custom distribution uses non-Real data (#2612) - Remove DistributionsAD (#2613)

- Julia
Published by github-actions[bot] 8 months ago

Turing - v0.39.3

Turing v0.39.3

Diff since v0.39.2

Improved the performance of Turing.Inference.getparams when called with an untyped VarInfo as the second argument, by first converting to a typed VarInfo.

This makes, for example, the post-sampling Chains construction for Prior() run much faster.

Merged pull requests: - Fix performance of getparams on untyped vi (#2605) (@penelopeysm)

Closed issues: - Prior() sampling takes longer than NUTS() (#2604)

- Julia
Published by github-actions[bot] 8 months ago

Turing - v0.39.2

Turing v0.39.2

Diff since v0.39.1

Fixed a bug in the support of OrderedLogistic (by changing the minimum from 0 to 1).

Merged pull requests: - clean up some more imports (#2589) (@penelopeysm) - Remove DynamicPPL.alg_str tests (#2591) (@penelopeysm) - Update Project.toml (#2598) (@yebai)

Closed issues: - Slice sampling as a Gibbs sampler (#2300) - Regroup tests in test suite (#2441) - ELBO trace during VI (#2543)

- Julia
Published by github-actions[bot] 8 months ago

Turing - v0.39.1

Turing v0.39.1

Diff since v0.39.0

No changes from 0.39.0 — this patch is released just to re-trigger a Documenter.jl run.

Merged pull requests: - Bump tag for GHA (#2586) (@penelopeysm)

Closed issues: - Chain construction errors when no variables are recorded (#1436) - Difficulty sampling a model with truncated normal Likelihood (#1722) - documentation for init_params kwarg (#1983)

- Julia
Published by github-actions[bot] 9 months ago

Turing - v0.39.0

Turing v0.39.0

Diff since v0.38.6

Breaking changes:

Update to the AdvancedVI interface

Turing's variational inference interface was updated to match version 0.4 version of AdvancedVI.jl.

AdvancedVI v0.4 introduces various new features:

  • location-scale families with dense scale matrices,
  • parameter-free stochastic optimization algorithms like DoG and DoWG,
  • proximal operators for stable optimization,
  • the sticking-the-landing control variate for faster convergence, and
  • the score gradient estimator for non-differentiable targets.

Please see the Turing API documentation, and AdvancedVI's documentation, for more details.

Removal of Turing.Essential

The Turing.Essential module has been removed. Anything exported from there can be imported from either Turing or DynamicPPL.

@addlogprob!

The @addlogprob! macro is now exported from Turing, making it officially part of the public interface.

Merged pull requests: - Release: Turing.jl@0.39 (#2517) (@penelopeysm)

- Julia
Published by github-actions[bot] 9 months ago

Turing - v0.38.6

Turing v0.38.6

Diff since v0.38.5

Added compatibility with AdvancedHMC 0.8.

Merged pull requests: - CompatHelper: bump compat for AdvancedHMC to 0.8, (keep existing compat) (#2582) (@github-actions[bot])

- Julia
Published by github-actions[bot] 9 months ago

Turing - v0.38.5

Turing v0.38.5

Diff since v0.38.4

Added compatibility with ForwardDiff v1.

Merged pull requests: - Update to the AdvancedVI@0.4 interface (#2506) (@Red-Portal) - CompatHelper: bump compat for ForwardDiff to 1 for package test, (keep existing compat) (#2523) (@github-actions[bot]) - CompatHelper: add new compat entry for ADTypes at version 1 for package test, (keep existing compat) (#2571) (@github-actions[bot]) - Reorganise code in src/mcmc/Inference.jl (#2573) (@penelopeysm) - Clean up old code (#2574) (@penelopeysm) - Rename mcmc/sample.jl to mcmc/abstractmcmc.jl (#2576) (@yebai)

Closed issues: - AdvancedVI 0.3 and compatibility with Turing.jl (#2430) - Get rid of src/essential (#2512) - Messy code in literatureTuring.jl: a general-purpose probabilistic programming language

- Julia
Published by github-actions[bot] 9 months ago

Turing - v0.38.4

Turing v0.38.4

Diff since v0.38.3

Merged pull requests: - Remove AD backend loops in test suite (#2564) (@penelopeysm) - Refactor HMC initialisation code (#2567) (@penelopeysm) - Disable Mooncake on prerelease; bump min Julia to 1.10.2; regroup CI tests (#2569) (@penelopeysm)

Closed issues: - Refactoring AD Tests (#2307) - Enable Mooncake in ADTypeCheckContext tests (#2372) - AD Meta Issue for 1.0 (#2411) - Specifically, calling sample() seems inordinately slow on 1.10 (#2570)

- Julia
Published by github-actions[bot] 9 months ago

Turing - v0.38.3

Turing v0.38.3

Diff since v0.38.2

getparams(::Model, ::AbstractVarInfo) now returns an empty Float64[] if the VarInfo contains no parameters.

Merged pull requests: - Fix various methods for on empty varinfo (#2561) (@penelopeysm)

- Julia
Published by github-actions[bot] 9 months ago

Turing - v0.38.2

Turing v0.38.2

Diff since v0.38.1

Bump compat for MCMCChains to 7. By default, summary statistics and quantiles for chains are no longer printed; to access these you should use describe(chain).

Merged pull requests: - Increase test sample count (#2556) (@mhauru) - Delete benchmarks (#2558) (@yebai) - CompatHelper: bump compat for MCMCChains to 7, (keep existing compat) (#2562) (@github-actions[bot])

Closed issues: - Asssigning to a Vector of Matrices produces BoundsError (#2095) - Are the benchmarks still used? (#2554) - (when using Turing = DiffEq) Gain wrong number of parameter error when using initial_params (but i think the number of parameters is right). (#2557) - Help fitting parameters of a simple SIR model through ODE simulation (#2559) - Unable to correctly fit parameters for SIR (ODE simulation) example (#2560)

- Julia
Published by github-actions[bot] 9 months ago

Turing - v0.38.1

Turing v0.38.1

Diff since v0.38.0

The method Bijectors.bijector(::DynamicPPL.Model) was moved to DynamicPPL.jl.

Merged pull requests: - DynamicPPL 0.36.3 (#2553) (@penelopeysm)

Closed issues: - Online talk on PPLs for Learn Bayes seminar series (#2527) - hasconditioned / getconditioned Gibbs likely wrong (#2551) - GibbsConditional is missing (#2552)

- Julia
Published by github-actions[bot] 9 months ago

Turing - v0.38.0

Turing v0.38.0

Diff since v0.37.0

:

Breaking changes

DynamicPPL compatibility has been bumped to 0.36. This brings with it a number of changes: the ones most likely to affect you are submodel prefixing and conditioning. Variables in submodels are now represented correctly with field accessors. For example:

julia using Turing @model inner() = x ~ Normal() @model outer() = a ~ to_submodel(inner())

keys(VarInfo(outer())) now returns [@varname(a.x)] instead of [@varname(var"a.x")]

Furthermore, you can now either condition on the outer model like outer() | (@varname(a.x) => 1.0), or the inner model like inner() | (@varname(x) => 1.0). If you use the conditioned inner model as a submodel, the conditioning will still apply correctly.

Please see the DynamicPPL release notes for fuller details.

Gibbs sampler

Turing's Gibbs sampler now allows for more complex VarNames, such as x[1] or x.a, to be used. For example, you can now do this:

julia @model function f() x = Vector{Float64}(undef, 2) x[1] ~ Normal() return x[2] ~ Normal() end sample(f(), Gibbs(@varname(x[1]) => MH(), @varname(x[2]) => MH()), 100)

Performance for the cases which used to previously work (i.e. VarNames like x which only consist of a single symbol) is unaffected, and VarNames with only field accessors (e.g. x.a) should be equally fast. It is possible that VarNames with indexing (e.g. x[1]) may be slower (although this is still an improvement over not working at all!). If you find any cases where you think the performance is worse than it should be, please do file an issue.

Merged pull requests: - Add check_model argument to optimisation (#2518) (@penelopeysm) - Add PR auto assign workflow (#2528) (@penelopeysm) - DynamicPPL 0.36 (#2535) (@penelopeysm) - DocsGHA: Grant write permission to pull-requests event (#2544) (@shravanngoswamii) - Update docstrings to account for non-identity varnames (#2546) (@penelopeysm)

Closed issues: - New Turing domain: please visit turinglang.org (#2041) - Allow Gibbs sampler to have non-identity lenses for target variables (#2403) - Figure out a consistent and robust way of defining and testing interfaces (#2434) - Clean up exports (#2468) - Clean up LogDensityFunctions interface code + setADtype (#2473) - prefix should be exported (#2481) - Enzyme illegal type analysis on many Turing models (#2510) - NaN error during sampling with NUTS in Hidden Markov Model (#2513) - Bug: Incorrect Variance Test in check_dist_numerical (#2514) - NaN in dataset leads to NaN parameters and difficult-to-interpret errors (#2515) - Can't find initial parameters in HMM with deterministic emissions (#2526) - Run formatter, start using alwaysusereturn = true (#2530) - Remove extract_priors (#2537)

- Julia
Published by github-actions[bot] 10 months ago

Turing - v0.37.0

Turing v0.37.0

Diff since v0.36.3

Breaking changes

Gibbs constructors

0.37 removes the old Gibbs constructors deprecated in 0.36.

Remove Zygote support

Zygote is no longer officially supported as an automatic differentiation backend, and AutoZygote is no longer exported. You can continue to use Zygote by importing AutoZygote from ADTypes and it may well continue to work, but it is no longer tested and no effort will be expended to fix it if something breaks.

Mooncake is the recommended replacement for Zygote.

DynamicPPL 0.35

Turing.jl v0.37 uses DynamicPPL v0.35, which brings with it several breaking changes:

  • The right hand side of .~ must from now on be a univariate distribution.
  • Indexing VarInfo objects by samplers has been removed completely.
  • The order in which nested submodel prefixes are applied has been reversed.
  • The arguments for the constructor of LogDensityFunction have changed. LogDensityFunction also now satisfies the LogDensityProblems interface, without needing a wrapper object.

For more details about all of the above, see the changelog of DynamicPPL here.

Export list

Turing.jl's export list has been cleaned up a fair bit. This affects what is imported into your namespace when you do an unqualified using Turing. You may need to import things more explicitly than before.

  • The DynamicPPL and AbstractMCMC modules are no longer exported. You will need to import DynamicPPL or using DynamicPPL: DynamicPPL (likewise AbstractMCMC) yourself, which in turn means that they have to be made available in your project environment.

  • @logprob_str and @prob_str have been removed following a long deprecation period.

  • We no longer re-export everything from Bijectors and Libtask. To get around this, add using Bijectors or using Libtask at the top of your script (but we recommend using more selective imports).

    • We no longer export Bijectors.ordered. If you were using ordered, even Bijectors does not (currently) export this. You will have to manually import it with using Bijectors: ordered.

On the other hand, we have added a few more exports:

  • DynamicPPL.returned and DynamicPPL.prefix are exported (for use with submodels).
  • LinearAlgebra.I is exported for convenience.

Merged pull requests: - Clean up exports (#2474) (@penelopeysm) - Release v0.37 (#2487) (@mhauru) - Support for DynamicPPL v0.35 (#2488) (@mhauru) - More fixes for DynamicPPL 0.35 (#2494) (@penelopeysm) - CompatHelper: bump compat for AdvancedHMC to 0.7, (keep existing compat) (#2503) (@github-actions[bot]) - Remove Zygote (#2505) (@yebai)

Closed issues: - Improper initial values when supports of the prior distribution are themselves random (#1270) - Specify which variables to track (#1444) - Calibration Example of Complex Model (#1516) - Errors in Sampling When Parameter Bounds Depend on Parameters (#1558) - Gibbs gives different sampling results with fixed rng (#1731) - Performance regression for BernoulliLogit (#1934) - Create a package extension for JuliaBUGS (#2104) - Setup continuous benchmarking for Tuirng/DynamicPPL (#2238) - Using @distributed to accelerate but getting wrong results (#2265) - AD with Tracker.jl versus Zygote.jl and Mooncake.jl. For BNN. (#2454) - Remove Zygote from tests and docs (#2504)

- Julia
Published by github-actions[bot] 11 months ago

Turing - v0.36.3

Turing v0.36.3

Diff since v0.36.2

Merged pull requests: - Remove selector/space stuff (#2458) (@mhauru) - Return NaN for negative ModeResult variance estimates (#2471) (@frankier) - Pin AdvancedPS test dep to 0.6.0 (#2482) (@penelopeysm) - Documentation and Turing Navigation CI improvement (#2484) (@shravanngoswamii) - Fixing doc import by prefixing DynamicPPL to predict (#2489) (@sunxd3) - remove LogDensityProblemsAD (#2490) (@penelopeysm) - more test fixes (#2491) (@penelopeysm) - Remove x86 CI (#2495) (@penelopeysm) - Simplify tests (#2496) (@penelopeysm) - Make Gibbs work with step_warmup (#2502) (@mhauru)

Closed issues: - @model treats an observed variable as a random variable if it's provided by unpacking (#1978) - Adding new issues and PRs to Project Board automatically. (#2315) - ForwardDiff Optimization test failing (#2369) - test/mcmc/Inference.jl segfaults on GHA Windows runner (sometimes) (#2379) - filldist/arraydist construct NIW prior? (#2391) - Performance hints (#2416) - JuliaBUGS Meta Issue (#2435) - Keeping a nice changelog (#2463) - master -> main (#2479) - How important is 32-bit testing? (#2486)

- Julia
Published by github-actions[bot] 12 months ago

Turing - v0.36.2

Turing v0.36.2

Diff since v0.36.1

Merged pull requests: - Fix a Gibbs bug with models where linking changes variable dimension (#2472) (@mhauru)

- Julia
Published by github-actions[bot] about 1 year ago

Turing - v0.36.1

Turing v0.36.1

Diff since v0.36.0

  • This is a release for compatibility with DynamicPPL 0.33 and 0.34.

Merged pull requests: - Update for DynamicPPL 0.33 and 0.34 (#2459) (@penelopeysm)

Closed issues: - Reduce iteration counts in tests (#2338)

- Julia
Published by github-actions[bot] about 1 year ago

Turing - v0.36.0

Turing v0.36.0

Diff since v0.35.5

0.36.0 introduces a new Gibbs sampler. It's been included in several previous releases as Turing.Experimental.Gibbs, but now takes over the old Gibbs sampler, which gets removed completely.

The new Gibbs sampler currently supports the same user-facing interface as the old one, but the old constructors have been deprecated, and will be removed in the future. Also, given that the internals have been completely rewritten in a very different manner, there may be accidental breakage that we haven't anticipated. Please report any you find.

GibbsConditional has also been removed. It was never very user-facing, but it was exported, so technically this is breaking.

The old Gibbs constructor relied on being called with several subsamplers, and each of the constructors of the subsamplers would take as arguments the symbols for the variables that they are to sample, e.g. Gibbs(HMC(:x), MH(:y)). This constructor has been deprecated, and will be removed in the future. The new constructor works by mapping symbols, VarNames, or iterables thereof to samplers, e.g. Gibbs(:x=>HMC(), :y=>MH()), Gibbs(@varname(x) => HMC(), @varname(y) => MH()), Gibbs((:x, :y) => NUTS(), :z => MH()). This allows more granular specification of which sampler to use for which variable.

Likewise, the old constructor for calling one subsampler more often than another, Gibbs((HMC(0.01, 4, :x), 2), (MH(:y), 1)) has been deprecated. The new way to do this is to use RepeatSampler, also introduced at this version: Gibbs(@varname(x) => RepeatSampler(HMC(0.01, 4), 2), @varname(y) => MH()).

Merged pull requests: - Replace old Gibbs sampler with the experimental one. (#2328) (@mhauru) - CompatHelper: add new compat entry for AbstractPPL at version 0.9 for package test, (keep existing compat) (#2443) (@github-actions[bot]) - CompatHelper: add new compat entry for BangBang at version 0.4 for package test, (keep existing compat) (#2444) (@github-actions[bot]) - CompatHelper: bump compat for AbstractPPL to 0.10 for package test, (keep existing compat) (#2447) (@github-actions[bot]) - CompatHelper: add new compat entry for Combinatorics at version 1 for package test, (keep existing compat) (#2448) (@github-actions[bot]) - Increase atol on specific tests for x86 (#2449) (@penelopeysm) - Rework Gibbs constructors (#2456) (@mhauru) - Replace Gibbs inner loop with recursion (#2464) (@mhauru) - variable naming / destructuring (#2465) (@penelopeysm) - Remove mention of GibbsConditional from API docs (#2467) (@mhauru)

Closed issues: - Custom distributions required rand to be implemented when "unnecessary" (#907) - Recontruct vs Function with array of parameters (#1969) - Import style and modularisation (#2288) - Remove old Gibbs sampler, make the experimental one the default (#2318) - test/mcmc/Inference.jl segfaults on GHA Windows runner (sometimes) (#2379) - Automate choice of AD backend (#2417) - Remove Gibbs(; m=HMC(0.2, 3), s=PG(10)) in favour of Gibbs(:m=>HMC(0.2, 3), :s=>PG(10)) (#2442) - Gibbs performance regression on Julia v1.11 (#2445) - initial_params working incorrectly and differently in v0.34.0 and v0.33.0 (#2452) - Question: Getting 404 error when accesing https://turing.ml/v0.22/docs/using-turing/. (#2466)

- Julia
Published by github-actions[bot] about 1 year ago

Turing - v0.35.5

Turing v0.35.5

Diff since v0.35.4

- Julia
Published by github-actions[bot] about 1 year ago

Turing - v0.35.4

Turing v0.35.4

Diff since v0.35.3

Merged pull requests: - Implement getstepsize() for NoAdaptation samplers (#2405) (@penelopeysm) - Tweak sample counts and other details in tests (#2433) (@mhauru)

Closed issues: - Update MCMC sampler wrappers in Turing.jl to use AbstractMCMC (#2426) - JuliaBUGS Meta Issue (#2435)

- Julia
Published by github-actions[bot] about 1 year ago

Turing - v0.35.3

Turing v0.35.3

Diff since v0.35.2

Merged pull requests: - Change GHA macOS architecture to aarch64 (#2395) (@penelopeysm) - CompatHelper: bump compat for Bijectors to 0.15, (keep existing compat) (#2399) (@github-actions[bot]) - Bump DynamicPPL compat to 0.31 (#2404) (@penelopeysm) - Fix patch version (#2410) (@penelopeysm)

Closed issues: - Using Bayesian Inference for noise free Likelihood (#1914) - Depreciate MCMC-interface code in favour of AbstractMCMC. (#2281) - Using the score function estimator as gradient for VI (#2287) - How to save a model / fit and load it? Issue with JLD2 for "reconstructing" (#2309) - Nested sampling integration (#2329) - MethodError matching getϵ for AdvancedHMC Adaption (#2400)

- Julia
Published by github-actions[bot] about 1 year ago

Turing - v0.35.2

Turing v0.35.2

Diff since v0.35.1

Merged pull requests: - Various CI improvements (#2375) (@penelopeysm) - Fix the global Random.seed in runtests.jl (#2381) (@mhauru) - Remove outdated version conditions (#2382) (@mhauru) - Move ADTypeCheckContext tests to a separate module (#2383) (@mhauru) - Bump Bijectors to 0.14.0 (#2384) (@penelopeysm) - Don't get stuck in an infinite loop if HMC can't find an initial point (#2392) (@penelopeysm)

Closed issues: - update() method for updating a fitted model with new data (#2308) - Drop support for Tracker (#2356) - Upgrade julia-actions/cache to v2 (#2370) - AdvancedMH external-sampler tests fail intermittently with 2 threads (#2371) - Use version = "min" in CI (#2373) - Data transformation code slows down sampling? (#2380) - New predict() behaviour and syntax? (#2388) - Sampling with HMC can hang if AD is bugged (#2389)

- Julia
Published by github-actions[bot] over 1 year ago

Turing - v0.35.1

Turing v0.35.1

Diff since v0.35.0

  • Bump Optimization compat to v4
    • Bump DynamicPPL compat to v0.30.2

Merged pull requests: - Bump Optimization to v4, and related packages accordingly (#2354) (@penelopeysm) - Run JuliaFormatter on more files, remove trailing whitespace (#2374) (@mhauru) - Bump DynamicPPL compat to 0.30 (#2376) (@penelopeysm)

- Julia
Published by github-actions[bot] over 1 year ago

Turing - v0.35.0

Turing v0.35.0

Diff since v0.34.1

  • Drop support for Julia 1.9 and earlier. Minimum Julia version is now 1.10.
  • Drop support for Tracker as an AD backend.
  • Replace Tapir.jl with its reincarnated form, Mooncake.jl.

Merged pull requests: - Widen Optimization compat to v4, and related packages accordingly (#2327) (@mhauru) - CompatHelper: bump compat for DynamicPPL to 0.29, (keep existing compat) (#2339) (@github-actions[bot]) - CompatHelper: bump compat for DynamicPPL to 0.29 for package test, (keep existing compat) (#2340) (@github-actions[bot]) - DynamicPPL -> 0.29; Julia -> 1.10; Tapir -> Mooncake (#2341) (@penelopeysm) - Revert changing Optimization compat to v4 (#2343) (@penelopeysm) - Generate API docs (#2347) (@penelopeysm) - Add issue templates (#2355) (@penelopeysm) - Remove redundant code in hmc.jl (#2357) (@sunxd3) - More autoformatting (#2359) (@mhauru) - Update to tilde overloads in mh.jl (#2360) (@torfjelde)

Closed issues: - Safety for poisson random calls (#2301) - MLE estimation fails with error (#2342) - Regenerate API docs (#2344)

- Julia
Published by github-actions[bot] over 1 year ago

Turing - v0.34.1

Turing v0.34.1

Diff since v0.34.0

Merged pull requests: - Test with Tapir (#2289) (@mhauru) - Update ad_utils.jl (#2313) (@yebai) - Bump patch (#2314) (@willtebbutt)

Closed issues: - Can DifferentiationInterface be useful for Turing? (#2187) - Add an option to the sample function to force using SimpleVarInfo. (#2213) - Add Tapir to Turing's AD test suite (#2247) - Ensure that strictly positive distribution parameter is > 0 after exp() transformation (#2310)

- Julia
Published by github-actions[bot] over 1 year ago

Turing - v0.34.0

Turing v0.34.0

Diff since v0.33.3

Merged pull requests: - Check that the correct AD backend is being used (#2291) (@mhauru) - Resolve ADTypeCheckContext method ambiguity (#2299) (@mhauru) - Fix remaining method ambiguities (#2304) (@penelopeysm) - Remove unused code (#2312) (@devmotion)

Closed issues: - Tests to check that the correct AD method is actually used (#2235) - Enable Aqua.test_ambiguities (#2261) - Mode estimation's support of Pathfinder integration (#2268) - Multithread tests fail on master (#2302) - Julia 1.7 tests are failing (#2305) - Support potential type argument in rand for eltype of Sampleable (#2306) - Dead code in mcmc/hmc.jl? (#2311)

- Julia
Published by github-actions[bot] over 1 year ago

Turing - v0.33.3

Turing v0.33.3

Diff since v0.33.2

Merged pull requests: - Remove getmodel and setmodel after transferred to DynamicPPL (#2292) (@sunxd3) - Add GITHUB_TOKEN permissions for format job (#2294) (@penelopeysm) - Fix deprecated syntax error (#2297) (@sunxd3)

Closed issues: - Attempt fixing bnn tests in Ezyme PR (#2277) - Allow for a named tuple for initial_params (#2286) - JuliaFormatter GHA workflow fails on public forks due to insufficient permissions (#2293) - Turing fails to precompile due to deprecated method dispatches with v1.10 (#2296)

- Julia
Published by github-actions[bot] over 1 year ago

Turing - v0.33.2

Turing v0.33.2

Diff since v0.33.1

The release brought bug fixes and improvement to the new Experimental.Gibbs (👏 for @torfjelde 's heroic efforts)

Merged pull requests: - Fixes and improvements to experimental Gibbs (#2231) (@torfjelde) - Re-enable coverage uploads (#2283) (@devmotion)

Closed issues: - Simple user error makes code evaluate forever - Calling DynamicPPL.Model as a function. (#2182) - Experimental Gibbs seems to have higher variance than "stable" Gibbs (maybe) (#2230) - Undeterministic test failure (#2234) - Make MLE and MAP more robust (#2279) - Fix code test coverage (#2282) - preallocating an array of random variables, getting varname As used multiple times in model (subsumes As[1]) (#2284) - maximum_likelihood function not found in Turing.jl (#2285)

- Julia
Published by github-actions[bot] over 1 year ago

Turing - v0.33.1

Turing v0.33.1

Diff since v0.33.0

Merged pull requests: - Check model by default (#2218) (@torfjelde) - disable more sampling progress logging on CI (#2254) (@yebai) - Code formatting: JuliaFormatter (#2255) (@mhauru) - Add note about breaking v0.33.0 changes to HISTORY (#2256) (@mhauru) - Add Aqua to tests (#2257) (@mhauru) - Remove trailing whitespace (#2260) (@mhauru) - Update .JuliaFormatter.toml (#2262) (@yebai) - Formatting VI files (#2263) (@yebai) - CompatHelper: bump compat for OptimizationBBO to 0.3 for package test, (keep existing compat) (#2266) (@github-actions[bot]) - Bump SciMLBase compat lower bound (#2267) (@mhauru) - Add Base.get method for ModeResult (#2269) (@mhauru) - Use new style kwarg constructor for AutoReverseDiff (#2273) (@mhauru) - Bump DynamicPPL to v0.28 (#2276) (@mhauru) - Version bump 0.33+ (#2278) (@mhauru)

Closed issues: - Feature Request: Better Indexing for ModeResult object (#1417) - transform! not differentiable (#1835) - Print an informational message about using ReverseDiff when the model size is above a certain threshold. (#1852) - covariance matrix cannot be estimated using Wishart with NUTS, HMC or HMCDA samplers (#1861) - ADVI example fails with Zygote AD backend (#1988) - stderror() on optimize() result fails (#2048) - Adopt Changelog.jl for tracking release notes and change logs (#2129) - Documentation for optimisation methods (MAP, MLE) (#2164) - Style Guide and Style Checker (#2241) - Implementing adtype for closely linked "external" samplers / adding metric warm-up (#2248) - Failing in precompiling dependencies (#2271) - AbstractMCMC docs page out of date (#2272)

- Julia
Published by github-actions[bot] over 1 year ago

Turing - v0.33.0

Turing v0.33.0

Diff since v0.32.3

Merged pull requests: - Reenable PriorContext for Optimization (#2165) (@alyst) - Optimization improvements (#2221) (@mhauru) - Test restructuring (#2237) (@mhauru) - Update Project.toml (#2244) (@yebai) - CompatHelper: bump compat for OptimizationOptimJL to 0.3 for package test, (keep existing compat) (#2246) (@github-actions[bot]) - Restore compat with ADTypes v0.2. Make AutoTapir export conditional. (#2252) (@mhauru) - ADTypes v0.2 compatibility for test restructuring (#2253) (@mhauru)

Closed issues: - refactor tests into multiple Github CI steps (#2179) - Dependent uniform variables not working correctly (#2245) - Compat issue (#2251)

- Julia
Published by github-actions[bot] over 1 year ago

Turing - v0.32.3

Turing v0.32.3

Diff since v0.32.2

Merged pull requests: - Drop support for ADTypes 0.2 (#2243) (@yebai)

- Julia
Published by github-actions[bot] over 1 year ago

Turing - v0.32.2

Turing v0.32.2

Diff since v0.32.1

Merged pull requests: - Fix missing AutoTapir (#2242) (@yebai)

- Julia
Published by github-actions[bot] over 1 year ago

Turing - v0.32.1

Turing v0.32.1

Diff since v0.32.0

Merged pull requests: - Re-export certain functionality from DynamicPPL (#2217) (@torfjelde) - Export adtype AutoTapir (#2236) (@yebai)

Closed issues: - Rendering issue on prob PCA tutorial (#2111) - Broken links on the website (#2154) - LaTeX not rendering properly on PCA tutorial (#2185) - Maths not displayed in variational inference writeup (#2222)

- Julia
Published by github-actions[bot] over 1 year ago

Turing - v0.32.0

Turing v0.32.0

Diff since v0.31.5

Merged pull requests: - Fixes to AD backend usage in externalsampler (#2223) (@torfjelde) - Bump DPPL version to 0.27 (#2225) (@torfjelde)

- Julia
Published by github-actions[bot] almost 2 years ago

Turing - v0.31.5

Turing v0.31.5

Diff since v0.31.4

Merged pull requests: - Fix for optimize and := (#2224) (@torfjelde)

Closed issues: - Issues with constrained parameters depending on each other (#2195)

- Julia
Published by github-actions[bot] almost 2 years ago

Turing - v0.31.4

Turing v0.31.4

Diff since v0.31.3

Features

  • It is now possible to use := to track deterministic quantities in the model.

Merged pull requests: - Use values_as_in_model to extract the parameters from a Transition (#2202) (@torfjelde)

Closed issues: - Problems with deterministic distribution (#1335) - Zygote's compilation scales badly with the number of ~ statements (#1754) - New Gibbs sampler based on SimpleVarInfo. (#1904) - LKJCholesky returns a Union (#2102) - ADVI is not up-to-date on the AD side (#2186) - Model fails with an autograd error (#2189) - Why are we passing chunksize=0 to AutoForwardDiff rather than using default? (#2203)

- Julia
Published by github-actions[bot] almost 2 years ago

Turing - v0.31.3

Turing v0.31.3

Diff since v0.31.2

Merged pull requests: - Bump ADTypes compat entry to include version 1 (#2209) (@torfjelde)

- Julia
Published by github-actions[bot] almost 2 years ago

Turing - v0.31.2

Turing v0.31.2

Diff since v0.31.1

Merged pull requests: - CompatHelper: bump compat for ADTypes to 1, (keep existing compat) (#2200) (@github-actions[bot]) - Improvements to externalsampler (#2204) (@torfjelde) - Revert "CompatHelper: bump compat for ADTypes to 1, (keep existing compat)" (#2207) (@torfjelde) - Bump AdvancedPS version to 0.6.0 (#2210) (@THargreaves)

- Julia
Published by github-actions[bot] almost 2 years ago

Turing - v0.31.1

Turing v0.31.1

Diff since v0.31.0

Merged pull requests: - Fix for #2205 (#2206) (@torfjelde)

Closed issues: - ADVI errors for conditioned problems (#2205)

- Julia
Published by github-actions[bot] almost 2 years ago

Turing - v0.31.0

Turing v0.31.0

Diff since v0.30.9

Merged pull requests: - Bump DynamicPPL to v0.25 (#2197) (@torfjelde)

- Julia
Published by github-actions[bot] almost 2 years ago

Turing - v0.30.9

Turing v0.30.9

Diff since v0.30.8

New features

  • Turing.Experimental module where more experimental features will go, with the aim of eventually making its way into Turing proper.
  • Turing.Experimental.Gibbs is a new implementation of the Gibbs sampler which provides much greater flexibility specifying which variables should use which sampler. Note that this is in the Turing.Experimental module, and thus will be prone to changes.

Merged pull requests: - New Gibbs sampler using condition (#2099) (@torfjelde)

- Julia
Published by github-actions[bot] almost 2 years ago

Turing - v0.30.8

Turing v0.30.8

Diff since v0.30.7

Merged pull requests: - Bugfix for Optim.jl on models with different linked dimensionality (#2196) (@torfjelde)

Closed issues: - Feature request: allow user to pass gradient tape into sample() function (#1419) - Should we support Tracker.jl? (#2000) - Transfer essential/ad.jl to DynamicPPL (#2141) - initparams doesn't work since v0.30.0 (#2150) - ADVI does not work with new DynamicPPL.jl Conditioning Syntax (#2178) - Proposal for MH only works correctly with subtypes of MvNormal (#2180) - Question: I tried this tutorial. I added the package "DynamicPPL". However, when running "using DynamicPPL: settrans!", I get the error "UndefVarError: settrans! not defined" (#2183) - filldist on distributions requiring SimplexBijector (#2190) - initparams in v.0.30.1 (#2192)

- Julia
Published by github-actions[bot] almost 2 years ago

Turing - v0.30.7

Turing v0.30.7

Diff since v0.30.6

- Julia
Published by github-actions[bot] almost 2 years ago

Turing - v0.30.6

Turing v0.30.6

Diff since v0.30.5

Merged pull requests: - Partial fix for #2095 (#2096) (@torfjelde) - Fix error TuringOptimExt.jl with information matrix/vcov (#2167) (@smith-garrett) - Disable CI sampling progress logging (#2176) (@sunxd3)

Closed issues: - method definition warning when trying tutorial no.2 'Unsupervised Learning using Bayesian Mixture Models' (#2173) - autodiff documentation outdated (#2177)

- Julia
Published by github-actions[bot] almost 2 years ago

Turing - v0.30.5

Turing v0.30.5

Diff since v0.30.4

  • essential/ad.jl is removed, ForwardDiff and ReverseDiff integrations via LogDensityProblemsAD are moved to DynamicPPL and live in corresponding package extensions.
  • LogDensityProblemsAD.ADgradient(ℓ::DynamicPPL.LogDensityFunction) (i.e. the single argument method) is moved to Inference module. It will create ADgradient using the adtype information stored in context field of .
  • getADbackend function is renamed to getADType, the interface is preserved, but packages that previously used getADbackend should be updated to use getADType.
  • TuringTag for ForwardDiff is also removed, now DynamicPPLTag is defined in DynamicPPL package and should serve the same purpose.

Merged pull requests: - Move ad.jl to DynamicPPL (#2158) (@sunxd3) - Change Optimization kwarg autoad to adtype (#2168) (@ElOceanografo) - Add accepted arg to AdvancedMH.Transition calls (#2172) (@sunxd3)

- Julia
Published by github-actions[bot] about 2 years ago

Turing - v0.30.4

Turing v0.30.4

Diff since v0.30.3

Merged pull requests: - Prior should use PriorContext (#2170) (@torfjelde)

Closed issues: - ArgumentError: Union{} does not have elements when trying to run a state space model (#2151) - Problems with Cholesky in MvNormal using a g prior (#2157) - Prior sampler should use PriorContext, not DefaultContext (#2169)

- Julia
Published by github-actions[bot] about 2 years ago

Turing - v0.30.3

Turing v0.30.3

Diff since v0.30.2

Merged pull requests: - Fix dimensionality issues of ADVI (#2162) (@torfjelde)

Closed issues: - input length mismatch error using ADVI (#2160)

- Julia
Published by github-actions[bot] about 2 years ago

Turing - v0.30.2

Turing v0.30.2

Diff since v0.30.1

Merged pull requests: - Fix deprecations and default ADTypes (#2156) (@devmotion)

Closed issues: - Docs: setadbackend (#2155)

- Julia
Published by github-actions[bot] about 2 years ago

Turing - v0.30.1

Turing v0.30.1

Diff since v0.30.0

Merged pull requests: - Update HISTORY.md (#2149) (@sunxd3) - Fix AbstractMCMC 5 compatibility (#2153) (@devmotion)

Closed issues: - Transpilation of pure WinBUGS code when reimplementing Prior and Posterior Prediction (#2148)

- Julia
Published by github-actions[bot] about 2 years ago

Turing - v0.30.0

What's Changed

  • Replaced specifying a global AD backend with ADTypes.jl. Users should now specify the desired ADType directly in sampler constructors, e.g., HMC(0.1, 10; adtype=AutoForwardDiff(; chunksize)), or HMC(0.1, 10; adtype=AutoReverseDiff(false)) (false indicates not to use compiled tape).
  • Interface functions such as ADBackend, setadbackend, setadsafe, setchunksize, and setrdcache are deprecated and will be removed in a future release.
  • Removed the outdated verifygrad function.
  • Updated to a newer version of LogDensityProblemsAD (v1.7).

New Contributors

  • @sunxd3 made their first contribution in https://github.com/TuringLang/Turing.jl/pull/2134

Full Changelog: https://github.com/TuringLang/Turing.jl/compare/v0.29.3...v0.30.0

- Julia
Published by yebai about 2 years ago

Turing - v0.29.3

Turing v0.29.3

Diff since v0.29.2

Merged pull requests: - Fixed externalsampler (#2089) (@torfjelde)

- Julia
Published by github-actions[bot] over 2 years ago

Turing - v0.29.2

Turing v0.29.2

Diff since v0.29.1

Merged pull requests: - CompatHelper: bump compat for SciMLBase to 2, (keep existing compat) (#2087) (@github-actions[bot]) - Fix + test for compiled ReverseDiff without linking (#2097) (@torfjelde) - Fix for CI (#2098) (@torfjelde)

Closed issues: - Dimensionality error when using MAP as initial point for sampling (#2079) - Model using LKJCholesky fails with large covariance matrices (#2081) - MCMCDistributed() not working properly - only worker 2 is sampling (#2082) - Very high initial values for standard deviation (#2085) - DynamicNUTS (via DynamicHMC) no longer works in Julia v1.9. (#2090) - LKJCholesky does not work with compiled ReverseDiff.jl (#2091) - Compute (Bayesian) R2 for Turing models (#2093)

- Julia
Published by github-actions[bot] over 2 years ago

Turing - v0.29.1

Turing v0.29.1

Diff since v0.29.0

Merged pull requests: - Attach varname_to_symbol mapping to Chains (#2078) (@torfjelde)

- Julia
Published by github-actions[bot] over 2 years ago

Turing - v0.29.0

Turing v0.29.0

Diff since v0.28.3

Closed issues: - How to conduct Bayesian inference using an existing posterior samples as new prior distribution, as well as new observations in Turing? (#2069)

Merged pull requests: - Reorganised some files. (#2055) (@yebai) - Remove some obsolete utility exports. (#2070) (@yebai) - Remove usage of DynamicPPL.tonamedtuple (#2071) (@torfjelde) - FlattenIterator is replaced by varname_and_value_leaves (#2072) (@yebai) - rename a few folders for clarity (#2073) (@yebai) - Remove redundant docs link (#2075) (@willtebbutt) - Tracker imports no longer needed. (#2076) (@yebai)

- Julia
Published by github-actions[bot] over 2 years ago

Turing - v0.28.3

Turing v0.28.3

Diff since v0.28.2

Closed issues: - method overwritten when I add Turing.jl pkg (#2061) - Can't apply Bijectors.ordered to TDist(), says it's constrained (#2064) - Incorrect bijector dimensions for models using SimplexBijector (#2065)

Merged pull requests: - Fix incorrect output dimensions in stacked bijectors (#2066) (@bgroenks96)

- Julia
Published by github-actions[bot] over 2 years ago

Turing - v0.28.2

Turing v0.28.2

Diff since v0.28.1

Closed issues: - Benchmarking Turing against Stan on very simple models (#1283) - Deadlinks (#1647) - Turing slows down as the number of generic types increases (#1940) - Turing checkpointing by callbacks (#1995) - Allow LogDensityProblems.logdensity to take a named tuple (#2038) - Saving generated values (#2059)

Merged pull requests: - New feature: muliple iterations within Gibbs (#1881) (@xukai92) - CompatHelper: bump compat for Bijectors to 0.13, (keep existing compat) (#2018) (@github-actions[bot]) - MH Constructor (#2037) (@JaimeRZP) - CompatHelper: bump compat for NamedArrays to 0.10, (keep existing compat) (#2062) (@github-actions[bot]) - CompatHelper: bump compat for NamedArrays to 0.10 for package test, (keep existing compat) (#2063) (@github-actions[bot])

- Julia
Published by github-actions[bot] over 2 years ago

Turing - v0.28.1

Turing v0.28.1

Diff since v0.28.0

Merged pull requests: - Transfer all high-level docs to TuringTutorials (#1933) (@yebai) - Cleanup test utilities (#2056) (@yebai) - Bugfix in model evaluation not using SMC samplers (#2057) (@yebai)

- Julia
Published by github-actions[bot] over 2 years ago

Turing - v0.28.0

Turing v0.28.0

Diff since v0.27.1

- Julia
Published by github-actions[bot] over 2 years ago

Turing - v0.27.1

Turing v0.27.1

Diff since v0.27.0

Closed issues: - Save samples as we go (#2015)

Merged pull requests: - bump compat of AdvancedHMC (#2050) (@JaimeRZP) - Bump bijectors compat (#2052) (@yebai)

- Julia
Published by github-actions[bot] over 2 years ago

Turing - v0.27.0

Turing v0.27.0

Diff since v0.26.6

Closed issues: - Different order of parameters in MCMC chain vs. MAP result (#1322) - Allow silencing variational inference log messages (#1493) - Any plans on implementing DREAM (Differential Evolution based particle inference)? (#1640) - Kernel dies with Gibbs or ADVI with models involving categorical or dirichlet (#1777) - Feature request: Output maximized ELBO after variational inference (#1896) - stack overflow in ADVI (#1910)

Merged pull requests: - Transfer some test utility function into DynamicPPL (#2049) (@yebai) - Move Optim support to extension (#2051) (@devmotion)

- Julia
Published by github-actions[bot] over 2 years ago

Turing - v0.26.6

Turing v0.26.6

Diff since v0.26.5

Merged pull requests: - Revert dependencies on FillArrays (#2042) (@yebai) - Fix redundant definition of getstats (#2044) (@devmotion)

- Julia
Published by github-actions[bot] over 2 years ago

Turing - v0.26.5

Turing v0.26.5

Diff since v0.26.4

Merged pull requests: - Update FillArrays compat to 1.4.1 (#2035) (@devmotion) - Minor fix in CoefTable information (#2036) (@palmtree2013) - Fix testset for external samplers (#2039) (@yebai) - Replacement for #2039 (#2040) (@yebai)

- Julia
Published by github-actions[bot] over 2 years ago

Turing - v0.26.4

Turing v0.26.4

Diff since v0.26.3

Closed issues: - coeftable on optimize output (MLE and MAP) throws error (#2033)

Merged pull requests: - New Feature: Fix and improve coeftable for otpimize() output (#2034) (@DominiqueMakowski)

- Julia
Published by github-actions[bot] over 2 years ago

Turing - v0.26.3

Turing v0.26.3

Diff since v0.26.2

Merged pull requests: - Use LogDensityFunction for variational inference (#1944) (@torfjelde) - Allow usage of AbstractSampler (#2008) (@torfjelde) - CompatHelper: bump compat for FillArrays to 1 for package test, (keep existing compat) (#2019) (@github-actions[bot]) - Transition (#2026) (@JaimeRZP) - no tests (#2028) (@JaimeRZP) - Unify transition also in external samplers (#2030) (@JaimeRZP) - Re-add AdvancedMH compat (#2032) (@devmotion)

- Julia
Published by github-actions[bot] over 2 years ago

Turing - v0.26.2

Turing v0.26.2

Diff since v0.26.1

Merged pull requests: - Fixed broken Turing.Inference.named_values (#2021) (@torfjelde) - Fix MLE with ConditionContext (#2022) (@devmotion)

- Julia
Published by github-actions[bot] over 2 years ago

Turing - v0.26.1

Turing v0.26.1

Diff since v0.26.0

Closed issues: - predict() from a Prior-sampled chain returns no predictions (#2012)

Merged pull requests: - Restrict tests to FillArrays 1.0.0 (#2014) (@torfjelde)

- Julia
Published by github-actions[bot] over 2 years ago

Turing - v0.26.0

Turing v0.26.0

Diff since v0.25.3

Closed issues: - Implement "Variational Autoencoder" with ADVI (#1885)

Merged pull requests: - Insane memory-usage when using Emcee with large number of iterations (#1976) (@torfjelde) - Bump DynamicPPL to 0.23 (#2001) (@torfjelde)

- Julia
Published by github-actions[bot] over 2 years ago

Turing - v0.25.3

Turing v0.25.3

Diff since v0.25.2

Merged pull requests: - Warn user if we're struggling to find good init params (#1999) (@torfjelde)

- Julia
Published by github-actions[bot] over 2 years ago

Turing - v0.25.2

Turing v0.25.2

Diff since v0.25.1

Closed issues: - Up-to-date way of saving and reloading chains (#1994)

Merged pull requests: - CompatHelper: bump compat for StatsBase to 0.34, (keep existing compat) (#1985) (@github-actions[bot]) - CompatHelper: bump compat for StatsBase to 0.34 for package test, (keep existing compat) (#1986) (@github-actions[bot]) - Fix turing.ml links (#1998) (@devmotion)

- Julia
Published by github-actions[bot] over 2 years ago

Turing - v0.25.1

Turing v0.25.1

Diff since v0.25.0

Closed issues: - Strange posterior formula in the Variational Inference document (#1939) - ERROR: Mutating arrays is not supported when using arrays of parameters and Zygote (#1984) - webiste tutorial link issues (#1987)

Merged pull requests: - fix math in variational_inference.md (#1990) (@Red-Portal) - Fix CI (#1992) (@devmotion)

- Julia
Published by github-actions[bot] almost 3 years ago

Turing - v0.25.0

Turing v0.25.0

Diff since v0.24.4

Merged pull requests: - Bump DynamicPPL.jl, AdvancedVI, and Bijectors version (#1979) (@torfjelde)

- Julia
Published by github-actions[bot] almost 3 years ago

Turing - v0.24.4

Turing v0.24.4

Diff since v0.24.3

Closed issues: - Question: (#1966) - Optimisers.jl v0.2.16 update breaks Turing, won't precompile (#1971) - Question, is it possible to turn off autodiff? (#1973) - Website Error: Tutorial links send me to the home-page (#1975) - Turing.ml site down (#1977)

Merged pull requests: - Preserve context in LogDensityFunction (#1943) (@torfjelde) - CompatHelper: bump compat for Clustering to 0.15 for package test, (keep existing compat) (#1972) (@github-actions[bot]) - Fix some typos (#1974) (@goggle)

- Julia
Published by github-actions[bot] almost 3 years ago

Turing - v0.24.3

Turing v0.24.3

Diff since v0.24.2

Merged pull requests: - Use Random.default_rng() (#1967) (@devmotion)

- Julia
Published by github-actions[bot] almost 3 years ago

Turing - v0.24.2

Turing v0.24.2

Diff since v0.24.1

Merged pull requests: - CompatHelper: bump compat for DynamicPPL to 0.22, (keep existing compat) (#1947) (@github-actions[bot]) - CompatHelper: bump compat for AdvancedVI to 0.2, (keep existing compat) (#1948) (@github-actions[bot]) - CompatHelper: bump compat for DynamicPPL to 0.22 for package test, (keep existing compat) (#1949) (@github-actions[bot]) - CompatHelper: bump compat for AdvancedVI to 0.2 for package test, (keep existing compat) (#1950) (@github-actions[bot]) - Fix compatibility with LogDensityProblemsAD 1.4 (#1965) (@devmotion)

- Julia
Published by github-actions[bot] almost 3 years ago

Turing - v0.24.1

Turing v0.24.1

Diff since v0.24.0

Closed issues: - Function to check HMC diagnostics (#1524) - PG doesn't work multivariate distributions (#1592) - Support MCMCTempering functionality (#1624) - Reverse-mode AD extremely slow for large number of observations (#1642) - Unused variable in benchmark (#1652) - Linear SDEs (#1814) - Precompile fails with "UndefVarError: NodeType not defined" (#1941) - turing.ml isn't responding (#1952) - turing.ml can not be reached currently! (#1953) - UndefVarError: GLOBAL_RNG from Bijectors.jl (#1955) - Cannot load / read chains from disk UndefVarError: ForwardDiffLogDensity (#1956)

Merged pull requests: - CompatHelper: bump compat for ForwardDiff to 0.10 for package test, (keep existing compat) (#1908) (@github-actions[bot]) - Fix test errors with LogDensityProblemsAD >= 1.2 (#1942) (@devmotion) - Update TuringLang homepage url (#1954) (@jamesmaino) - CompatHelper: bump compat for MCMCChains to 6, (keep existing compat) (#1959) (@github-actions[bot]) - CompatHelper: bump compat for MCMCChains to 6 for package test, (keep existing compat) (#1960) (@github-actions[bot])

- Julia
Published by github-actions[bot] almost 3 years ago

Turing - v0.24.0

Turing v0.24.0

Diff since v0.23.3

Closed issues: - Changing Sampled Parameter Type? (#1922) - The package dependency on Setfield is old (v0.8.2), which makes conflict with other packages. (#1935)

Merged pull requests: - Reduce usage of sampler (#1936) (@torfjelde) - Cleanup benchmarks (#1937) (@yebai)

- Julia
Published by github-actions[bot] about 3 years ago

Turing - v0.23.3

Turing v0.23.3

Diff since v0.23.2

Merged pull requests: - CompatHelper: bump compat for AdvancedHMC to 0.4, (keep existing compat) (#1926) (@github-actions[bot]) - Fix expectation of s² and m in gdemo (#1927) (@rdiaz02) - Fix error in example and add simpler example (#1928) (@rdiaz02) - CompatHelper: bump compat for AdvancedHMC to 0.4 and for AdvancedMH to 0.7, (keep existing compat) (#1929) (@github-actions[bot]) - CompatHelper: bump compat for AdvancedMH to 0.7 for package test, (keep existing compat) (#1930) (@github-actions[bot]) - Fix test failure (#1932) (@devmotion)

- Julia
Published by github-actions[bot] about 3 years ago

Turing - v0.23.2

Turing v0.23.2

Diff since v0.23.1

Closed issues: - Posterior Predictive Checks (#1809) - StableRNG in Turing is not yielding reproducible output (#1923)

Merged pull requests: - Fix non-reproducible step sizes (#1924) (@devmotion)

- Julia
Published by github-actions[bot] about 3 years ago

Turing - v0.23.1

Turing v0.23.1

Diff since v0.23.0

Closed issues: - @model scope and influence from global variables (#1915)

Merged pull requests: - CompatHelper: bump compat for LogDensityProblems to 2, (keep existing compat) (#1917) (@github-actions[bot]) - Fix tests for Gibbs (#1920) (@yebai)

- Julia
Published by github-actions[bot] about 3 years ago

Turing - v0.23.0

Turing v0.23.0

Diff since v0.22.0

Merged pull requests: - Match AdvancedPS 0.4 API (#1858) (@FredericWantiez) - Attempt to tighten assertion accurary bounds by increasing MCMC samples (#1905) (@yebai) - Variational Inference docs fix (#1912) (@v-i-s-h)

- Julia
Published by github-actions[bot] about 3 years ago

Turing - v0.22.0

Turing v0.22.0

Diff since v0.21.13

Closed issues: - [BNP] Bayesian Nonparametrics project (#370) - [BNP] Q-class (#374) - [MH] change of variable (#376) - [Traces]: add a member field to Trace to mark reference particle (#396) - More robust mechanism for mapping model variables to samplers (#397) - Particle Gibbs does not return log probability (#643) - Improvement of sampler descriptions. (wip) (#699) - Test for RandomMeasures fail (#973) - Update benchmarks on wiki (#1006) - Sanity check is missing for space of Gibbs sampler and model parameter space (#1012) - Handle gradient = nothing case when doing reverse diff with Zygote (#1081) - Failure when dimension changes (#1115) - Simple benchmarking for Tracker, ReverseDiff, and Zygote (#1140) - initial parameters / NUTS step size (#1314) - Integrating out variables via Laplace approximation (or other methods) (#1382) - Add instructions to check the gradient function (#1383) - Precompilation fails while using ReverseDiff backend (#1400) - RFC: Sampler-specific AD settings instead of global AD settings (#1402) - rdcache not cleared while using MLE,MAP estimation (#1418) - Coeftable throws error on mle and map estimates (#1447) - GibbsConditionals: proper variable subsumption (#1452) - Wrong interpolation symbol? (#1551) - Sampler initialization (init_params) (#1563) - Some tests for MH fail for certain random seeds (#1587) - The chains do not converge to the same posterior (#1593) - Numerical error messages: real problem or just terminal noise? (#1621) - Feature request: Add LKJCholesky (#1629) - Sometimes this error is thrown: Cannot convert an object of type Geometric{Float64} to an object of type Dirac{Float64} (#1669) - Improper (?) chains resuming (#1697) - AbstractMCMC.step with different model at each step (#1699) - Stein Thinning (#1704) - Question: looks like the order of variables are inconsistent (#1712) - Bijector error with VI and arraydist/filldist (#1717) - Easy way to get gradient evaluation timing (#1721) - Automatic lazy broadcasting/optimization for arrays of distributions (#1723) - Invalid test case for Gibbs? (#1725) - Refactoring Glue Code (#1735) - Way to Declare Data (#1736) - Improve usage and support for immutable AbstractVarInfo (#1752) - Batch size reduced to zero when doing inference on ODEs (#1760) - Massive test time regressions (#1774) - Broken doctests (#1796) - there is an erro in Variational inference (VI) of the Tutorials (#1820) - Concrete terse structs (#1830) - Question: Which package is the MCMCserial() part of? been working through the notebook and have had problems with it not being defined hence that part of the notebook does not run (#1842) - Custom distribution sampling does not perform well (#1859) - Proposal: Interest in faster logpdf for BernoulliLogit (logistic regression) (#1890)

Merged pull requests: - Compatibility with new DPPL version (#1900) (@torfjelde) - CompatHelper: bump compat for Setfield to 1, (keep existing compat) (#1906) (@github-actions[bot]) - Bump minor version (#1909) (@torfjelde)

- Julia
Published by github-actions[bot] over 3 years ago

Turing - v0.21.13

Turing v0.21.13

Diff since v0.21.12

Closed issues: - Hessian AD for logjoint and second-order optim interface broken (#1878) - Error with bunchkaufman factorization (#1889)

Merged pull requests: - Fix LogPoisson typo in docstring (#1888) (@storopoli) - Conditionally remove BernoulliLogit (#1892) (@devmotion)

- Julia
Published by github-actions[bot] over 3 years ago

Turing - v0.21.12

Turing v0.21.12

Diff since v0.21.11

Merged pull requests: - vi should not work with Matrixvariate distributions (#1545) (@torfjelde) - Support LogDensityProblems 1 (#1883) (@devmotion)

- Julia
Published by github-actions[bot] over 3 years ago

Turing - v0.21.11

Turing v0.21.11

Diff since v0.21.10

Closed issues: - Getting the preconditioner/checking that it is functional (#1860) - Libtask error when using PG (#1873) - VarInfo internal error with MH (#1874) - Console logging of sampling broken (#1875)

Merged pull requests: - Use LogDensityProblems instead of gradient_logp (#1877) (@devmotion) - Update gibbs.jl (#1879) (@yebai) - Remove outdated and unused Stan interface and tests (#1880) (@devmotion)

- Julia
Published by github-actions[bot] over 3 years ago

Turing - v0.21.10

Turing v0.21.10

Diff since v0.21.9

Closed issues: - Bayesian neural network using VI tutorial does not solve the problem (#1326) - Adding an implementation of the EM Algorithm to Turing for fitting latent variable models or mixture models (#1340) - Simple syntax error in coin example (#1376) - Question: What is the true value of observation noise in SDE example? (#1540) - Issue with hierarchical model with LKJCholesky sampling! (#1807) - Math doesn't display on some docs pages (#1827) - Turing.jl sampling quite slow compared to brms (rstan) and bambi (pymc) (#1851) - StackOverflowError: (#1854) - Fix local website build (#1855)

Merged pull requests: - CompatHelper: bump compat for DocStringExtensions to 0.9, (keep existing compat) (#1844) (@github-actions[bot]) - locally tested latex (#1857) (@tomroesch) - Minor update to tests after new DPPL update (#1865) (@torfjelde) - Latex in for-developers section tested through turing.ml. (#1869) (@tomroesch) - Remove obsolete files in the docs folder. (#1872) (@yebai)

- Julia
Published by github-actions[bot] over 3 years ago

Turing - v0.21.9

Turing v0.21.9

Diff since v0.21.8

Merged pull requests: - Remove unnecessary import of settrans! (#1850) (@torfjelde)

- Julia
Published by github-actions[bot] over 3 years ago

Turing - v0.21.8

Turing v0.21.8

Diff since v0.21.7

Closed issues: - Predict with MvNormal in (#1848)

Merged pull requests: - Remove implementations of logpdf_with_trans for NoDist (#1849) (@devmotion)

- Julia
Published by github-actions[bot] over 3 years ago

Turing - v0.21.7

Turing v0.21.7

Diff since v0.21.6

Merged pull requests: - Unify log density function types (#1846) (@devmotion) - Clean docs and docstrings (#1847) (@pitmonticone)

- Julia
Published by github-actions[bot] over 3 years ago

Turing - v0.21.6

Turing v0.21.6

Diff since v0.21.5

Closed issues: - LDA Model incredibly slow, even in low dimension (#668) - TypeError when sampling for a forced differential equation problem (#1837)

Merged pull requests: - Fix minor inconsistency in HMC doc (#1838) (@yebai) - CompatHelper: bump compat for AdvancedPS to 0.4 for package test, (keep existing compat) (#1840) (@github-actions[bot]) - Improve stacktraces by using custom tag for ForwardDiff (#1841) (@devmotion)

- Julia
Published by github-actions[bot] over 3 years ago

Turing - v0.21.5

Turing v0.21.5

Diff since v0.21.4

Merged pull requests: - Switch to Optimization.jl (#1836) (@devmotion)

- Julia
Published by github-actions[bot] over 3 years ago

Turing - v0.21.4

Turing v0.21.4

Diff since v0.21.3

Merged pull requests: - Add support for GalacticOptim 3 and fix test errors (#1834) (@devmotion)

- Julia
Published by github-actions[bot] over 3 years ago

Turing - v0.21.3

Turing v0.21.3

Diff since v0.21.2

Closed issues: - Getting an error on the Bayesian ODE tutorial when running the sample function (#1831)

Merged pull requests: - CompatHelper: bump compat for EllipticalSliceSampling to 1, (keep existing compat) (#1833) (@github-actions[bot])

- Julia
Published by github-actions[bot] almost 4 years ago