Skip to content

Commit 6c63654

Browse files
committed
copy Turing over
1 parent d5c07d4 commit 6c63654

File tree

6 files changed

+40
-24
lines changed

6 files changed

+40
-24
lines changed

src/compiler.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -615,4 +615,4 @@ end
615615
Get the specialized version of type `T` for sampler `spl`. For example,
616616
if `T === Float64` and `spl::Hamiltonian`, the matching type is `eltype(vi[spl])`.
617617
"""
618-
get_matching_type(spl, vi, ::Type{T}) where {T} = T
618+
function get_matching_type end

test/Turing/Turing.jl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,17 @@ module Turing
88
# to indicate that's not implemented inside Turing.jl #
99
########################################################################
1010

11-
using Requires, Reexport, ForwardDiff, DynamicPPL
11+
using Requires, Reexport, ForwardDiff
1212
using Bijectors, StatsFuns, SpecialFunctions
1313
using Statistics, LinearAlgebra, ProgressMeter
14-
using Markdown, Libtask
14+
using Markdown, Libtask, MacroTools
1515
using AbstractMCMC
1616
@reexport using Distributions, MCMCChains, Libtask
1717
using Tracker: Tracker
1818

1919
import Base: ~, ==, convert, hash, promote_rule, rand, getindex, setindex!
2020
import MCMCChains: AbstractChains, Chains
21+
import DynamicPPL: getspace, runmodel!
2122

2223
const PROGRESS = Ref(true)
2324
function turnprogress(switch::Bool)
@@ -30,7 +31,6 @@ const DEBUG = Bool(parse(Int, get(ENV, "DEBUG_TURING", "0")))
3031
# Random probability measures.
3132
include("stdlib/distributions.jl")
3233
include("stdlib/RandomMeasures.jl")
33-
3434
include("utilities/Utilities.jl")
3535
using .Utilities
3636
include("core/Core.jl")

test/Turing/core/Core.jl

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,29 @@
11
module Core
22

3-
using Libtask, ForwardDiff, Random
3+
using MacroTools, Libtask, ForwardDiff, Random
44
using Distributions, LinearAlgebra
55
using ..Utilities, Reexport
66
using Tracker: Tracker
7-
using ..Turing: Turing, Model, runmodel!,
7+
using ..Turing: Turing
8+
using DynamicPPL: Model, runmodel!,
89
AbstractSampler, Sampler, SampleFromPrior
910
using LinearAlgebra: copytri!
11+
using Bijectors: PDMatDistribution
12+
import Bijectors: link, invlink
1013
using DistributionsAD
1114
using StatsFuns: logsumexp, softmax
12-
using Bijectors: PDMatDistribution
13-
14-
using DynamicPPL
15+
@reexport using DynamicPPL
1516

1617
include("container.jl")
1718
include("ad.jl")
1819

1920
export @model,
2021
@varname,
22+
generate_observe,
23+
translate_tilde!,
24+
get_vars,
25+
get_data,
26+
get_default_values,
2127
ParticleContainer,
2228
Particle,
2329
Trace,
@@ -45,6 +51,8 @@ export @model,
4551
gradient_logp_reverse,
4652
@varinfo,
4753
@logpdf,
48-
@sampler
54+
@sampler,
55+
@logprob_str,
56+
@prob_str
4957

5058
end # module

test/Turing/inference/Inference.jl

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,26 @@
11
module Inference
22

33
using ..Core, ..Utilities
4-
using ..Utilities: init
5-
using DynamicPPL: Metadata, _tail, VarInfo, TypedVarInfo, istrans,
6-
islinked, link!, invlink!, getlogp, tonamedtuple, VarName, getsym, vectorize,
7-
settrans!, split_var_str, Model, runmodel!, Sampler, SampleFromPrior,
8-
SampleFromUniform, Selector, DefaultContext, PriorContext, LikelihoodContext,
9-
MiniBatchContext, AbstractSampler, AbstractSamplerState, set_retained_vns_del_by_spl!
10-
using DynamicPPL
4+
using DynamicPPL: Metadata, _tail, VarInfo, TypedVarInfo,
5+
islinked, invlink!, getlogp, tonamedtuple, VarName, getsym, vectorize,
6+
settrans!, _getvns, getdist, split_var_str, CACHERESET, AbstractSampler,
7+
Model, runmodel!, Sampler, SampleFromPrior, SampleFromUniform,
8+
Selector, AbstractSamplerState, DefaultContext, PriorContext,
9+
LikelihoodContext, MiniBatchContext, set_flag!, unset_flag!
1110
using Distributions, Libtask, Bijectors
1211
using ProgressMeter, LinearAlgebra
13-
using ..Turing: Turing, NamedDist, NoDist, PROGRESS
12+
using ..Turing: PROGRESS, NamedDist, NoDist, Turing
1413
using StatsFuns: logsumexp
1514
using Random: GLOBAL_RNG, AbstractRNG, randexp
16-
using AbstractMCMC
15+
using AbstractMCMC, DynamicPPL
1716

1817
import MCMCChains: Chains
1918
import AdvancedHMC; const AHMC = AdvancedHMC
20-
import DynamicPPL: getspace, get_matching_type, tilde, dot_tilde
2119
import ..Core: getchunksize, getADtype
2220
import AbstractMCMC: AbstractTransition, sample, step!, sample_init!,
2321
transitions_init, sample_end!, AbstractSampler, transition_type,
2422
callback, init_callback, AbstractCallback, psample
23+
import DynamicPPL: tilde, dot_tilde, getspace, get_matching_type
2524

2625
export InferenceAlgorithm,
2726
Hamiltonian,

test/Turing/utilities/Utilities.jl

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,20 @@
11
module Utilities
22

3-
using ..Turing: AbstractSampler, Sampler
3+
using DynamicPPL: AbstractSampler, Sampler
44
using Distributions, Bijectors
55
using StatsFuns, SpecialFunctions
66
using MCMCChains: AbstractChains, Chains, setinfo
77
import Distributions: sample
88

9+
export vectorize,
10+
reconstruct,
11+
reconstruct!,
12+
Sample,
13+
Chain,
14+
init,
15+
vectorize,
16+
set_resume!
17+
918
include("robustinit.jl")
1019

1120
end # module

test/Turing/variational/VariationalInference.jl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
module Variational
22

3-
using ..Core, DynamicPPL, ..Utilities
4-
using Distributions, Bijectors
3+
using ..Core, ..Utilities
4+
using Distributions, Bijectors, DynamicPPL
55
using ProgressMeter, LinearAlgebra
66
using ..Turing: PROGRESS
7-
using ..Turing: Model, SampleFromPrior, SampleFromUniform
7+
using DynamicPPL: Model, SampleFromPrior, SampleFromUniform
88
using ..Turing: Turing
99
using Random: AbstractRNG
1010

0 commit comments

Comments
 (0)