Class GammaProductOp
Provides outgoing messages for Product(Double, Double), given random arguments to the function.
Inherited Members
Namespace: Microsoft.ML.Probabilistic.Factors
Assembly: Microsoft.ML.Probabilistic.dll
Syntax
[FactorMethod(typeof(Factor), "Product", new Type[]{typeof(double), typeof(double)})]
[Quality(QualityBand.Preview)]
public static class GammaProductOp
Methods
AAverageConditional(Gamma, Double)
EP message to a
.
Declaration
public static Gamma AAverageConditional(Gamma Product, double B)
Parameters
Type | Name | Description |
---|---|---|
Gamma | Product | Incoming message from |
Double | B | Constant value for |
Returns
Type | Description |
---|---|
Gamma | The outgoing EP message to the |
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) p(product) factor(product,a,b)]/p(a)
.
Exceptions
Type | Condition |
---|---|
ImproperMessageException |
|
AAverageConditional(GammaPower, Double, GammaPower)
EP message to a
.
Declaration
public static GammaPower AAverageConditional(GammaPower Product, double B, GammaPower result)
Parameters
Type | Name | Description |
---|---|---|
GammaPower | Product | Incoming message from |
Double | B | Constant value for |
GammaPower | result | Modified to contain the outgoing message. |
Returns
Type | Description |
---|---|
GammaPower |
|
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) p(product) factor(product,a,b)]/p(a)
.
Exceptions
Type | Condition |
---|---|
ImproperMessageException |
|
AAverageConditional(Double, Gamma)
EP message to a
.
Declaration
public static GammaPower AAverageConditional(double product, Gamma B)
Parameters
Type | Name | Description |
---|---|---|
Double | product | Constant value for |
Gamma | B | Incoming message from |
Returns
Type | Description |
---|---|
GammaPower | The outgoing EP message to the |
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(product,a,b)]/p(a)
.
AAverageConditional(Double, Double)
EP message to a
.
Declaration
public static Gamma AAverageConditional(double Product, double B)
Parameters
Type | Name | Description |
---|---|---|
Double | Product | Constant value for |
Double | B | Constant value for |
Returns
Type | Description |
---|---|
Gamma | The outgoing EP message to the |
Remarks
The outgoing message is the factor viewed as a function of a
conditioned on the given values.
AAverageConditional(Double, Double, GammaPower)
EP message to a
.
Declaration
public static GammaPower AAverageConditional(double Product, double B, GammaPower result)
Parameters
Type | Name | Description |
---|---|---|
Double | Product | Constant value for |
Double | B | Constant value for |
GammaPower | result | Modified to contain the outgoing message. |
Returns
Type | Description |
---|---|
GammaPower |
|
Remarks
The outgoing message is the factor viewed as a function of a
conditioned on the given values.
BAverageConditional(Gamma, Double)
EP message to b
.
Declaration
public static Gamma BAverageConditional(Gamma Product, double A)
Parameters
Type | Name | Description |
---|---|---|
Gamma | Product | Incoming message from |
Double | A | Constant value for |
Returns
Type | Description |
---|---|
Gamma | The outgoing EP message to the |
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) p(product) factor(product,a,b)]/p(b)
.
Exceptions
Type | Condition |
---|---|
ImproperMessageException |
|
BAverageConditional(GammaPower, Double, GammaPower)
EP message to b
.
Declaration
public static GammaPower BAverageConditional(GammaPower Product, double A, GammaPower result)
Parameters
Type | Name | Description |
---|---|---|
GammaPower | Product | Incoming message from |
Double | A | Constant value for |
GammaPower | result | Modified to contain the outgoing message. |
Returns
Type | Description |
---|---|
GammaPower |
|
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) p(product) factor(product,a,b)]/p(b)
.
Exceptions
Type | Condition |
---|---|
ImproperMessageException |
|
BAverageConditional(Double, Gamma)
EP message to b
.
Declaration
public static GammaPower BAverageConditional(double product, Gamma A)
Parameters
Type | Name | Description |
---|---|---|
Double | product | Constant value for |
Gamma | A | Incoming message from |
Returns
Type | Description |
---|---|
GammaPower | The outgoing EP message to the |
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(product,a,b)]/p(b)
.
BAverageConditional(Double, Double)
EP message to b
.
Declaration
public static Gamma BAverageConditional(double Product, double A)
Parameters
Type | Name | Description |
---|---|---|
Double | Product | Constant value for |
Double | A | Constant value for |
Returns
Type | Description |
---|---|
Gamma | The outgoing EP message to the |
Remarks
The outgoing message is the factor viewed as a function of b
conditioned on the given values.
BAverageConditional(Double, Double, GammaPower)
EP message to b
.
Declaration
public static GammaPower BAverageConditional(double Product, double A, GammaPower result)
Parameters
Type | Name | Description |
---|---|---|
Double | Product | Constant value for |
Double | A | Constant value for |
GammaPower | result | Modified to contain the outgoing message. |
Returns
Type | Description |
---|---|
GammaPower |
|
Remarks
The outgoing message is the factor viewed as a function of b
conditioned on the given values.
LogAverageFactor(Gamma, Gamma, Double)
Evidence message for EP.
Declaration
public static double LogAverageFactor(Gamma product, Gamma a, double b)
Parameters
Type | Name | Description |
---|---|---|
Gamma | product | Incoming message from |
Gamma | a | Incoming message from |
Double | b | Constant value for |
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) p(product,a) factor(product,a,b))
.
LogAverageFactor(Gamma, Double, Gamma)
Evidence message for EP.
Declaration
public static double LogAverageFactor(Gamma product, double a, Gamma b)
Parameters
Type | Name | Description |
---|---|---|
Gamma | product | Incoming message from |
Double | a | Constant value for |
Gamma | b | Incoming message from |
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,b) p(product,b) factor(product,a,b))
.
LogAverageFactor(GammaPower, GammaPower, Double)
Evidence message for EP.
Declaration
public static double LogAverageFactor(GammaPower product, GammaPower a, double b)
Parameters
Type | Name | Description |
---|---|---|
GammaPower | product | Incoming message from |
GammaPower | a | Incoming message from |
Double | b | Constant value for |
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) p(product,a) factor(product,a,b))
.
LogAverageFactor(GammaPower, Double, GammaPower)
Evidence message for EP.
Declaration
public static double LogAverageFactor(GammaPower product, double a, GammaPower b)
Parameters
Type | Name | Description |
---|---|---|
GammaPower | product | Incoming message from |
Double | a | Constant value for |
GammaPower | b | Incoming message from |
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,b) p(product,b) factor(product,a,b))
.
LogAverageFactor(Double, Gamma, Double)
Evidence message for EP.
Declaration
public static double LogAverageFactor(double product, Gamma a, double b)
Parameters
Type | Name | Description |
---|---|---|
Double | product | Constant value for |
Gamma | a | Incoming message from |
Double | b | Constant value for |
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(product,a,b))
.
LogAverageFactor(Double, GammaPower, Double)
Evidence message for EP.
Declaration
public static double LogAverageFactor(double product, GammaPower a, double b)
Parameters
Type | Name | Description |
---|---|---|
Double | product | Constant value for |
GammaPower | a | Incoming message from |
Double | b | Constant value for |
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(product,a,b))
.
LogAverageFactor(Double, Double, Gamma)
Evidence message for EP.
Declaration
public static double LogAverageFactor(double product, double a, Gamma b)
Parameters
Type | Name | Description |
---|---|---|
Double | product | Constant value for |
Double | a | Constant value for |
Gamma | b | Incoming message from |
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(product,a,b))
.
LogAverageFactor(Double, Double, GammaPower)
Evidence message for EP.
Declaration
public static double LogAverageFactor(double product, double a, GammaPower b)
Parameters
Type | Name | Description |
---|---|---|
Double | product | Constant value for |
Double | a | Constant value for |
GammaPower | b | Incoming message from |
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(product,a,b))
.
LogEvidenceRatio(Gamma, Gamma, Double)
Evidence message for EP.
Declaration
public static double LogEvidenceRatio(Gamma product, Gamma a, double b)
Parameters
Type | Name | Description |
---|---|---|
Gamma | product | Incoming message from |
Gamma | a | Incoming message from |
Double | b | Constant value for |
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) p(product,a) 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.
LogEvidenceRatio(Gamma, Double, Gamma)
Evidence message for EP.
Declaration
public static double LogEvidenceRatio(Gamma product, double a, Gamma b)
Parameters
Type | Name | Description |
---|---|---|
Gamma | product | Incoming message from |
Double | a | Constant value for |
Gamma | b | Incoming message from |
Returns
Type | Description |
---|---|
Double | Logarithm of the factor's contribution the EP model evidence. |
Remarks
The formula for the result is log(sum_(product,b) p(product,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.
LogEvidenceRatio(GammaPower, GammaPower, Double)
Evidence message for EP.
Declaration
public static double LogEvidenceRatio(GammaPower product, GammaPower a, double b)
Parameters
Type | Name | Description |
---|---|---|
GammaPower | product | Incoming message from |
GammaPower | a | Incoming message from |
Double | b | Constant value for |
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) p(product,a) 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.
LogEvidenceRatio(GammaPower, Double, GammaPower)
Evidence message for EP.
Declaration
public static double LogEvidenceRatio(GammaPower product, double a, GammaPower b)
Parameters
Type | Name | Description |
---|---|---|
GammaPower | product | Incoming message from |
Double | a | Constant value for |
GammaPower | b | Incoming message from |
Returns
Type | Description |
---|---|
Double | Logarithm of the factor's contribution the EP model evidence. |
Remarks
The formula for the result is log(sum_(product,b) p(product,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.
LogEvidenceRatio(Double, Gamma, Double)
Evidence message for EP.
Declaration
public static double LogEvidenceRatio(double product, Gamma a, double b)
Parameters
Type | Name | Description |
---|---|---|
Double | product | Constant value for |
Gamma | a | Incoming message from |
Double | b | Constant value for |
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(product,a,b))
. Adding up these values across all factors and variables gives the log-evidence estimate for EP.
LogEvidenceRatio(Double, GammaPower, Double)
Evidence message for EP.
Declaration
public static double LogEvidenceRatio(double product, GammaPower a, double b)
Parameters
Type | Name | Description |
---|---|---|
Double | product | Constant value for |
GammaPower | a | Incoming message from |
Double | b | Constant value for |
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(product,a,b))
. Adding up these values across all factors and variables gives the log-evidence estimate for EP.
LogEvidenceRatio(Double, Double, Gamma)
Evidence message for EP.
Declaration
public static double LogEvidenceRatio(double product, double a, Gamma b)
Parameters
Type | Name | Description |
---|---|---|
Double | product | Constant value for |
Double | a | Constant value for |
Gamma | b | Incoming message from |
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(product,a,b))
. Adding up these values across all factors and variables gives the log-evidence estimate for EP.
LogEvidenceRatio(Double, Double, GammaPower)
Evidence message for EP.
Declaration
public static double LogEvidenceRatio(double product, double a, GammaPower b)
Parameters
Type | Name | Description |
---|---|---|
Double | product | Constant value for |
Double | a | Constant value for |
GammaPower | b | Incoming message from |
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(product,a,b))
. Adding up these values across all factors and variables gives the log-evidence estimate for EP.
ProductAverageConditional(Gamma, Double)
EP message to product
.
Declaration
public static Gamma ProductAverageConditional(Gamma A, double B)
Parameters
Type | Name | Description |
---|---|---|
Gamma | A | Incoming message from |
Double | B | Constant value for |
Returns
Type | Description |
---|---|
Gamma | The outgoing EP message to the |
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) p(a) factor(product,a,b)]/p(product)
.
Exceptions
Type | Condition |
---|---|
ImproperMessageException |
|
ProductAverageConditional(GammaPower, Double)
EP message to product
.
Declaration
public static GammaPower ProductAverageConditional(GammaPower A, double B)
Parameters
Type | Name | Description |
---|---|---|
GammaPower | A | Incoming message from |
Double | B | Constant value for |
Returns
Type | Description |
---|---|
GammaPower | The outgoing EP message to the |
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) p(a) factor(product,a,b)]/p(product)
.
Exceptions
Type | Condition |
---|---|
ImproperMessageException |
|
ProductAverageConditional(Double, Gamma)
EP message to product
.
Declaration
public static Gamma ProductAverageConditional(double A, Gamma B)
Parameters
Type | Name | Description |
---|---|---|
Double | A | Constant value for |
Gamma | B | Incoming message from |
Returns
Type | Description |
---|---|
Gamma | The outgoing EP message to the |
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_(b) p(b) factor(product,a,b)]/p(product)
.
Exceptions
Type | Condition |
---|---|
ImproperMessageException |
|
ProductAverageConditional(Double, GammaPower)
EP message to product
.
Declaration
public static GammaPower ProductAverageConditional(double A, GammaPower B)
Parameters
Type | Name | Description |
---|---|---|
Double | A | Constant value for |
GammaPower | B | Incoming message from |
Returns
Type | Description |
---|---|
GammaPower | The outgoing EP message to the |
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_(b) p(b) factor(product,a,b)]/p(product)
.
Exceptions
Type | Condition |
---|---|
ImproperMessageException |
|
ProductAverageConditional(Double, Double)
EP message to product
.
Declaration
public static Gamma ProductAverageConditional(double a, double b)
Parameters
Type | Name | Description |
---|---|---|
Double | a | Constant value for |
Double | b | Constant value for |
Returns
Type | Description |
---|---|
Gamma | The outgoing EP message to the |
Remarks
The outgoing message is the factor viewed as a function of product
conditioned on the given values.