Distribution Funsors¶
This interface provides a number of standard normalized probability distributions implemented as funsors.
-
class
Distribution(*args)[source]¶ Bases:
funsor.terms.FunsorFunsor backed by a PyTorch/JAX distribution object.
Parameters: *args – Distribution-dependent parameters. These can be either funsors or objects that can be coerced to funsors via to_funsor(). See derived classes for details.-
dist_class= 'defined by derived classes'¶
-
has_enumerate_support¶
-
-
class
Beta(concentration1, concentration0, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.Beta
-
-
class
Cauchy(loc, scale, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.Cauchy
-
-
class
Chi2(df, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.Chi2
-
-
class
BernoulliProbs(probs, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
funsor.torch.distributions._PyroWrapper_BernoulliProbs
-
-
class
BernoulliLogits(logits, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
funsor.torch.distributions._PyroWrapper_BernoulliLogits
-
-
class
Binomial(total_count, probs, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.Binomial
-
-
class
Categorical(probs, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.Categorical
-
-
class
CategoricalLogits(logits, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
funsor.torch.distributions._PyroWrapper_CategoricalLogits
-
-
class
Delta(v, log_density, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.delta.Delta
-
-
class
Dirichlet(concentration, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.Dirichlet
-
-
class
DirichletMultinomial(concentration, total_count, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶
-
-
class
Exponential(rate, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.Exponential
-
-
class
Gamma(concentration, rate, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.Gamma
-
-
class
GammaPoisson(concentration, rate, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶
-
-
class
Geometric(probs, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.Geometric
-
-
class
Gumbel(loc, scale, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.Gumbel
-
-
class
HalfCauchy(scale, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.HalfCauchy
-
-
class
HalfNormal(scale, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.HalfNormal
-
-
class
Laplace(loc, scale, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.Laplace
-
-
class
Logistic(loc, scale, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.logistic.Logistic
-
-
class
LowRankMultivariateNormal(loc, cov_factor, cov_diag, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶
-
-
class
Multinomial(total_count, probs, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.Multinomial
-
-
class
MultivariateNormal(loc, scale_tril, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶
-
-
class
NonreparameterizedBeta(concentration1, concentration0, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.testing.fakes.NonreparameterizedBeta
-
-
class
NonreparameterizedDirichlet(concentration, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.testing.fakes.NonreparameterizedDirichlet
-
-
class
NonreparameterizedGamma(concentration, rate, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.testing.fakes.NonreparameterizedGamma
-
-
class
NonreparameterizedNormal(loc, scale, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.testing.fakes.NonreparameterizedNormal
-
-
class
Normal(loc, scale, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.Normal
-
-
class
Pareto(scale, alpha, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.Pareto
-
-
class
Poisson(rate, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.Poisson
-
-
class
StudentT(df, loc, scale, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.StudentT
-
-
class
Uniform(low, high, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.Uniform
-
-
class
VonMises(loc, concentration, value='value')¶ Bases:
funsor.distribution.Distribution-
dist_class¶ alias of
pyro.distributions.torch.VonMises
-