Microsoft Research, Cambridge
Infer.NET distributions
Classes
| Class | Description | |
|---|---|---|
| AccumulateIntoCollection T | ||
| AccumulatorList T |
Wraps a list of accumulators, adding each sample to all of them.
| |
| Array2DEstimator ItemEstimator, DistributionArray, Distribution |
Estimator for a 2-D DistributionArray type, where the samples are distributions
| |
| Array2DEstimator ItemEstimator, DistributionArray, Distribution, Sample |
Estimator for a 2-D DistributionArray type.
| |
| ArrayEstimator |
Useful static methods relating to array estimators
| |
| ArrayEstimator T |
Static class which implements useful functions on estimator arrays.
| |
| ArrayEstimator ItemEstimator, DistributionArray, Distribution |
Estimator for a DistributionArray type where the sample type is a distribution
| |
| ArrayEstimator ItemEstimator, DistributionArray, Distribution, Sample |
Estimator for a DistributionArray type.
| |
| BernoulliEstimator |
Estimates a Bernoulli distribution from samples.
| |
| BernoulliIntegerSubset |
Represents a list of Bernoulli distributions considered as a distribution over a variable-sized list of
integers, which are the indices of elements in the boolean list with value 'true'
| |
| BetaEstimator |
Estimates a Beta distribution from samples.
| |
| BurnInAccumulator T |
Wraps an accumulator, discarding the first BurnIn samples.
| |
| ConditionalList TDist |
Conditional List
| |
| ConstantFunction |
Class implementing the constant function. Used as a domain prototype
for distributions over functions
| |
| Dirichlet |
A Dirichlet distribution on probability vectors.
| |
| DirichletEstimator |
Estimates a Dirichlet distribution from samples.
| |
| Discrete |
An arbitrary distribution over integers [0,D-1].
| |
| DiscreteChar |
A discrete distribution over characters.
| |
| DiscreteEnum TEnum |
A discrete distribution over the values of an enum.
| |
| DiscreteEstimator |
Estimates a discrete distribution from samples.
| |
| Distribution |
Static class which implements useful functions on distributions.
| |
| Distribution T |
Static class which implements useful functions on distributions.
| |
| DistributionFileArray T, DomainType | ||
| EstimatorFactory |
Estimator factor. Given a distribution instance, create a compatible estimator instance
| |
| GammaEstimator |
Estimates a Gamma distribution from samples.
| |
| GaussianEstimator |
Estimates a Gaussian distribution from samples.
| |
| GaussianProcess |
A base class for Gaussian process distributions
| |
| GenericDiscreteBase T, TThis |
A generic base class for discrete distributions over a type T.
| |
| ImproperDistributionException |
Exception thrown when a distribution is improper and its expectations need to be computed.
| |
| LinearSpline |
Very simple 1-D linear spline class which implements IFunction.
Assumes knots at regular positions - given by a start and increment.
The vector of knot values defines how many knots.
| |
| Mixture T |
A mixture of distributions of the same type
| |
| Mixture T, DomainType | ||
| PointMass T |
A point mass, which is the 'distribution' you get for an observed variable.
All the probability mass is at the point given by observed value.
| |
| PoissonEstimator |
Estimates a Poisson distribution from samples.
| |
| Rank1Pot |
Rank 1 potential for a sparse GP. This low rank parameterisation
is used for messages flowing from a SparseGP evaluation factor to
a function variable.
| |
| SampleList T |
Sample List
| |
| SparseBernoulliList |
Represents a list of Bernoulli distributions, optimised for the case where many share
the same probability of being true.
This class can be used as a distribution over a fixed-sized list of booleans or sparsely
as a distribution over a variable-sized list of integers, which are the indices of elements
in the boolean list with value 'true'.
| |
| SparseBernoulliListBase |
Base class for BernoulliIntegerSubset and SparseBernoulliList.
| |
| SparseBetaList |
Represents a list of Beta distributions, optimised for the case where many share
the same pseudocount values.
| |
| SparseGammaList |
Represents a sparse list of Gamma distributions, optimised for the case where many share
the same parameterisation.
| |
| SparseGaussianList |
Represents a sparse list of Gaussian distributions, optimised for the case where many share
the same parameterisation.
| |
| SparseGP |
A Gaussian Process distribution over functions, represented by a GP prior times a set of regression likelihoods on basis points.
The GP prior and basis point locations are stored in FixedParameters.
The regression likelihoods are stored as a single VectorGaussian called InducingDist.
IncludePrior=false does not include the prior in the distribution (i.e. the distribution is degenerate).
If pointFunc != null, the distribution is a point mass.
If InducingDist is uniform and IncludePrior is false, the distribution is uniform.
The GP prior is assumed to be non-uniform.
| |
| SparseGPFixed |
This class maintains all the fixed parameters for a sparse GP
- i.e. parameters which the inference does not change.
All SparseGP messages can refer to a single SparseGPFixed
class, and cloning of SparseGP instances will just copy the
reference
| |
| TruncatedGaussianEstimator | ||
| UnnormalizedDiscrete |
Represents a discrete distribution in the log domain without explicit normalization.
| |
| VectorGaussian |
Represents a multivariate Gaussian distribution.
| |
| VectorGaussianEstimator |
Estimates a Gaussian distribution from samples.
| |
| Wishart |
A Wishart distribution on positive definite matrices.
| |
| WishartEstimator |
Estimates a Wishart distribution from samples.
|
Structures
| Structure | Description | |
|---|---|---|
| Bernoulli |
Represents a distribution on a binary variable.
| |
| Beta |
A Beta distribution over the interval [0,1].
| |
| Binomial |
Binomial distribution over the integers [0,n]
| |
| ConjugateDirichlet |
Represents the distribution proportion to x^{Shape-1} exp(-Rate*x) / B(x,D)^K
where B(x,D)=Gamma(x)^D/Gamma(D*x)
| |
| Gamma |
A Gamma distribution on positive reals.
| |
| GammaPower |
The distribution of a Gamma variable raised to a power. The Weibull distribution is a special case.
| |
| Gaussian |
Represents a one-dimensional Gaussian distribution.
| |
| NonconjugateGaussian |
Nonconjugate Gaussian messages for VMP. The mean has a Gaussian distribution and the variance a Gamma distribution.
| |
| Poisson |
A Poisson distribution over the integers [0,infinity).
| |
| TruncatedGaussian |
A distribution over real numbers between an upper and lower bound. If both bounds are infinite, it reduces to an ordinary Gaussian distribution.
| |
| WrappedGaussian |
A Gaussian distribution on a periodic domain, such as angles between 0 and 2*pi.
|
Interfaces
| Interface | Description | |
|---|---|---|
| Accumulator T |
Indicates support for adding an item to a distribution estimator
| |
| CanGetAverageLog T |
Whether the distribution supports the expected logarithm of one instance under another
| |
| CanGetLogAverageOf T |
Whether the distribution can compute the expectation of another distribution's value.
| |
| CanGetLogAverageOfPower T |
Whether the distribution can compute the expectation of another distribution raised to a power.
| |
| CanGetLogNormalizer |
Whether the distribution can compute its normalizer.
| |
| CanGetLogProb T |
Whether the distribution supports evaluation of its density
| |
| CanGetLogProbPrep DistributionType, T |
Whether the distribution supports preallocation of a workspace for density evaluation
| |
| CanGetMean MeanType |
Whether the distribution supports retrieval of a mean value
| |
| CanGetMeanAndVariance MeanType, VarType |
Whether the distribution supports the joint getting of mean and variance
where the mean and variance are reference types
| |
| CanGetMeanAndVarianceOut MeanType, VarType |
Whether the distribution supports the joint getting of mean and variance
where the mean and variance are returned as 'out' argiments
| |
| CanGetVariance VarType |
Whether the distribution supports retrieval of a variance value
| |
| CanSamplePrep DistributionType, T |
Whether the distribution supports preallocation of a workspace for sampling
| |
| CanSetMean MeanType |
Whether the distribution supports setting of its mean value
| |
| CanSetMeanAndVariance MeanType, VarType |
Whether the distribution supports the joint setting of mean and variance
| |
| Estimator T |
Indicates support for retrieving an estimated distribution
| |
| HasPoint T |
Whether the distribution supports being a point mass
| |
| IDistribution T | Distribution interface | |
| IFunction |
Function interface - used for distributions over a function domain
| |
| IGaussianProcess |
Basic GP interface
| |
| IsDistributionWrapper |
Marker interface for classes which wrap distributions
| |
| Sampleable T |
Whether the distribution supports sampling
| |
| SettableToUniform |
Whether the distribution can be set to uniform
|
Delegates
| Delegate | Description | |
|---|---|---|
| Evaluator DistributionType, T |
Delegate type for evaluating log densities. This is used for distributions such as
VectorGaussian which have a large memory footprint. If a distribution
supports CanGetLogProbPrep DistributionType, T , then it can return a delegate of this type
to do evaluations without recreating a workspace each time.
| |
| Sampler T |
Delegate type for sampling
| |
| Sampler DistributionType, T |
Delegate type for sampling a distribution. This is used for distributions such as
VectorGaussian which have a large memory footprint. If a distribution
supports CanSamplePrep DistributionType, T , then it can return a delegate of this type
to do successive sampling without recreating a workspace each time.
|
Enumerations
| Enumeration | Description | |
|---|---|---|
| ConjugateDirichlet ApproximationMethod |
Approximation method to use for non-analytic expectations.
Asymptotic: use expectations under the approximating Gamma distribution
GaussHermiteQuadrature: Use Gauss-Hermite quadrature with 32 quadrature points
ClenshawCurtisQuadrature: Use Clenshaw Curtis quadrature with an adaptive number of quadrature points
|