Distribution Funsors¶
This interface provides a number of standard normalized probability distributions implemented as funsors.
-
class
Distribution
(*args)[source]¶ Bases:
funsor.terms.Funsor
Funsor backed by a PyTorch 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'¶
-
-
class
BernoulliLogits
(logits, value=None)[source]¶ Bases:
funsor.distributions.Distribution
Wraps
pyro.distributions.Bernoulli
.Parameters: -
dist_class
¶ alias of
pyro.distributions.torch.Bernoulli
-
-
Bernoulli
(probs=None, logits=None, value='value')[source]¶ Wraps
pyro.distributions.Bernoulli
.This dispatches to either
BernoulliProbs
orBernoulliLogits
to accept eitherprobs
orlogits
args.Parameters:
-
class
Beta
(concentration1, concentration0, value=None)[source]¶ Bases:
funsor.distributions.Distribution
Wraps
pyro.distributions.Beta
.Parameters: -
dist_class
¶ alias of
pyro.distributions.torch.Beta
-
-
class
Binomial
(total_count, probs, value=None)[source]¶ Bases:
funsor.distributions.Distribution
Wraps
pyro.distributions.Binomial
.Parameters: -
dist_class
¶ alias of
pyro.distributions.torch.Binomial
-
-
class
Categorical
(probs, value='value')[source]¶ Bases:
funsor.distributions.Distribution
Wraps
pyro.distributions.Categorical
.Parameters: -
dist_class
¶ alias of
pyro.distributions.torch.Categorical
-
-
class
Delta
(v, log_density=0, value='value')[source]¶ Bases:
funsor.distributions.Distribution
Wraps
pyro.distributions.Delta
.Parameters: -
dist_class
¶ alias of
pyro.distributions.delta.Delta
-
-
class
Dirichlet
(concentration, value='value')[source]¶ Bases:
funsor.distributions.Distribution
Wraps
pyro.distributions.Dirichlet
.Parameters: -
dist_class
¶ alias of
pyro.distributions.torch.Dirichlet
-
-
class
DirichletMultinomial
(concentration, total_count, value='value')[source]¶ Bases:
funsor.distributions.Distribution
Wraps
pyro.distributions.DirichletMultinomial
.Parameters: -
dist_class
¶ alias of
pyro.distributions.conjugate.DirichletMultinomial
-
-
LogNormal
(loc, scale, value='value')[source]¶ Wraps
pyro.distributions.LogNormal
.Parameters:
-
class
Multinomial
(total_count, probs, value=None)[source]¶ Bases:
funsor.distributions.Distribution
Wraps
pyro.distributions.Multinomial
.Parameters: -
dist_class
¶ alias of
pyro.distributions.torch.Multinomial
-
-
class
Normal
(loc, scale, value='value')[source]¶ Bases:
funsor.distributions.Distribution
Wraps
pyro.distributions.Normal
.Parameters: -
dist_class
¶ alias of
pyro.distributions.torch.Normal
-
-
class
MultivariateNormal
(loc, scale_tril, value='value')[source]¶ Bases:
funsor.distributions.Distribution
Wraps
pyro.distributions.MultivariateNormal
.Parameters: -
dist_class
¶ alias of
pyro.distributions.torch.MultivariateNormal
-
-
class
Poisson
(rate, value=None)[source]¶ Bases:
funsor.distributions.Distribution
Wraps
pyro.distributions.Poisson
.Parameters: -
dist_class
¶ alias of
pyro.distributions.torch.Poisson
-
-
class
Gamma
(concentration, rate, value=None)[source]¶ Bases:
funsor.distributions.Distribution
Wraps
pyro.distributions.Gamma
.Parameters: -
dist_class
¶ alias of
pyro.distributions.torch.Gamma
-
-
class
VonMises
(loc, concentration, value=None)[source]¶ Bases:
funsor.distributions.Distribution
Wraps
pyro.distributions.VonMises
.Parameters: -
dist_class
¶ alias of
pyro.distributions.torch.VonMises
-