-
Notifications
You must be signed in to change notification settings - Fork 5
Description
One of the nice features of Forney-style FGs is the hierarchical composition: by closing the box around any set of factors, we have a new factor. This is extremely powerful when we build larger models. So I was wondering if this is possible in ReactiveMP.
What I mean is, e.g. in the function @model function gaussian_mixture_model(n), you draw samples from a distribution, eg, w1 ~ Gamma(0.01, 100.0).
It would be great if you now could proceed with another model that includes the gaussian_mixture_model as a distribution/submodel, eg,
@model function some_larger_model(...)
m2 ~ gaussian_mixture_model(parameters)
w2 ~ Gamma(0.01, m2)
...
end
Basically it means that distributions and models can both be interpreted as sub-models.
You can imagine how power this is, eg you can very easily create mixtures of HGFs and a switching HMM does not need to describe the HMM anymore, but just calls the HMM and applies a switching mechanism to some states.