计算 log(sum(exp(跨张量维度的元素)))。
用法
tf.math.reduce_logsumexp(
input_tensor, axis=None, keepdims=False, name=None
)
参数
-
input_tensor
要减少的张量。应该是数字类型。 -
axis
要减小的尺寸。如果None
(默认),减少所有维度。必须在[-rank(input_tensor), rank(input_tensor))
范围内。 -
keepdims
如果为真,则保留长度为 1 的缩减维度。 -
name
操作的名称(可选)。
返回
- 减少的张量。
沿 axis
中给定的尺寸减少 input_tensor
。除非 keepdims
为真,否则对于 axis
中的每个条目,张量的秩都会减少 1,这必须是唯一的。如果 keepdims
为真,则保留缩减后的维度,长度为 1。
如果axis
没有条目,则减少所有维度,并返回具有单个元素的张量。
这个函数比 log(sum(exp(input))) 在数值上更稳定。它避免了由于取大输入的 exp 导致的溢出和取小输入的 log 导致的下溢。
例如:
x = tf.constant([[0., 0., 0.], [0., 0., 0.]])
tf.reduce_logsumexp(x) # log(6)
tf.reduce_logsumexp(x, 0) # [log(2), log(2), log(2)]
tf.reduce_logsumexp(x, 1) # [log(3), log(3)]
tf.reduce_logsumexp(x, 1, keepdims=True) # [[log(3)], [log(3)]]
tf.reduce_logsumexp(x, [0, 1]) # log(6)
相关用法
- Python tf.math.reduce_max用法及代码示例
- Python tf.math.reduce_min用法及代码示例
- Python tf.math.reduce_std用法及代码示例
- Python tf.math.reduce_mean用法及代码示例
- Python tf.math.reduce_all用法及代码示例
- Python tf.math.reduce_euclidean_norm用法及代码示例
- Python tf.math.reduce_sum用法及代码示例
- Python tf.math.reduce_variance用法及代码示例
- Python tf.math.reduce_any用法及代码示例
- Python tf.math.reduce_prod用法及代码示例
- Python tf.math.real用法及代码示例
- Python tf.math.reciprocal_no_nan用法及代码示例
- Python tf.math.rsqrt用法及代码示例
- Python tf.math.rint用法及代码示例
- Python tf.math.round用法及代码示例
- Python tf.math.special.fresnel_cos用法及代码示例
- Python tf.math.polyval用法及代码示例
- Python tf.math.is_finite用法及代码示例
- Python tf.math.special.bessel_k0e用法及代码示例
- Python tf.math.acosh用法及代码示例
注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.math.reduce_logsumexp。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。