Compute the cumulative product of the tensor x
along axis
.
tf.raw_ops.Cumprod(
x, axis, exclusive=False, reverse=False, name=None
)
By default, this op performs an inclusive cumprod, which means that the first element of the input is identical to the first element of the output:
tf.cumprod([a, b, c]) # => [a, a * b, a * b * c]
By setting the exclusive
kwarg to True
, an exclusive cumprod is
performed instead:
tf.cumprod([a, b, c], exclusive=True) # => [1, a, a * b]
By setting the reverse
kwarg to True
, the cumprod is performed in the
opposite direction:
tf.cumprod([a, b, c], reverse=True) # => [a * b * c, b * c, c]
This is more efficient than using separate tf.reverse
ops.
The reverse
and exclusive
kwargs can also be combined:
tf.cumprod([a, b, c], exclusive=True, reverse=True) # => [b * c, c, 1]
Args | |
---|---|
x
|
A Tensor . Must be one of the following types: float32 , float64 , int32 , uint8 , int16 , int8 , complex64 , int64 , qint8 , quint8 , qint32 , bfloat16 , uint16 , complex128 , half , uint32 , uint64 .
A Tensor . Must be one of the following types: float32 , float64 ,
int64 , int32 , uint8 , uint16 , int16 , int8 , complex64 ,
complex128 , qint8 , quint8 , qint32 , half .
|
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 cumprod.
|
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 .
|