mindspore.ops.logsumexp
- mindspore.ops.logsumexp(input, axis, keep_dims=False)[源代码]
求Tensor的对数指数和。
\[logsumexp(input) = \log(\sum(e^{input-input_{max}})) + input_{max}\]- 参数:
input (Tensor) - 任意维度的输入Tensor。数据类型为float16或float32。
axis (Union[int, tuple(int), list(int)]) - 需要归约的维度,输入为
()
时归约所有维度。keep_dims (bool) - 是否保留归约的维度。若设为
True
,则计算后指定的axis的长度为1,否则不保留该维度。默认值:False
。
- 返回:
Tensor,具有与 input 相同的数据类型。
若axis为(),且 keep_dims 设为False,则输出为零维Tensor。
若axis为int类型,假设为2,且 keep_dims 设为False,则输出的shape为 \((input_1, input_3, ..., input_R)\) 。
若axis为tuple(int),假设为(2, 3),且 keep_dims 为False,则输出shape为 \((input_1, input_4, ..., input_R)\) 。
- 支持平台:
Ascend
GPU
CPU
样例:
>>> import numpy as np >>> from mindspore import Tensor, ops >>> x = Tensor(np.random.randn(3, 4, 5, 6).astype(np.float32)) >>> output = ops.logsumexp(x, 1, keep_dims=True) >>> print(output.shape) (3, 1, 5, 6)