-
Notifications
You must be signed in to change notification settings - Fork 37
Closed
Description
On DPPL 0.8.0:
julia> @model function test5(x)
μ ~ MvNormal(fill(0, 2), 2.0)
z = Vector{Int}(undef, length(x))
z .~ Categorical.(fill([0.5, 0.5], length(x)))
for i in 1:length(x)
x[i] ~ Normal(μ[z[i]], 0.1)
end
end
ModelGen{var"###generator#506",(:x,),(),Tuple{}}(##generator#506, NamedTuple())
julia> test5([1, 1, -1])(VarInfo(), SampleFromPrior(), LikelihoodContext())
ERROR: MethodError: no method matching NoDist(::Array{DiscreteNonParametric{Int64,Float64,Base.OneTo{Int64},Array{Float64,1}},1})
Closest candidates are:
NoDist(::NamedDist) at /home/philipp/.julia/packages/DynamicPPL/QgcLg/src/distribution_wrappers.jl:31
NoDist(::Td) where {variate, support, Td<:Distribution{variate,support}} at /home/philipp/.julia/packages/DynamicPPL/QgcLg/src/distribution_wrappers.jl:29
Stacktrace:
[1] dot_tilde(::Random._GLOBAL_RNG, ::LikelihoodContext{Nothing}, ::SampleFromPrior, ::Array{DiscreteNonParametric{Int64,Float64,Base.OneTo{Int64},Array{Float64,1}},1}, ::Array{Int64,1}, ::VarName{:z,Tuple{}}, ::Tuple{}, ::VarInfo{DynamicPPL.Metadata{Dict{VarName,Int64},Array{Distribution,1},Array{VarName,1},Array{Real,1},Array{Set{DynamicPPL.Selector},1}},Float64}) at /home/philipp/.julia/packages/DynamicPPL/QgcLg/src/context_implementations.jl:180
[2] dot_tilde_assume(::Random._GLOBAL_RNG, ::LikelihoodContext{Nothing}, ::SampleFromPrior, ::Array{DiscreteNonParametric{Int64,Float64,Base.OneTo{Int64},Array{Float64,1}},1}, ::Array{Int64,1}, ::VarName{:z,Tuple{}}, ::Tuple{}, ::VarInfo{DynamicPPL.Metadata{Dict{VarName,Int64},Array{Distribution,1},Array{VarName,1},Array{Real,1},Array{Set{DynamicPPL.Selector},1}},Float64}) at /home/philipp/.julia/packages/DynamicPPL/QgcLg/src/context_implementations.jl:215
[3] macro expansion at ./REPL[88]:4 [inlined]
[4] ##evaluator#505(::Random._GLOBAL_RNG, ::Model{var"###evaluator#505",(:x,),Tuple{Array{Int64,1}},(),ModelGen{var"###generator#506",(:x,),(),Tuple{}}}, ::VarInfo{DynamicPPL.Metadata{Dict{VarName,Int64},Array{Distribution,1},Array{VarName,1},Array{Real,1},Array{Set{DynamicPPL.Selector},1}},Float64}, ::SampleFromPrior, ::LikelihoodContext{Nothing}) at /home/philipp/.julia/packages/DynamicPPL/QgcLg/src/compiler.jl:356
[5] evaluate_threadunsafe(::Random._GLOBAL_RNG, ::Model{var"###evaluator#505",(:x,),Tuple{Array{Int64,1}},(),ModelGen{var"###generator#506",(:x,),(),Tuple{}}}, ::VarInfo{DynamicPPL.Metadata{Dict{VarName,Int64},Array{Distribution,1},Array{VarName,1},Array{Real,1},Array{Set{DynamicPPL.Selector},1}},Float64}, ::SampleFromPrior, ::LikelihoodContext{Nothing}) at /home/philipp/.julia/packages/DynamicPPL/QgcLg/src/model.jl:157
[6] (::Model{var"###evaluator#505",(:x,),Tuple{Array{Int64,1}},(),ModelGen{var"###generator#506",(:x,),(),Tuple{}}})(::Random._GLOBAL_RNG, ::VarInfo{DynamicPPL.Metadata{Dict{VarName,Int64},Array{Distribution,1},Array{VarName,1},Array{Real,1},Array{Set{DynamicPPL.Selector},1}},Float64}, ::SampleFromPrior, ::LikelihoodContext{Nothing}) at /home/philipp/.julia/packages/DynamicPPL/QgcLg/src/model.jl:136
[7] (::Model{var"###evaluator#505",(:x,),Tuple{Array{Int64,1}},(),ModelGen{var"###generator#506",(:x,),(),Tuple{}}})(::VarInfo{DynamicPPL.Metadata{Dict{VarName,Int64},Array{Distribution,1},Array{VarName,1},Array{Real,1},Array{Set{DynamicPPL.Selector},1}},Float64}, ::SampleFromPrior, ::Vararg{Any,N} where N) at /home/philipp/.julia/packages/DynamicPPL/QgcLg/src/model.jl:126
[8] top-level scope at REPL[90]:1Metadata
Metadata
Assignees
Labels
No labels