Class LogOp_VMP
Provides outgoing messages for Log(Double), given random arguments to the function.
Inherited Members
Namespace: Microsoft.ML.Probabilistic.Factors
Assembly: Microsoft.ML.Probabilistic.dll
Syntax
[FactorMethod(typeof(Math), "Log", new Type[]{typeof(double)})]
[Quality(QualityBand.Preview)]
public class LogOp_VMP
Fields
damping
Determines the amount of damping to use on the VMP updates for D.
Declaration
public static double damping
Field Value
| Type | Description |
|---|---|
| Double |
Methods
AverageLogFactor()
Evidence message for VMP.
Declaration
public static double AverageLogFactor()
Returns
| Type | Description |
|---|---|
| Double | Zero. |
Remarks
The formula for the result is log(factor(log,d)). Adding up these values across all factors and variables gives the log-evidence estimate for VMP.
DAverageLogarithm(Gaussian, Gamma, Gamma)
VMP message to d.
Declaration
public static Gamma DAverageLogarithm(Gaussian log, Gamma d, Gamma to_D)
Parameters
| Type | Name | Description |
|---|---|---|
| Gaussian | log | Incoming message from |
| Gamma | d | Incoming message from |
| Gamma | to_D | Previous outgoing message to |
Returns
| Type | Description |
|---|---|
| Gamma | The outgoing VMP message to the |
Remarks
The outgoing message is the factor viewed as a function of d with log integrated out. The formula is sum_log p(log) factor(log,d).
Exceptions
| Type | Condition |
|---|---|
| ImproperMessageException |
|
| ImproperMessageException |
|
DAverageLogarithm(Double)
VMP message to d.
Declaration
[NotSupported("VMP cannot support deterministic factors such as Log with fixed outputs")]
public static Gaussian DAverageLogarithm(double log)
Parameters
| Type | Name | Description |
|---|---|---|
| Double | log | Constant value for |
Returns
| Type | Description |
|---|---|
| Gaussian | The outgoing VMP message to the |
Remarks
The outgoing message is the factor viewed as a function of d conditioned on the given values.
DAverageLogarithm(Double, Gamma, Gamma)
VMP message to d.
Declaration
public static Gamma DAverageLogarithm(double log, Gamma d, Gamma result)
Parameters
| Type | Name | Description |
|---|---|---|
| Double | log | Constant value for |
| Gamma | d | Incoming message from |
| Gamma | result | Modified to contain the outgoing message. |
Returns
| Type | Description |
|---|---|
| Gamma |
|
Remarks
The outgoing message is the factor viewed as a function of d conditioned on the given values.
LogAverageLogarithm(Gaussian, Gamma, Gaussian)
VMP message to log.
Declaration
public static Gaussian LogAverageLogarithm(Gaussian log, Gamma d, Gaussian result)
Parameters
| Type | Name | Description |
|---|---|---|
| Gaussian | log | Incoming message from |
| Gamma | d | Incoming message from |
| Gaussian | result | Modified to contain the outgoing message. |
Returns
| Type | Description |
|---|---|
| Gaussian |
|
Remarks
The outgoing message is a distribution matching the moments of log as the random arguments are varied. The formula is proj[sum_(d) p(d) factor(log,d)].
Exceptions
| Type | Condition |
|---|---|
| ImproperMessageException |
|
LogAverageLogarithm(Gaussian, Double, Gaussian)
VMP message to log.
Declaration
public static Gaussian LogAverageLogarithm(Gaussian log, double d, Gaussian result)
Parameters
| Type | Name | Description |
|---|---|---|
| Gaussian | log | Incoming message from |
| Double | d | Constant value for |
| Gaussian | result | Modified to contain the outgoing message. |
Returns
| Type | Description |
|---|---|
| Gaussian |
|
Remarks
The outgoing message is the factor viewed as a function of log conditioned on the given values.
LogAverageLogarithm(Double)
VMP message to log.
Declaration
public static Gamma LogAverageLogarithm(double d)
Parameters
| Type | Name | Description |
|---|---|---|
| Double | d | Constant value for |
Returns
| Type | Description |
|---|---|
| Gamma | The outgoing VMP message to the |
Remarks
The outgoing message is the factor viewed as a function of log conditioned on the given values.