Exemplo n.º 1
0
 def model(y):
     lambda1 = numpyro.sample(
         'lambda1', dist.ImproperUniform(dist.constraints.real, (), ()))
     lambda2 = numpyro.sample(
         'lambda2', dist.ImproperUniform(dist.constraints.real, (), ()))
     sigma = numpyro.sample(
         'sigma', dist.ImproperUniform(dist.constraints.positive, (), ()))
     mu = numpyro.deterministic('mu', lambda1 + lambda2)
     numpyro.sample('y', dist.Normal(mu, sigma), obs=y)
Exemplo n.º 2
0
 def model(y):
     lambda1 = numpyro.sample(
         "lambda1", dist.ImproperUniform(dist.constraints.real, (), ()))
     lambda2 = numpyro.sample(
         "lambda2", dist.ImproperUniform(dist.constraints.real, (), ()))
     sigma = numpyro.sample(
         "sigma", dist.ImproperUniform(dist.constraints.positive, (), ()))
     mu = numpyro.deterministic("mu", lambda1 + lambda2)
     numpyro.sample("y", dist.Normal(mu, sigma), obs=y)
Exemplo n.º 3
0
 def model():
     population = jnp.array([1000., 2000., 3000.])
     with numpyro.plate("region", 3):
         d = dist.ImproperUniform(support=constraints.interval(0, population),
                                  batch_shape=(3,),
                                  event_shape=event_shape)
         incidence = numpyro.sample("incidence", d)
         assert d.log_prob(incidence).shape == (3,)
Exemplo n.º 4
0
    def __call__(self, name, fn, obs):
        # Support must be circular
        support = fn.support
        if isinstance(support, constraints.independent):
            support = fn.support.base_constraint
        assert support is constraints.circular

        # Draw parameter-free noise.
        new_fn = dist.ImproperUniform(constraints.real, fn.batch_shape, fn.event_shape)
        value = numpyro.sample(
            f"{name}_unwrapped",
            new_fn,
            obs=obs,
        )

        # Differentiably transform.
        value = jnp.remainder(value + math.pi, 2 * math.pi) - math.pi

        # Simulate a pyro.deterministic() site.
        numpyro.factor(f"{name}_factor", fn.log_prob(value))
        return None, value
Exemplo n.º 5
0
 def model():
     x = numpyro.sample(
         "x", dist.ImproperUniform(dist.constraints.positive, (), ()))
     return numpyro.sample("y", dist.Normal(x, 1), obs=1.0)
Exemplo n.º 6
0
 def model(data):
     mean = numpyro.sample("mean", dist.Normal(0, 1).mask(False))
     std = numpyro.sample(
         "std", dist.ImproperUniform(dist.constraints.positive, (), ()))
     return numpyro.sample("obs", dist.Normal(mean, std), obs=data)
Exemplo n.º 7
0
 def model():
     numpyro.sample("c", dist.Bernoulli(0.8))
     numpyro.sample(
         "u", dist.ImproperUniform(dist.constraints.unit_interval, (), ())
     )