tf.math.lbeta  |  TensorFlow v2.16.1 (original) (raw)

tf.math.lbeta

Stay organized with collections Save and categorize content based on your preferences.

Computes \(ln(|Beta(x)|)\), reducing along the last dimension.

View aliases

Compat aliases for migration

SeeMigration guide for more details.

tf.compat.v1.lbeta, tf.compat.v1.math.lbeta

tf.math.lbeta(
    x, name=None
)

Given one-dimensional \(z = [z_1,...,z_K]\), we define

\[Beta(z) = \frac{\prod_j \Gamma(z_j)}{\Gamma(\sum_j z_j)},\]

where \(\Gamma\) is the gamma function.

And for \(n + 1\) dimensional \(x\) with shape \([N_1, ..., N_n, K]\), we define

\[lbeta(x)[i_1, ..., i_n] = \log{|Beta(x[i_1, ..., i_n, :])|}.\]

In other words, the last dimension is treated as the \(z\) vector.

Note that if \(z = [u, v]\), then

\[Beta(z) = \frac{\Gamma(u)\Gamma(v)}{\Gamma(u + v)} = \int_0^1 t^{u-1} (1 - t)^{v-1} \mathrm{d}t,\]

which defines the traditional bivariate beta function.

If the last dimension is empty, we follow the convention that the sum over the empty set is zero, and the product is one.

Args
x A rank n + 1 Tensor, n >= 0 with type float, or double.
name A name for the operation (optional).
Returns
The logarithm of \(|Beta(x)