Hi – I’m trying to fit a mixture of 4 bivariate gaussians with Turing and getting a strange error? Can someone help with the syntax here:
@model GaussianMixtureModel(x, K) = begin
# K is expected number of clusters
# x is bivariate data, typically 2 x 1000
D, N = size(x)
# Draw the paramters
μ ~ [MvNormal([0.,0.], 5.) for i in 1:K]
τ ~ [Gamma() for i in 1:K]
# Dirichlet prior
α = 1.0
w ~ Dirichlet(K, α)
# Draw assignments for each datum and generate it from a multivariate normal.
k = Vector{Int}(undef, N)
for i in 1:N
k[i] ~ Categorical(w)
x[:, i] ~ MvNormal(μ[k[i]], τ[k[i]])
end
return k
end
I’m getting error (when sampling): MethodError: no method matching assume(::DynamicPPL.SampleFromPrior,
Thanks