Replicating PyMC3 mixture model of different distributions

Hi, thanks for the great work on the package. Trying to learn how to use Pyro in the context of mixtures of (potentially) different distributions. I found an example from a PyMC3 tutorial, and was curious about the recommended approach to replicating it.

In PyMC3 one can provide a list of distributions to a “mixture” distribution (see screenshot, which comes from https://psyarxiv.com/aes5f/download)

What is the canonical way of doing this in Pyro today? Is it this: Arbitrary mixture models and discrete latent variable enumeration (there are noted performance disadvantages there)

Yes, your linked solution is still canonical.

Note there is a more recent MixtureSameFamily distribution that will be available in the next PyTorch release, however as the name indicates it restricts to mixtures within a single family (e.g. Normal distributions of different parameters).

1 Like