Search Results for

    Show / Hide Table of Contents

    Class BooleanOrOp

    Provides outgoing messages for Or(Boolean, Boolean), given random arguments to the function.

    Inheritance
    Object
    BooleanOrOp
    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), "Or", new Type[]{})]
    [Quality(QualityBand.Mature)]
    public static class BooleanOrOp

    Methods

    AAverageConditional(Bernoulli, Bernoulli)

    EP message to a.

    Declaration
    public static Bernoulli AAverageConditional(Bernoulli or, Bernoulli B)
    Parameters
    Type Name Description
    Bernoulli or

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

    Bernoulli B

    Incoming message from b.

    Returns
    Type Description
    Bernoulli

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

    Exceptions
    Type Condition
    ImproperMessageException

    or is not a proper distribution.

    AAverageConditional(Bernoulli, Boolean)

    EP message to a.

    Declaration
    public static Bernoulli AAverageConditional(Bernoulli or, bool B)
    Parameters
    Type Name Description
    Bernoulli or

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

    Boolean B

    Constant value for b.

    Returns
    Type Description
    Bernoulli

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

    Exceptions
    Type Condition
    ImproperMessageException

    or is not a proper distribution.

    AAverageConditional(Boolean, Bernoulli)

    EP message to a.

    Declaration
    public static Bernoulli AAverageConditional(bool or, Bernoulli B)
    Parameters
    Type Name Description
    Boolean or

    Constant value for or.

    Bernoulli B

    Incoming message from b.

    Returns
    Type Description
    Bernoulli

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

    AAverageConditional(Boolean, Boolean)

    EP message to a.

    Declaration
    public static Bernoulli AAverageConditional(bool or, bool B)
    Parameters
    Type Name Description
    Boolean or

    Constant value for or.

    Boolean B

    Constant value for b.

    Returns
    Type Description
    Bernoulli

    The outgoing EP message to the a argument.

    Remarks

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

    AAverageLogarithm(Bernoulli, Bernoulli)

    VMP message to a.

    Declaration
    public static Bernoulli AAverageLogarithm(Bernoulli or, Bernoulli B)
    Parameters
    Type Name Description
    Bernoulli or

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

    Bernoulli B

    Incoming message from b.

    Returns
    Type Description
    Bernoulli

    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, or is integrated out before taking the logarithm. The formula is exp(sum_(b) p(b) log(sum_or p(or) factor(or,a,b))).

    Exceptions
    Type Condition
    ImproperMessageException

    or is not a proper distribution.

    AAverageLogarithm(Bernoulli, Boolean)

    VMP message to a.

    Declaration
    public static Bernoulli AAverageLogarithm(Bernoulli or, bool B)
    Parameters
    Type Name Description
    Bernoulli or

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

    Boolean B

    Constant value for b.

    Returns
    Type Description
    Bernoulli

    The outgoing VMP message to the a argument.

    Remarks

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

    Exceptions
    Type Condition
    ImproperMessageException

    or is not a proper distribution.

    AAverageLogarithm(Boolean, Bernoulli)

    VMP message to a.

    Declaration
    [NotSupported("Variational Message Passing does not support an Or factor with fixed output.")]
    public static Bernoulli AAverageLogarithm(bool or, Bernoulli B)
    Parameters
    Type Name Description
    Boolean or

    Constant value for or.

    Bernoulli B

    Incoming message from b.

    Returns
    Type Description
    Bernoulli

    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(or,a,b))).

    AAverageLogarithm(Boolean, Boolean)

    VMP message to a.

    Declaration
    public static Bernoulli AAverageLogarithm(bool or, bool B)
    Parameters
    Type Name Description
    Boolean or

    Constant value for or.

    Boolean B

    Constant value for b.

    Returns
    Type Description
    Bernoulli

    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()

    Evidence message for VMP.

    Declaration
    public static double AverageLogFactor()
    Returns
    Type Description
    Double

    Zero.

    Remarks

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

    AverageLogFactor(Boolean, Boolean, Boolean)

    Evidence message for VMP.

    Declaration
    public static double AverageLogFactor(bool or, bool a, bool b)
    Parameters
    Type Name Description
    Boolean or

    Constant value for or.

    Boolean a

    Constant value for a.

    Boolean b

    Constant value for b.

    Returns
    Type Description
    Double

    Zero.

    Remarks

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

    BAverageConditional(Bernoulli, Bernoulli)

    EP message to b.

    Declaration
    public static Bernoulli BAverageConditional(Bernoulli or, Bernoulli A)
    Parameters
    Type Name Description
    Bernoulli or

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

    Bernoulli A

    Incoming message from a.

    Returns
    Type Description
    Bernoulli

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

    Exceptions
    Type Condition
    ImproperMessageException

    or is not a proper distribution.

    BAverageConditional(Bernoulli, Boolean)

    EP message to b.

    Declaration
    public static Bernoulli BAverageConditional(Bernoulli or, bool A)
    Parameters
    Type Name Description
    Bernoulli or

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

    Boolean A

    Constant value for a.

    Returns
    Type Description
    Bernoulli

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

    Exceptions
    Type Condition
    ImproperMessageException

    or is not a proper distribution.

    BAverageConditional(Boolean, Bernoulli)

    EP message to b.

    Declaration
    public static Bernoulli BAverageConditional(bool or, Bernoulli A)
    Parameters
    Type Name Description
    Boolean or

    Constant value for or.

    Bernoulli A

    Incoming message from a.

    Returns
    Type Description
    Bernoulli

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

    BAverageConditional(Boolean, Boolean)

    EP message to b.

    Declaration
    public static Bernoulli BAverageConditional(bool or, bool A)
    Parameters
    Type Name Description
    Boolean or

    Constant value for or.

    Boolean A

    Constant value for a.

    Returns
    Type Description
    Bernoulli

    The outgoing EP message to the b argument.

    Remarks

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

    BAverageLogarithm(Bernoulli, Bernoulli)

    VMP message to b.

    Declaration
    public static Bernoulli BAverageLogarithm(Bernoulli or, Bernoulli A)
    Parameters
    Type Name Description
    Bernoulli or

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

    Bernoulli A

    Incoming message from a.

    Returns
    Type Description
    Bernoulli

    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, or is integrated out before taking the logarithm. The formula is exp(sum_(a) p(a) log(sum_or p(or) factor(or,a,b))).

    Exceptions
    Type Condition
    ImproperMessageException

    or is not a proper distribution.

    BAverageLogarithm(Bernoulli, Boolean)

    VMP message to b.

    Declaration
    public static Bernoulli BAverageLogarithm(Bernoulli or, bool A)
    Parameters
    Type Name Description
    Bernoulli or

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

    Boolean A

    Constant value for a.

    Returns
    Type Description
    Bernoulli

    The outgoing VMP message to the b argument.

    Remarks

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

    Exceptions
    Type Condition
    ImproperMessageException

    or is not a proper distribution.

    BAverageLogarithm(Boolean, Bernoulli)

    VMP message to b.

    Declaration
    public static Bernoulli BAverageLogarithm(bool or, Bernoulli A)
    Parameters
    Type Name Description
    Boolean or

    Constant value for or.

    Bernoulli A

    Incoming message from a.

    Returns
    Type Description
    Bernoulli

    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(or,a,b))).

    BAverageLogarithm(Boolean, Boolean)

    VMP message to b.

    Declaration
    public static Bernoulli BAverageLogarithm(bool or, bool A)
    Parameters
    Type Name Description
    Boolean or

    Constant value for or.

    Boolean A

    Constant value for a.

    Returns
    Type Description
    Bernoulli

    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.

    LogAverageFactor(Bernoulli, Bernoulli)

    Evidence message for EP.

    Declaration
    public static double LogAverageFactor(Bernoulli or, Bernoulli to_or)
    Parameters
    Type Name Description
    Bernoulli or

    Incoming message from or.

    Bernoulli to_or

    Outgoing message to or.

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

    LogAverageFactor(Bernoulli, Boolean, Boolean)

    Evidence message for EP.

    Declaration
    public static double LogAverageFactor(Bernoulli or, bool a, bool b)
    Parameters
    Type Name Description
    Bernoulli or

    Incoming message from or.

    Boolean a

    Constant value for a.

    Boolean b

    Constant value for 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_(or) p(or) factor(or,a,b)).

    LogAverageFactor(Boolean, Bernoulli, Bernoulli)

    Evidence message for EP.

    Declaration
    public static double LogAverageFactor(bool or, Bernoulli a, Bernoulli b)
    Parameters
    Type Name Description
    Boolean or

    Constant value for or.

    Bernoulli a

    Incoming message from a.

    Bernoulli 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(or,a,b)).

    LogAverageFactor(Boolean, Bernoulli, Boolean)

    Evidence message for EP.

    Declaration
    public static double LogAverageFactor(bool or, Bernoulli a, bool b)
    Parameters
    Type Name Description
    Boolean or

    Constant value for or.

    Bernoulli a

    Incoming message from a.

    Boolean b

    Constant value for 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) p(a) factor(or,a,b)).

    LogAverageFactor(Boolean, Boolean, Bernoulli)

    Evidence message for EP.

    Declaration
    public static double LogAverageFactor(bool or, bool a, Bernoulli b)
    Parameters
    Type Name Description
    Boolean or

    Constant value for or.

    Boolean a

    Constant value for a.

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

    LogAverageFactor(Boolean, Boolean, Boolean)

    Evidence message for EP.

    Declaration
    public static double LogAverageFactor(bool or, bool a, bool b)
    Parameters
    Type Name Description
    Boolean or

    Constant value for or.

    Boolean a

    Constant value for a.

    Boolean b

    Constant value for 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(factor(or,a,b)).

    LogEvidenceRatio(Bernoulli)

    Evidence message for EP.

    Declaration
    public static double LogEvidenceRatio(Bernoulli or)
    Parameters
    Type Name Description
    Bernoulli or

    Incoming message from or.

    Returns
    Type Description
    Double

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

    Remarks

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

    LogEvidenceRatio(Boolean, Bernoulli, Bernoulli)

    Evidence message for EP.

    Declaration
    public static double LogEvidenceRatio(bool or, Bernoulli a, Bernoulli b)
    Parameters
    Type Name Description
    Boolean or

    Constant value for or.

    Bernoulli a

    Incoming message from a.

    Bernoulli 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(or,a,b)). Adding up these values across all factors and variables gives the log-evidence estimate for EP.

    LogEvidenceRatio(Boolean, Bernoulli, Boolean)

    Evidence message for EP.

    Declaration
    public static double LogEvidenceRatio(bool or, Bernoulli a, bool b)
    Parameters
    Type Name Description
    Boolean or

    Constant value for or.

    Bernoulli a

    Incoming message from a.

    Boolean b

    Constant value for 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) p(a) factor(or,a,b)). Adding up these values across all factors and variables gives the log-evidence estimate for EP.

    LogEvidenceRatio(Boolean, Boolean, Bernoulli)

    Evidence message for EP.

    Declaration
    public static double LogEvidenceRatio(bool or, bool a, Bernoulli b)
    Parameters
    Type Name Description
    Boolean or

    Constant value for or.

    Boolean a

    Constant value for a.

    Bernoulli 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_(b) p(b) factor(or,a,b)). Adding up these values across all factors and variables gives the log-evidence estimate for EP.

    LogEvidenceRatio(Boolean, Boolean, Boolean)

    Evidence message for EP.

    Declaration
    public static double LogEvidenceRatio(bool or, bool a, bool b)
    Parameters
    Type Name Description
    Boolean or

    Constant value for or.

    Boolean a

    Constant value for a.

    Boolean b

    Constant value for b.

    Returns
    Type Description
    Double

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

    Remarks

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

    OrAverageConditional(Bernoulli, Bernoulli)

    EP message to or.

    Declaration
    public static Bernoulli OrAverageConditional(Bernoulli A, Bernoulli B)
    Parameters
    Type Name Description
    Bernoulli A

    Incoming message from a.

    Bernoulli B

    Incoming message from b.

    Returns
    Type Description
    Bernoulli

    The outgoing EP message to the or argument.

    Remarks

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

    OrAverageConditional(Bernoulli, Boolean)

    EP message to or.

    Declaration
    public static Bernoulli OrAverageConditional(Bernoulli A, bool B)
    Parameters
    Type Name Description
    Bernoulli A

    Incoming message from a.

    Boolean B

    Constant value for b.

    Returns
    Type Description
    Bernoulli

    The outgoing EP message to the or argument.

    Remarks

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

    OrAverageConditional(Boolean, Bernoulli)

    EP message to or.

    Declaration
    public static Bernoulli OrAverageConditional(bool A, Bernoulli B)
    Parameters
    Type Name Description
    Boolean A

    Constant value for a.

    Bernoulli B

    Incoming message from b.

    Returns
    Type Description
    Bernoulli

    The outgoing EP message to the or argument.

    Remarks

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

    OrAverageLogarithm(Bernoulli, Bernoulli)

    VMP message to or.

    Declaration
    public static Bernoulli OrAverageLogarithm(Bernoulli A, Bernoulli B)
    Parameters
    Type Name Description
    Bernoulli A

    Incoming message from a.

    Bernoulli B

    Incoming message from b.

    Returns
    Type Description
    Bernoulli

    The outgoing VMP message to the or argument.

    Remarks

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

    OrAverageLogarithm(Bernoulli, Boolean)

    VMP message to or.

    Declaration
    public static Bernoulli OrAverageLogarithm(Bernoulli A, bool B)
    Parameters
    Type Name Description
    Bernoulli A

    Incoming message from a.

    Boolean B

    Constant value for b.

    Returns
    Type Description
    Bernoulli

    The outgoing VMP message to the or argument.

    Remarks

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

    OrAverageLogarithm(Boolean, Bernoulli)

    VMP message to or.

    Declaration
    public static Bernoulli OrAverageLogarithm(bool A, Bernoulli B)
    Parameters
    Type Name Description
    Boolean A

    Constant value for a.

    Bernoulli B

    Incoming message from b.

    Returns
    Type Description
    Bernoulli

    The outgoing VMP message to the or argument.

    Remarks

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

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