Computes cumprod of x in logspace using cumsum to avoid underflow.
tf.contrib.seq2seq.safe_cumprod(
x, *args, **kwargs
)
The cumprod function and its gradient can result in numerical instabilities when its argument has very small and/or zero values. As long as the argument is all positive, we can instead compute the cumulative product as exp(cumsum(log(x))). This function can be called identically to tf.cumprod.
Args | |
---|---|
x
|
Tensor to take the cumulative product of. |
*args
|
Passed on to cumsum; these are identical to those in cumprod. |
**kwargs
|
Passed on to cumsum; these are identical to those in cumprod. |
Returns | |
---|---|
Cumulative product of x. |