Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New Gibbs sampler using condition #2099

Merged
merged 71 commits into from
Apr 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
71 commits
Select commit Hold shift + click to select a range
b3db449
initial work on the new gibbs sampler
torfjelde Jul 28, 2023
efe15db
added tests for the new Gibbs sampler
torfjelde Jul 28, 2023
35f9f15
added tests for new Gibbs
torfjelde Oct 4, 2023
072cf6b
new Gibbs is now sampling (correctly) sequentially
torfjelde Oct 4, 2023
2f25199
let's not overload merge just yet
torfjelde Oct 6, 2023
7ca26bb
export GibbsV2 + added more samplers to the tests
torfjelde Oct 6, 2023
8b0de21
added TODO comment
torfjelde Oct 8, 2023
90fd854
Merge branch 'master' into torfjelde/new-gibbs
yebai Oct 8, 2023
b960418
Merge remote-tracking branch 'origin/torfjelde/new-gibbs' into torfje…
torfjelde Oct 20, 2023
d000382
Merge branch 'master' into torfjelde/new-gibbs
torfjelde Oct 20, 2023
144b9c0
Merge branch 'master' into torfjelde/new-gibbs
torfjelde Nov 15, 2023
014fbe2
removed lots of varinfo related merging functionality that is now
torfjelde Nov 16, 2023
63d64e6
shifting some code around
torfjelde Nov 16, 2023
0dcd5bf
removed redundant constructor for GibbsV2
torfjelde Nov 16, 2023
c29efc1
added GibbsContext which is similar to FixContext but also computes
torfjelde Nov 18, 2023
bff0786
adopted the rerun mechanism in Gibbs for GibbsV2, thus fixing the
torfjelde Nov 19, 2023
5955167
broken tests are no longer broken
torfjelde Nov 19, 2023
614dc52
fix issues with dot_tilde_* impls for GibbsContext
torfjelde Nov 19, 2023
7776f82
fix for dot_tilde_assume when using GibbsContext
torfjelde Nov 19, 2023
c65b7e9
fixed re-running of models for Gibbs sampling properly this time
torfjelde Nov 19, 2023
d1e94e7
Merge branch 'master' into torfjelde/new-gibbs
torfjelde Nov 19, 2023
16ddca2
added new gibbs to tests
torfjelde Nov 19, 2023
ba8c6e1
added some further comments on why we need `GibbsContext`
torfjelde Nov 19, 2023
53bd707
went back to using `DynamicPPL.condition` rather than using custom
torfjelde Nov 19, 2023
b38a82a
add concrete comment about reverting changes for `gibbs_condition`
torfjelde Nov 19, 2023
adc67be
Update test/mcmc/gibbs_new.jl
torfjelde Nov 20, 2023
3b5a74c
fixed recursive definition of `condition` varinfos
torfjelde Nov 20, 2023
0578c35
Merge remote-tracking branch 'origin/torfjelde/new-gibbs' into torfje…
torfjelde Nov 20, 2023
f87e2d1
use `fix` instead of `condition`
torfjelde Nov 20, 2023
1c1d9b7
Revert "use `fix` instead of `condition`"
torfjelde Nov 21, 2023
6be7ab9
rmeoved unnused symbol
torfjelde Nov 21, 2023
a143cc4
Revert "went back to using `DynamicPPL.condition` rather than using c…
torfjelde Nov 21, 2023
4d37f5f
bump compat entry of DynamicPPL so we can overload acclogp!
torfjelde Nov 21, 2023
f39e636
update assume for SMC samplers to make use of new `acclogp!`
torfjelde Nov 21, 2023
9cc5397
added proper impl of acclogp!! for SMC samplers + made accessing
torfjelde Nov 21, 2023
c93944c
added experimental module and moved gibbs to it
torfjelde Nov 24, 2023
e6ce62f
fixed now-inccorect references in new gibbs file
torfjelde Nov 24, 2023
475e264
updated gibbs tests
torfjelde Nov 24, 2023
463f31c
moved experimental gibbs tests
torfjelde Nov 24, 2023
a79ad92
updated tests to include experiemntal tests
torfjelde Nov 24, 2023
b2a9566
removed refrences to previews tests of experimental Gibbs sampler
torfjelde Nov 24, 2023
ead7535
Merge branch 'master' into torfjelde/new-gibbs
torfjelde Jan 28, 2024
1266639
removed solved TODO
torfjelde Jan 29, 2024
7bd0831
added a comment on `reconstruct_getvalue` usage
torfjelde Jan 29, 2024
c74727f
bump patch version
torfjelde Jan 29, 2024
8b46f11
added comments on future work
torfjelde Jan 29, 2024
a81cf09
Update test/experimental/gibbs.jl
torfjelde Jan 29, 2024
f280caa
fixed bug where particle samplers didn't properly account for
torfjelde Jan 29, 2024
86b859c
Merge remote-tracking branch 'origin/torfjelde/new-gibbs' into torfje…
torfjelde Jan 29, 2024
b1dcadf
relax atol for a numerical test with Gibbs a bit
torfjelde Jan 30, 2024
0f0bfd5
Merge branch 'master' into torfjelde/new-gibbs
yebai Feb 27, 2024
5e047ef
Merge branch 'master' into torfjelde/new-gibbs
torfjelde Mar 10, 2024
4bde75a
fixed bug with `AbstractDict` constructor for experimental `Gibbs`
torfjelde Mar 10, 2024
90dcb83
Merge branch 'master' into torfjelde/new-gibbs
torfjelde Mar 20, 2024
b54e6eb
aaaalways link the varinfo in the new Gibbs sampler, just to be sure
torfjelde Apr 15, 2024
e7ad682
add test to cover recent improvement to `DynamicPPL.subset`
torfjelde Apr 17, 2024
2713316
bump compat entry for DynamicPPL
torfjelde Apr 17, 2024
fb29556
added some docstrings
torfjelde Apr 17, 2024
d3a13ad
fixed test
torfjelde Apr 17, 2024
81bf9c0
fixed import
torfjelde Apr 17, 2024
d340e58
another attempt at fixing tests
torfjelde Apr 17, 2024
6f6fe7a
another attempt at fixing tests
torfjelde Apr 17, 2024
9c93162
attempt at fix tests
torfjelde Apr 17, 2024
cfa8fb3
forgot something in previos commit
torfjelde Apr 17, 2024
15e83b9
cleaned up the experimental Gibbs sampler a bit
torfjelde Apr 17, 2024
aed307a
removed accidentaly psuedocode inclusion
torfjelde Apr 17, 2024
04c177a
Apply suggestions from code review
torfjelde Apr 19, 2024
0acd27b
relaxed olerance in one MH test a bit
torfjelde Apr 20, 2024
186d2e9
Merge remote-tracking branch 'origin/torfjelde/new-gibbs' into torfje…
torfjelde Apr 20, 2024
74b8e8c
Merge branch 'master' into torfjelde/new-gibbs
torfjelde Apr 20, 2024
0f30514
bump patch version
torfjelde Apr 20, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Project.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name = "Turing"
uuid = "fce5fe82-541a-59a6-adf8-730c64b5f9a0"
version = "0.30.8"
version = "0.30.9"

[deps]
ADTypes = "47edcb42-4c32-4615-8424-f2b9edc5f35b"
Expand Down Expand Up @@ -58,7 +58,7 @@ Distributions = "0.23.3, 0.24, 0.25"
DistributionsAD = "0.6"
DocStringExtensions = "0.8, 0.9"
DynamicHMC = "3.4"
DynamicPPL = "0.24.7"
DynamicPPL = "0.24.10"
EllipticalSliceSampling = "0.5, 1, 2"
ForwardDiff = "0.10.3"
Libtask = "0.7, 0.8"
Expand Down
1 change: 1 addition & 0 deletions src/Turing.jl
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ using .Variational
include("optimisation/Optimisation.jl")
using .Optimisation

include("experimental/Experimental.jl")
include("deprecated.jl") # to be removed in the next minor version release

###########
Expand Down
16 changes: 16 additions & 0 deletions src/experimental/Experimental.jl
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
module Experimental

using Random: Random
using AbstractMCMC: AbstractMCMC
using DynamicPPL: DynamicPPL, VarName
using Setfield: Setfield

using DocStringExtensions: TYPEDFIELDS
using Distributions

using ..Turing: Turing
using ..Turing.Inference: gibbs_rerun, InferenceAlgorithm

include("gibbs.jl")

end
Loading
Loading