def make_mixture_prior(latent_size, mixture_components):
if mixture_components == <NUM_LIT:1>:<EOL><INDENT>return tfd.MultivariateNormalDiag(<EOL>loc=tf.zeros([latent_size]),<EOL>scale_identity_multiplier=<NUM_LIT:1.0>)<EOL><DEDENT>loc = tf.compat.v1.get_variable(<EOL>name="<STR_LIT>", shape=[mixture_components, latent_size])<EOL>raw_scale_diag = tf.compat.v1.get_variable(<EOL>name="<STR_LIT>", shape=[mixture_components, latent_size])<EOL>mixture_logits = tf.compat.v1.get_variable(<EOL>name="<STR_LIT>", shape=[mixture_components])<EOL>return tfd.MixtureSameFamily(<EOL>components_distribution=tfd.MultivariateNormalDiag(<EOL>loc=loc,<EOL>scale_diag=tf.nn.softplus(raw_scale_diag)),<EOL>mixture_distribution=tfd.Categorical(logits=mixture_logits),<EOL>name="<STR_LIT>")<EOL>
Creates the mixture of Gaussians prior distribution.

    Args:
      latent_size: The dimensionality of the latent representation.
      mixture_components: Number of elements of the mixture.

    Returns:
      random_prior: A `tfd.Distribution` instance representing the distribution
        over encodings in the absence of any evidence.