Short summary of the problem
Hello all! I’m fairly new to Bayesian modelling and have been having some trouble with a Gaussian Mixture model. Specifically, I have two questions.
- Are mixtures of Gaussians an appropriate way to model this data?
- If it is, why am I getting nonsensical estimates for my mixing proportion.
I have data from two experimental conditions. I’m trying to model both using two-component mixtures of Gaussians.
When I run two separate models that simply estimate the underlying means and mixing proportions for each distribution, I get reasonable enough results. I.e.:
prior<-c( prior(normal(-1,1),Intercept, dpar=mu1), prior(normal(1,1),Intercept, dpar=mu2) ) fit_mix_simple_1<-brm(bf(F2.50.class~1), simple_data, family = mix, prior = prior, chains = 2)
Tells me that for the data on the left, theta1 is roughly
0.25 (CI [0.12,0.38 ]) and theta2 roughly
0.75 (CI[0.62,0.88]). This seems reasonable to me.
However, doing the same for the distribution on the right estimates the mixing proportions to be
0.55 (CI [0.01,0.99]) and
0.45 (CI [0.01,0.99]) . Relating to my first question, does this estimate make the use of a mixture model problematic? Or does it accurately reflect that the underlying distributions may be mixed so thoroughly that a high degree of uncertainty is expected?
As for my second question, when I try to run a model that looks at both distributions and predicts mixing proportions based on experimental condition, I get answers that aren’t proportions. So running something like
fit_mix<-brm(bf(F2.50.class~1, mu1~condition, theta2~total_cond), data, family = mix, prior = prior, chains = 2)
tells me that the estimated intercept for theta2 is
240.47 and the estimated coefficient for experimental condition is
-455.54 . The Rhats for both estimates are very high, but this didn’t seem like the type of problem that running for more iterations would solve.
Thank you all!
- Operating System: Windows 10
- brms Version: 2.13.3