tf.contrib.bayesflow.variational_inference.elbo_with_log_joint(log_joint, variational=None, keep_batch_dim=True, form=None, name='ELBO')
Evidence Lower BOund. log p(x) >= ELBO
.
This method is for models that have computed p(x,Z)
instead of p(x|Z)
. See elbo
for further details.
Because only the joint is specified, analytic KL is not available.
Args:
-
log_joint
:Tensor
log p(x, Z). -
variational
: list ofDistributionTensor
q(Z). IfNone
, defaults to allDistributionTensor
objects upstream oflog_joint
. -
keep_batch_dim
: bool. Whether to keep the batch dimension when summing entropy term. When the sample is per data point, this should be True; otherwise (e.g. in a Bayesian NN), this should be False. -
form
: ELBOForms constant. Controls how the ELBO is computed. Defaults to ELBOForms.default. -
name
: name to prefix ops with.
Returns:
Tensor
ELBO of the same type and shape as log_joint
.
Raises:
-
TypeError
: if variationals invariational
are notDistributionTensor
s. -
TypeError
: if form is not a valid ELBOForms constant. -
ValueError
: ifvariational
is None and there are noDistributionTensor
s upstream oflog_joint
. -
ValueError
: if form is ELBOForms.analytic_kl.
Please login to continue.