Search Results for

    Show / Hide Table of Contents

    Class InnerProductOp

    Provides outgoing messages for InnerProduct(Vector, Vector), given random arguments to the function.

    Inheritance
    Object
    InnerProductOpBase
    InnerProductOp
    Inherited Members
    InnerProductOpBase.AAverageLogarithm(Double, VectorGaussian, VectorGaussian)
    InnerProductOpBase.BAverageLogarithm(Double, VectorGaussian, VectorGaussian)
    InnerProductOpBase.AAverageConditional(Double, Vector, VectorGaussian)
    InnerProductOpBase.BAverageConditional(Double, Vector, VectorGaussian)
    InnerProductOpBase.AAverageLogarithm(Double, Vector, VectorGaussian)
    InnerProductOpBase.BAverageLogarithm(Double, Vector, VectorGaussian)
    InnerProductOpBase.AverageLogFactor()
    InnerProductOpBase.InnerProductAverageLogarithm(DenseVector, PositiveDefiniteMatrix, DenseVector, PositiveDefiniteMatrix)
    InnerProductOpBase.InnerProductAverageLogarithm(Vector, DenseVector, PositiveDefiniteMatrix)
    InnerProductOpBase.InnerProductAverageLogarithmInit()
    InnerProductOpBase.InnerProductAverageLogarithm(DenseVector, PositiveDefiniteMatrix, Vector)
    InnerProductOpBase.BVarianceInit(VectorGaussian)
    InnerProductOpBase.BVariance(VectorGaussian, PositiveDefiniteMatrix)
    InnerProductOpBase.BMeanInit(VectorGaussian)
    InnerProductOpBase.BMean(VectorGaussian, PositiveDefiniteMatrix, DenseVector)
    InnerProductOpBase.AVarianceInit(VectorGaussian)
    InnerProductOpBase.AVariance(VectorGaussian, PositiveDefiniteMatrix)
    InnerProductOpBase.AMeanInit(VectorGaussian)
    InnerProductOpBase.AMean(VectorGaussian, PositiveDefiniteMatrix, DenseVector)
    InnerProductOpBase.AAverageLogarithm(Gaussian, VectorGaussian, DenseVector, PositiveDefiniteMatrix, VectorGaussian)
    InnerProductOpBase.AAverageLogarithm(Gaussian, Vector, VectorGaussian)
    InnerProductOpBase.BAverageLogarithm(Gaussian, VectorGaussian, DenseVector, PositiveDefiniteMatrix, VectorGaussian)
    InnerProductOpBase.BAverageLogarithm(Gaussian, Vector, VectorGaussian)
    InnerProductOpBase.InnerProductAverageConditional(Vector, DenseVector, PositiveDefiniteMatrix)
    InnerProductOpBase.InnerProductAverageConditionalInit()
    InnerProductOpBase.InnerProductAverageConditional(DenseVector, PositiveDefiniteMatrix, Vector)
    InnerProductOpBase.AAverageConditional(Gaussian, Vector, VectorGaussian)
    InnerProductOpBase.AAverageConditional(Gaussian, Vector, DenseVector, PositiveDefiniteMatrix, VectorGaussian)
    InnerProductOpBase.BAverageConditional(Gaussian, Vector, VectorGaussian)
    InnerProductOpBase.LogEvidenceRatio(Gaussian, Vector, VectorGaussian)
    InnerProductOpBase.LogEvidenceRatio(Double, Vector, DenseVector, PositiveDefiniteMatrix)
    InnerProductOpBase.LogEvidenceRatio(Gaussian, VectorGaussian, Vector)
    InnerProductOpBase.LogEvidenceRatio(Double, DenseVector, PositiveDefiniteMatrix, Vector)
    InnerProductOpBase.LogAverageFactor(Gaussian, Gaussian)
    InnerProductOpBase.LogAverageFactor(Double, Vector, DenseVector, PositiveDefiniteMatrix)
    InnerProductOpBase.LogAverageFactor(Double, DenseVector, PositiveDefiniteMatrix, Vector)
    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(Vector), "InnerProduct", new Type[]{}, Default = true)]
    [Buffers(new string[]{"AVariance", "BVariance", "AMean", "BMean"})]
    [Quality(QualityBand.Mature)]
    public class InnerProductOp : InnerProductOpBase

    Methods

    AAverageConditional(Gaussian, VectorGaussian, VectorGaussian, VectorGaussian)

    EP message to a.

    Declaration
    [NotSupported("An InnerProduct factor between two VectorGaussian variables is not yet implemented for Expectation Propagation.  Try using Variational Message Passing.")]
    public static VectorGaussian AAverageConditional(Gaussian innerProduct, VectorGaussian A, VectorGaussian B, VectorGaussian result)
    Parameters
    Type Name Description
    Gaussian innerProduct

    Incoming message from innerProduct.

    VectorGaussian A

    Incoming message from a.

    VectorGaussian B

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

    VectorGaussian result

    Modified to contain the outgoing message.

    Returns
    Type Description
    VectorGaussian

    result

    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_(innerProduct,b) p(innerProduct,b) factor(innerProduct,a,b)]/p(a).

    Exceptions
    Type Condition
    ImproperMessageException

    B is not a proper distribution.

    BAverageConditional(Gaussian, VectorGaussian, VectorGaussian, VectorGaussian)

    EP message to b.

    Declaration
    [NotSupported("An InnerProduct factor between two VectorGaussian variables is not yet implemented for Expectation Propagation.  Try using Variational Message Passing.")]
    public static VectorGaussian BAverageConditional(Gaussian innerProduct, VectorGaussian A, VectorGaussian B, VectorGaussian result)
    Parameters
    Type Name Description
    Gaussian innerProduct

    Incoming message from innerProduct.

    VectorGaussian A

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

    VectorGaussian B

    Incoming message from b.

    VectorGaussian result

    Modified to contain the outgoing message.

    Returns
    Type Description
    VectorGaussian

    result

    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_(innerProduct,a) p(innerProduct,a) factor(innerProduct,a,b)]/p(b).

    Exceptions
    Type Condition
    ImproperMessageException

    A is not a proper distribution.

    InnerProductAverageConditional(VectorGaussian, VectorGaussian)

    EP message to innerProduct.

    Declaration
    [NotSupported("An InnerProduct factor between two VectorGaussian variables is not yet implemented for Expectation Propagation.  Try using Variational Message Passing.")]
    public static Gaussian InnerProductAverageConditional(VectorGaussian A, VectorGaussian B)
    Parameters
    Type Name Description
    VectorGaussian A

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

    VectorGaussian B

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

    Returns
    Type Description
    Gaussian

    The outgoing EP message to the innerProduct argument.

    Remarks

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

    Exceptions
    Type Condition
    ImproperMessageException

    A is not a proper distribution.

    ImproperMessageException

    B is not a proper distribution.

    LogAverageFactor(Gaussian, VectorGaussian, VectorGaussian)

    Evidence message for EP.

    Declaration
    [NotSupported("An InnerProduct factor between two VectorGaussian variables is not yet implemented for Expectation Propagation.  Try using Variational Message Passing.")]
    public static double LogAverageFactor(Gaussian innerProduct, VectorGaussian A, VectorGaussian B)
    Parameters
    Type Name Description
    Gaussian innerProduct

    Incoming message from innerProduct.

    VectorGaussian A

    Incoming message from a.

    VectorGaussian B

    Incoming message from b.

    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_(innerProduct,a,b) p(innerProduct,a,b) factor(innerProduct,a,b)).

    LogAverageFactor(Double, VectorGaussian, VectorGaussian)

    Evidence message for EP.

    Declaration
    [NotSupported("An InnerProduct factor between two VectorGaussian variables is not yet implemented for Expectation Propagation.  Try using Variational Message Passing.")]
    public static double LogAverageFactor(double innerProduct, VectorGaussian A, VectorGaussian B)
    Parameters
    Type Name Description
    Double innerProduct

    Constant value for innerProduct.

    VectorGaussian A

    Incoming message from a.

    VectorGaussian B

    Incoming message from b.

    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_(a,b) p(a,b) factor(innerProduct,a,b)).

    LogEvidenceRatio(Gaussian, VectorGaussian, VectorGaussian)

    Evidence message for EP.

    Declaration
    [NotSupported("An InnerProduct factor between two VectorGaussian variables is not yet implemented for Expectation Propagation.  Try using Variational Message Passing.")]
    public static double LogEvidenceRatio(Gaussian innerProduct, VectorGaussian A, VectorGaussian B)
    Parameters
    Type Name Description
    Gaussian innerProduct

    Incoming message from innerProduct.

    VectorGaussian A

    Incoming message from a.

    VectorGaussian B

    Incoming message from b.

    Returns
    Type Description
    Double

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

    Remarks

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

    LogEvidenceRatio(Double, VectorGaussian, VectorGaussian)

    Evidence message for EP.

    Declaration
    [NotSupported("An InnerProduct factor between two VectorGaussian variables is not yet implemented for Expectation Propagation.  Try using Variational Message Passing.")]
    public static double LogEvidenceRatio(double innerProduct, VectorGaussian A, VectorGaussian B)
    Parameters
    Type Name Description
    Double innerProduct

    Constant value for innerProduct.

    VectorGaussian A

    Incoming message from a.

    VectorGaussian B

    Incoming message from b.

    Returns
    Type Description
    Double

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

    Remarks

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

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