tf.raw_ops.CumulativeLogsumexp

Compute the cumulative product of the tensor x along axis.

tf.raw_ops.CumulativeLogsumexp(
    x, axis, exclusive=False, reverse=False, name=None
)

By default, this op performs an inclusive cumulative log-sum-exp, which means that the first element of the input is identical to the first element of the output:

tf.math.cumulative_logsumexp([a, b, c])  # => [a, log(exp(a) + exp(b)), log(exp(a) + exp(b) + exp(c))]

By setting the exclusive kwarg to True, an exclusive cumulative log-sum-exp is performed instead:

tf.cumulative_logsumexp([a, b, c], exclusive=True)  # => [-inf, a, log(exp(a) * exp(b))]

Note that the neutral element of the log-sum-exp operation is -inf, however, for performance reasons, the minimal value representable by the floating point type is used instead.

By setting the reverse kwarg to True, the cumulative log-sum-exp is performed in the opposite direction.

Args:

  • x: A Tensor. Must be one of the following types: half, float32, float64. A Tensor. Must be one of the following types: float16, float32, float64.
  • axis: A Tensor. Must be one of the following types: int32, int64. A Tensor of type int32 (default: 0). Must be in the range [-rank(x), rank(x)).
  • exclusive: An optional bool. Defaults to False. If True, perform exclusive cumulative log-sum-exp.
  • reverse: An optional bool. Defaults to False. A bool (default: False).
  • name: A name for the operation (optional).

Returns:

A Tensor. Has the same type as x.