Search Results for

    Show / Hide Table of Contents

    Class GaussianProductOp_Laplace

    Provides outgoing messages for Product(Double, Double), given random arguments to the function.

    Inheritance
    Object
    GaussianProductOpBase
    GaussianProductOpEvidenceBase
    GaussianProductOp_Laplace
    Inherited Members
    GaussianProductOpEvidenceBase.LogAverageFactor(Gaussian, Gaussian, Double, Gaussian)
    GaussianProductOpEvidenceBase.LogAverageFactor(Gaussian, Double, Gaussian, Gaussian)
    GaussianProductOpEvidenceBase.LogAverageFactor(Double, Gaussian, Double)
    GaussianProductOpEvidenceBase.LogAverageFactor(Double, Double, Gaussian)
    GaussianProductOpEvidenceBase.LogAverageFactor(Double, Double, Double)
    GaussianProductOpEvidenceBase.LogEvidenceRatio(Double, Double, Double)
    GaussianProductOpEvidenceBase.LogAverageFactor(Gaussian, Double, Double)
    GaussianProductOpEvidenceBase.LogEvidenceRatio(Gaussian, Gaussian, Double)
    GaussianProductOpEvidenceBase.LogEvidenceRatio(Gaussian, Double, Gaussian)
    GaussianProductOpEvidenceBase.LogEvidenceRatio(Gaussian, Double, Double)
    GaussianProductOpEvidenceBase.LogEvidenceRatio(Double, Gaussian, Double)
    GaussianProductOpEvidenceBase.LogEvidenceRatio(Double, Double, Gaussian)
    GaussianProductOpBase.ProductAverageConditional(Double, Gaussian)
    GaussianProductOpBase.ProductAverageConditional(Gaussian, Double)
    GaussianProductOpBase.ProductAverageConditional(Double, Double)
    GaussianProductOpBase.AAverageConditional(Gaussian, Double)
    GaussianProductOpBase.AAverageConditional(Double, Double)
    GaussianProductOpBase.BAverageConditional(Gaussian, Double)
    GaussianProductOpBase.BAverageConditional(Double, Double)
    GaussianProductOpBase.ProductAverageConditional(Double, TruncatedGaussian)
    GaussianProductOpBase.ProductAverageConditional(TruncatedGaussian, Double)
    GaussianProductOpBase.AAverageConditional(TruncatedGaussian, Double)
    GaussianProductOpBase.BAverageConditional(TruncatedGaussian, Double)
    Object.Equals(Object)
    Object.Equals(Object, Object)
    Object.GetHashCode()
    Object.GetType()
    Object.MemberwiseClone()
    Object.ReferenceEquals(Object, Object)
    Object.ToString()
    Namespace: Microsoft.ML.Probabilistic.Factors
    Assembly: Microsoft.ML.Probabilistic.dll
    Syntax
    [FactorMethod(typeof(Factor), "Product", new Type[]{typeof(double), typeof(double)})]
    [Buffers(new string[]{"ahat"})]
    [Quality(QualityBand.Experimental)]
    public class GaussianProductOp_Laplace : GaussianProductOpEvidenceBase
    Remarks

    This class allows EP to process the product factor using Laplace's method.

    Methods

    AAverageConditional(Gaussian, Gaussian, Gaussian, Double)

    EP message to a.

    Declaration
    public static Gaussian AAverageConditional(Gaussian Product, Gaussian A, Gaussian B, double ahat)
    Parameters
    Type Name Description
    Gaussian Product

    Incoming message from product. Must be a proper distribution. If uniform, the result will be uniform.

    Gaussian A

    Incoming message from a.

    Gaussian B

    Incoming message from b.

    Double ahat

    Buffer ahat.

    Returns
    Type Description
    Gaussian

    The outgoing EP message to the a argument.

    Remarks

    The outgoing message is a distribution matching the moments of a as the random arguments are varied. The formula is proj[p(a) sum_(product,b) p(product,b) factor(product,a,b)]/p(a).

    Exceptions
    Type Condition
    ImproperMessageException

    Product is not a proper distribution.

    Ahat(Gaussian, Gaussian, Gaussian, Double)

    Declaration
    public static double Ahat(Gaussian Product, Gaussian A, Gaussian B, double ahat)
    Parameters
    Type Name Description
    Gaussian Product
    Gaussian A
    Gaussian B
    Double ahat
    Returns
    Type Description
    Double

    AhatInit(Gaussian)

    Declaration
    public static double AhatInit(Gaussian a)
    Parameters
    Type Name Description
    Gaussian a
    Returns
    Type Description
    Double

    BAverageConditional(Gaussian, Gaussian, Gaussian, Double)

    EP message to b.

    Declaration
    public static Gaussian BAverageConditional(Gaussian Product, Gaussian A, Gaussian B, double ahat)
    Parameters
    Type Name Description
    Gaussian Product

    Incoming message from product. Must be a proper distribution. If uniform, the result will be uniform.

    Gaussian A

    Incoming message from a.

    Gaussian B

    Incoming message from b.

    Double ahat

    Buffer ahat.

    Returns
    Type Description
    Gaussian

    The outgoing EP message to the b argument.

    Remarks

    The outgoing message is a distribution matching the moments of b as the random arguments are varied. The formula is proj[p(b) sum_(product,a) p(product,a) factor(product,a,b)]/p(b).

    Exceptions
    Type Condition
    ImproperMessageException

    Product is not a proper distribution.

    GetMoments(Int32, Gaussian, Gaussian, Gaussian, Double)

    Declaration
    public static Gaussian GetMoments(int index, Gaussian Product, Gaussian A, Gaussian B, double ahat)
    Parameters
    Type Name Description
    Int32 index
    Gaussian Product
    Gaussian A
    Gaussian B
    Double ahat
    Returns
    Type Description
    Gaussian

    LogAverageFactor(Gaussian, Gaussian, Gaussian, Gaussian)

    Evidence message for EP.

    Declaration
    public static double LogAverageFactor(Gaussian Product, Gaussian A, Gaussian B, Gaussian to_A)
    Parameters
    Type Name Description
    Gaussian Product

    Incoming message from product. Must be a proper distribution. If uniform, the result will be uniform.

    Gaussian A

    Incoming message from a. Must be a proper distribution. If uniform, the result will be uniform.

    Gaussian B

    Incoming message from b. Must be a proper distribution. If uniform, the result will be uniform.

    Gaussian to_A

    Previous outgoing message to A.

    Returns
    Type Description
    Double

    Logarithm of the factor's average value across the given argument distributions.

    Remarks

    The formula for the result is log(sum_(product,a,b) p(product,a,b) factor(product,a,b)).

    Exceptions
    Type Condition
    ImproperMessageException

    Product is not a proper distribution.

    ImproperMessageException

    A is not a proper distribution.

    ImproperMessageException

    B is not a proper distribution.

    LogEvidenceRatio(Gaussian, Gaussian, Gaussian)

    Evidence message for EP.

    Declaration
    public static double LogEvidenceRatio(Gaussian Product, Gaussian A, Gaussian B)
    Parameters
    Type Name Description
    Gaussian Product

    Incoming message from product. Must be a proper distribution. If uniform, the result will be uniform.

    Gaussian A

    Incoming message from a. Must be a proper distribution. If uniform, the result will be uniform.

    Gaussian B

    Incoming message from b. Must be a proper distribution. If uniform, the result will be uniform.

    Returns
    Type Description
    Double

    Logarithm of the factor's contribution the EP model evidence.

    Remarks

    The formula for the result is log(sum_(product,a,b) p(product,a,b) factor(product,a,b) / sum_product p(product) messageTo(product)). Adding up these values across all factors and variables gives the log-evidence estimate for EP.

    Exceptions
    Type Condition
    ImproperMessageException

    Product is not a proper distribution.

    ImproperMessageException

    A is not a proper distribution.

    ImproperMessageException

    B is not a proper distribution.

    ProductAverageConditional(Gaussian, Gaussian, Gaussian, Double)

    EP message to product.

    Declaration
    public static Gaussian ProductAverageConditional(Gaussian Product, Gaussian A, Gaussian B, double ahat)
    Parameters
    Type Name Description
    Gaussian Product

    Incoming message from product.

    Gaussian A

    Incoming message from a.

    Gaussian B

    Incoming message from b.

    Double ahat

    Buffer ahat.

    Returns
    Type Description
    Gaussian

    The outgoing EP message to the product argument.

    Remarks

    The outgoing message is a distribution matching the moments of product as the random arguments are varied. The formula is proj[p(product) sum_(a,b) p(a,b) factor(product,a,b)]/p(product).

    In This Article
    Back to top Copyright © .NET Foundation. All rights reserved.