Search Results for

    Show / Hide Table of Contents

    Class GaussianProductVmpOp

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

    Inheritance
    Object
    GaussianProductVmpOp
    Inherited Members
    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)})]
    [Quality(QualityBand.Mature)]
    public static class GaussianProductVmpOp

    Methods

    AAverageLogarithm(Gaussian, Gaussian)

    VMP message to a.

    Declaration
    public static Gaussian AAverageLogarithm(Gaussian Product, 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 B

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

    Returns
    Type Description
    Gaussian

    The outgoing VMP message to the a argument.

    Remarks

    The outgoing message is the exponential of the average log-factor value, where the average is over all arguments except a. Because the factor is deterministic, product is integrated out before taking the logarithm. The formula is exp(sum_(b) p(b) log(sum_product p(product) factor(product,a,b))).

    Exceptions
    Type Condition
    ImproperMessageException

    Product is not a proper distribution.

    ImproperMessageException

    B is not a proper distribution.

    AAverageLogarithm(Gaussian, Double)

    VMP message to a.

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

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

    Double B

    Constant value for b.

    Returns
    Type Description
    Gaussian

    The outgoing VMP message to the a argument.

    Remarks

    The outgoing message is the factor viewed as a function of a with product integrated out. The formula is sum_product p(product) factor(product,a,b).

    Exceptions
    Type Condition
    ImproperMessageException

    Product is not a proper distribution.

    AAverageLogarithm(Double, Gaussian)

    VMP message to a.

    Declaration
    [NotSupported("Variational Message Passing does not support a Product factor with fixed output and two random inputs.")]
    public static Gaussian AAverageLogarithm(double Product, Gaussian B)
    Parameters
    Type Name Description
    Double Product

    Constant value for product.

    Gaussian B

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

    Returns
    Type Description
    Gaussian

    The outgoing VMP message to the a argument.

    Remarks

    The outgoing message is the exponential of the average log-factor value, where the average is over all arguments except a. The formula is exp(sum_(b) p(b) log(factor(product,a,b))).

    Exceptions
    Type Condition
    ImproperMessageException

    B is not a proper distribution.

    AAverageLogarithm(Double, Double)

    VMP message to a.

    Declaration
    public static Gaussian AAverageLogarithm(double Product, double B)
    Parameters
    Type Name Description
    Double Product

    Constant value for product.

    Double B

    Constant value for b.

    Returns
    Type Description
    Gaussian

    The outgoing VMP message to the a argument.

    Remarks

    The outgoing message is the factor viewed as a function of a conditioned on the given values.

    AverageLogFactor(Gaussian)

    Evidence message for VMP.

    Declaration
    public static double AverageLogFactor(Gaussian product)
    Parameters
    Type Name Description
    Gaussian product

    Incoming message from product.

    Returns
    Type Description
    Double

    Zero.

    Remarks

    In Variational Message Passing, the evidence contribution of a deterministic factor is zero. Adding up these values across all factors and variables gives the log-evidence estimate for VMP.

    BAverageLogarithm(Gaussian, Gaussian)

    VMP message to b.

    Declaration
    public static Gaussian BAverageLogarithm(Gaussian Product, Gaussian 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.

    Returns
    Type Description
    Gaussian

    The outgoing VMP message to the b argument.

    Remarks

    The outgoing message is the exponential of the average log-factor value, where the average is over all arguments except b. Because the factor is deterministic, product is integrated out before taking the logarithm. The formula is exp(sum_(a) p(a) log(sum_product p(product) factor(product,a,b))).

    Exceptions
    Type Condition
    ImproperMessageException

    Product is not a proper distribution.

    ImproperMessageException

    A is not a proper distribution.

    BAverageLogarithm(Gaussian, Double)

    VMP message to b.

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

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

    Double A

    Constant value for a.

    Returns
    Type Description
    Gaussian

    The outgoing VMP message to the b argument.

    Remarks

    The outgoing message is the factor viewed as a function of b with product integrated out. The formula is sum_product p(product) factor(product,a,b).

    Exceptions
    Type Condition
    ImproperMessageException

    Product is not a proper distribution.

    BAverageLogarithm(Double, Gaussian)

    VMP message to b.

    Declaration
    [NotSupported("Variational Message Passing does not support a Product factor with fixed output and two random inputs.")]
    public static Gaussian BAverageLogarithm(double Product, Gaussian A)
    Parameters
    Type Name Description
    Double Product

    Constant value for product.

    Gaussian A

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

    Returns
    Type Description
    Gaussian

    The outgoing VMP message to the b argument.

    Remarks

    The outgoing message is the exponential of the average log-factor value, where the average is over all arguments except b. The formula is exp(sum_(a) p(a) log(factor(product,a,b))).

    Exceptions
    Type Condition
    ImproperMessageException

    A is not a proper distribution.

    BAverageLogarithm(Double, Double)

    VMP message to b.

    Declaration
    public static Gaussian BAverageLogarithm(double Product, double A)
    Parameters
    Type Name Description
    Double Product

    Constant value for product.

    Double A

    Constant value for a.

    Returns
    Type Description
    Gaussian

    The outgoing VMP message to the b argument.

    Remarks

    The outgoing message is the factor viewed as a function of b conditioned on the given values.

    ProductAverageLogarithm(Gaussian, Gaussian)

    VMP message to product.

    Declaration
    public static Gaussian ProductAverageLogarithm(Gaussian A, Gaussian B)
    Parameters
    Type Name Description
    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
    Gaussian

    The outgoing VMP 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[sum_(a,b) p(a,b) factor(product,a,b)].

    Exceptions
    Type Condition
    ImproperMessageException

    A is not a proper distribution.

    ImproperMessageException

    B is not a proper distribution.

    ProductAverageLogarithm(Gaussian, Double)

    VMP message to product.

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

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

    Double B

    Constant value for b.

    Returns
    Type Description
    Gaussian

    The outgoing VMP 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[sum_(a) p(a) factor(product,a,b)].

    Exceptions
    Type Condition
    ImproperMessageException

    A is not a proper distribution.

    ProductAverageLogarithm(TruncatedGaussian, Double)

    VMP message to product.

    Declaration
    public static TruncatedGaussian ProductAverageLogarithm(TruncatedGaussian A, double B)
    Parameters
    Type Name Description
    TruncatedGaussian A

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

    Double B

    Constant value for b.

    Returns
    Type Description
    TruncatedGaussian

    The outgoing VMP 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[sum_(a) p(a) factor(product,a,b)].

    Exceptions
    Type Condition
    ImproperMessageException

    A is not a proper distribution.

    ProductAverageLogarithm(Double, Gaussian)

    VMP message to product.

    Declaration
    public static Gaussian ProductAverageLogarithm(double A, Gaussian B)
    Parameters
    Type Name Description
    Double A

    Constant value for a.

    Gaussian B

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

    Returns
    Type Description
    Gaussian

    The outgoing VMP 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[sum_(b) p(b) factor(product,a,b)].

    Exceptions
    Type Condition
    ImproperMessageException

    B is not a proper distribution.

    ProductAverageLogarithm(Double, TruncatedGaussian)

    VMP message to product.

    Declaration
    public static TruncatedGaussian ProductAverageLogarithm(double A, TruncatedGaussian B)
    Parameters
    Type Name Description
    Double A

    Constant value for a.

    TruncatedGaussian B

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

    Returns
    Type Description
    TruncatedGaussian

    The outgoing VMP 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[sum_(b) p(b) factor(product,a,b)].

    Exceptions
    Type Condition
    ImproperMessageException

    B is not a proper distribution.

    ProductDeriv(Gaussian, Gaussian, Gaussian, Gaussian, Gaussian)

    Declaration
    public static Gaussian ProductDeriv(Gaussian Product, Gaussian A, Gaussian B, Gaussian to_A, Gaussian to_B)
    Parameters
    Type Name Description
    Gaussian Product
    Gaussian A
    Gaussian B
    Gaussian to_A
    Gaussian to_B
    Returns
    Type Description
    Gaussian

    ProductDeriv(Gaussian, Gaussian, Double, Gaussian)

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

    ProductDeriv(Gaussian, Double, Gaussian, Gaussian)

    Declaration
    public static Gaussian ProductDeriv(Gaussian Product, double A, Gaussian B, Gaussian to_B)
    Parameters
    Type Name Description
    Gaussian Product
    Double A
    Gaussian B
    Gaussian to_B
    Returns
    Type Description
    Gaussian
    In This Article
    Back to top Copyright © .NET Foundation. All rights reserved.