def model(loc, scale): with numpyro.plate_stack("plates", shape[:len(shape) - event_dim]): with numpyro.plate("particles", 10000): if "dist_type" == "Normal": numpyro.sample("x", dist.Normal(loc, scale).to_event(event_dim)) else: numpyro.sample("x", dist.StudentT(10.0, loc, scale).to_event(event_dim))
def model(): with numpyro.plate_stack("plates", shape): with numpyro.plate("particles", 100000): return numpyro.sample( "x", dist.TransformedDistribution( dist.Normal(jnp.zeros_like(loc), jnp.ones_like(scale)), [AffineTransform(loc, scale), ExpTransform()]).expand_by([100000]))
def model(): fn = dist.TransformedDistribution( dist.Normal(jnp.zeros_like(loc), jnp.ones_like(scale)), [AffineTransform(loc, scale), ExpTransform()]).expand(shape) if event_shape: fn = fn.to_event(len(event_shape)).expand_by([100000]) with numpyro.plate_stack("plates", batch_shape): with numpyro.plate("particles", 100000): return numpyro.sample("x", fn)
def guide(): with numpyro.plate_stack("plates", shape): return numpyro.sample("x", dist.Normal(0, 1))
def model_exp(loc, concentration): with numpyro.plate_stack("plates", shape): with numpyro.plate("particles", 10000): numpyro.sample("x", dist.VonMises(loc, concentration))
def model(concentration): with numpyro.plate_stack("plates", shape): with numpyro.plate("particles", 10000): numpyro.sample("x", dist.ProjectedNormal(concentration))