Click or drag to resize
MicrosoftResearch.Infer.Distributions Namespace
Microsoft Research
Infer.NET distributions
Classes
  ClassDescription
Public classAccumulateIntoCollectionT
An Accumulator that adds each element to a collection.
Public classAccumulatorListT
Wraps a list of accumulators, adding each sample to all of them.
Public classArray2DEstimatorItemEstimator, DistributionArray, Distribution
Estimator for a 2-D DistributionArray type, where the samples are distributions
Public classArray2DEstimatorItemEstimator, DistributionArray, Distribution, Sample
Estimator for a 2-D DistributionArray type.
Public classArrayEstimator
Useful static methods relating to array estimators
Public classArrayEstimatorT
Static class which implements useful functions on estimator arrays.
Public classArrayEstimatorItemEstimator, DistributionArray, Distribution
Estimator for a DistributionArray type where the sample type is a distribution
Public classArrayEstimatorItemEstimator, DistributionArray, Distribution, Sample
Estimator for a DistributionArray type.
Public classBernoulliEstimator
Estimates a Bernoulli distribution from samples.
Public classBernoulliIntegerSubset
Represents a sparse 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'.
Public classBetaEstimator
Estimates a Beta distribution from samples.
Public classBurnInAccumulatorT
Wraps an accumulator, discarding the first BurnIn samples.
Public classConditionalListTDist
Conditional List
Public classConstantFunction
Class implementing the constant function. Used as a domain prototype for distributions over functions
Public classDirichlet
A Dirichlet distribution on probability vectors.
Public classDirichletEstimator
Estimates a Dirichlet distribution from samples.
Public classDiscrete
An arbitrary distribution over integers [0,D-1].
Public classDiscreteChar
A discrete distribution over characters.
Public classDiscreteEnumTEnum
A discrete distribution over the values of an enum.
Public classDiscreteEstimator
Estimates a discrete distribution from samples.
Public classDistribution
Static class which implements useful functions on distributions.
Public classDistributionT
Static class which implements useful functions on distributions.
Public classDistributionArrayT
A distribution over an array, where each element is independent and has distribution type T
Public classDistributionArrayT, DomainType
A distribution over an array of type DomainType, where each element is independent and has distribution of type T
Public classDistributionArray2DT
A distribution over a 2D array, where each element is independent and has distribution type T
Public classDistributionArray2DT, DomainType
A distribution over an array of type DomainType, where each element is independent and has distribution of type T
Public classDistributionFileArrayT, DomainType
A distribution over an array of type DomainType, where each element is independent and has distribution of type T, all stored in a file.
Public classDistributionStructArrayT, DomainType
A distribution over an array of type DomainType, where each element is independent and has distribution of type T
Public classDistributionStructArray2DT, DomainType
A distribution over a 2D array of type DomainType, where each element is independent and has distribution of type T
Public classEstimatorFactory
Estimator factor. Given a distribution instance, create a compatible estimator instance
Public classGammaEstimator
Estimates a Gamma distribution from samples.
Public classGaussianEstimator
Estimates a Gaussian distribution from samples.
Public classGaussianProcess
A base class for Gaussian process distributions
Public classGenericDiscreteBaseT, TThis
A generic base class for discrete distributions over a type T.
Public classImproperDistributionException
Exception thrown when a distribution is improper and its expectations need to be computed.
Public classLinearSpline
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.
Public classListDistributionTList, TElement, TElementDistribution
Represents a distribution over lists that use a weighted finite state automaton as the underlying weight function.
Public classListDistributionTList, TElement, TElementDistribution, TThis
A base class for distributions over lists that use a weighted finite state automaton as the underlying weight function.
Public classMixtureT
A mixture of distributions of the same type
Public classMixtureT, DomainType
Public classPointMassT
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.
Public classPoissonEstimator
Estimates a Poisson distribution from samples.
Public classRank1Pot
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.
Public classSampleListT
Sample List
Public classSequenceDistributionTSequence, TElement, TElementDistribution, TSequenceManipulator, TWeightFunction, TThis
A base class for implementations of distributions over sequences.
Public classSequenceDistributionFormats
A collection of sequence distribution formats.
Public classSparseBernoulliList
Represents a sparse list of Bernoulli distributions, optimized for the case where many share the same parameter value. The class supports an approximation tolerance which allows elements close to the common value to be automatically reset to the common value.
Public classSparseBetaList
Represents a sparse list of Beta distributions, optimized for the case where many share the same parameter value. The class supports an approximation tolerance which allows elements close to the common value to be automatically reset to the common value.
Public classSparseDistributionListTDist, TDomain, TThis
Abstract base class for a homogeneous sparse list of distributions. The class supports an approximation tolerance which allows elements close to the common value to be automatically reset to the common value. The list implements the interfaces which allow these distributions to participate in message passing.
Public classSparseGammaList
Represents a sparse list of Gamma distributions, optimized for the case where many share the same parameter value. The class supports an approximation tolerance which allows elements close to the common value to be automatically reset to the common value.
Public classSparseGaussianList
Represents a sparse list of Gaussian distributions, optimized for the case where many share the same parameter value. The class supports an approximation tolerance which allows elements close to the common value to be automatically reset to the common value.
Public classSparseGP
A Gaussian Process distribution over functions, represented by a GP prior times a set of regression likelihoods on basis points.
Public classSparseGPFixed
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
Public classStringDistribution
Represents a distribution over strings that uses a weighted finite state automaton as the underlying weight function.
Public classTruncatedGaussianEstimator
Estimates a TruncatedGaussian distribution from samples.
Public classUnnormalizedDiscrete
Represents a discrete distribution in the log domain without explicit normalization.
Public classVectorGaussian
Represents a multivariate Gaussian distribution.
Public classVectorGaussianEstimator
Estimates a Gaussian distribution from samples.
Public classWishart
A Wishart distribution on positive definite matrices.
Public classWishartEstimator
Estimates a Wishart distribution from samples.
Structures
  StructureDescription
Public structureBernoulli
Represents a distribution on a binary variable.
Public structureBeta
A Beta distribution over the interval [0,1].
Public structureBinomial
Binomial distribution over the integers [0,n]
Public structureConjugateDirichlet
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)
Public structureGamma
A Gamma distribution on positive reals.
Public structureGammaPower
The distribution of a Gamma variable raised to a power. The Weibull distribution is a special case.
Public structureGaussian
Represents a one-dimensional Gaussian distribution.
Public structureNonconjugateGaussian
Nonconjugate Gaussian messages for VMP. The mean has a Gaussian distribution and the variance a Gamma distribution.
Public structurePareto
A Pareto distribution over the real numbers from lowerBound to infinity.
Public structurePoisson
A Poisson distribution over the integers [0,infinity).
Public structureTruncatedGaussian
A distribution over real numbers between an upper and lower bound. If both bounds are infinite, it reduces to an ordinary Gaussian distribution.
Public structureWrappedGaussian
A Gaussian distribution on a periodic domain, such as angles between 0 and 2*pi.
Interfaces
  InterfaceDescription
Public interfaceAccumulatorT
Indicates support for adding an item to a distribution estimator
Public interfaceCanGetAverageLogT
Whether the distribution supports the expected logarithm of one instance under another
Public interfaceCanGetLogAverageOfT
Whether the distribution can compute the expectation of another distribution's value.
Public interfaceCanGetLogAverageOfPowerT
Whether the distribution can compute the expectation of another distribution raised to a power.
Public interfaceCanGetLogNormalizer
Whether the distribution can compute its normalizer.
Public interfaceCanGetLogProbT
Whether the distribution supports evaluation of its density
Public interfaceCanGetLogProbPrepDistributionType, T
Whether the distribution supports preallocation of a workspace for density evaluation
Public interfaceCanGetMeanMeanType
Whether the distribution supports retrieval of a mean value
Public interfaceCanGetMeanAndVarianceMeanType, VarType
Whether the distribution supports the joint getting of mean and variance where the mean and variance are reference types
Public interfaceCanGetMeanAndVarianceOutMeanType, VarType
Whether the distribution supports the joint getting of mean and variance where the mean and variance are returned as 'out' argiments
Public interfaceCanGetModeModeType
Whether the distribution supports retrieval of the most probable value
Public interfaceCanGetVarianceVarType
Whether the distribution supports retrieval of a variance value
Public interfaceCanSamplePrepDistributionType, T
Whether the distribution supports preallocation of a workspace for sampling
Public interfaceCanSetMeanMeanType
Whether the distribution supports setting of its mean value
Public interfaceCanSetMeanAndVarianceMeanType, VarType
Whether the distribution supports the joint setting of mean and variance
Public interfaceEstimatorT
Indicates support for retrieving an estimated distribution
Public interfaceHasPointT
Whether the distribution supports being a point mass
Public interfaceIDistributionT
Distribution interface
Public interfaceIFunction
Function interface - used for distributions over a function domain
Public interfaceIGaussianProcess
Basic GP interface
Public interfaceIsDistributionWrapper
Marker interface for classes which wrap distributions
Public interfaceSampleableT
Whether the distribution supports sampling
Public interfaceSettableToPartialUniformTDist
Whether the distribution can be set to be uniform over the support of another distribution.
Public interfaceSettableToUniform
Whether the distribution can be set to uniform
Delegates
  DelegateDescription
Public delegateEvaluatorDistributionType, 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 CanGetLogProbPrepDistributionType, T, then it can return a delegate of this type to do evaluations without recreating a workspace each time.
Public delegateSamplerT
Delegate type for sampling
Public delegateSamplerDistributionType, 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 CanSamplePrepDistributionType, T, then it can return a delegate of this type to do successive sampling without recreating a workspace each time.
Enumerations
  EnumerationDescription
Public enumerationConjugateDirichletApproximationMethod
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