jax.nn.logsumexp#

jax.nn.logsumexp(a: ArrayLike, axis: Axis = None, b: ArrayLike | None = None, keepdims: bool = False, return_sign: Literal[False] = False, where: ArrayLike | None = None) Array[源代码]#
jax.nn.logsumexp(a: ArrayLike, axis: Axis = None, b: ArrayLike | None = None, keepdims: bool = False, *, return_sign: Literal[True], where: ArrayLike | None = None) tuple[Array, Array]
jax.nn.logsumexp(a: ArrayLike, axis: Axis = None, b: ArrayLike | None = None, keepdims: bool = False, return_sign: bool = False, where: ArrayLike | None = None) Array | tuple[Array, Array]

对数和指数缩减。

scipy.special.logsumexp() 的 JAX 实现。

\[\operatorname{logsumexp} a = \log \sum_i b_i \exp a_i\]

其中 \(i\) 索引范围涵盖要缩减的一个或多个维度。

参数:
  • a – 输入数组

  • axis – int 或 int 序列,默认=None。计算总和的轴。如果为 None,则沿所有轴计算总和。

  • b – 指数的缩放因子。必须可广播到 a 的形状。

  • keepdims – 如果 True,则缩减的轴将作为大小为 1 的维度保留在输出中。

  • return_sign – 如果 True,则输出将是一个 (result, sign) 对,其中 sign 是总和的符号,result 包含其绝对值的对数。如果 False,则仅返回 result,如果总和为负数,它将包含 NaN 值。

  • where – 要包含在缩减中的元素。

返回:

一个数组 result 或一对数组 (result, sign),具体取决于 return_sign 参数的值。