jax.numpy.log1p#
- jax.numpy.log1p(x, /)[source]#
计算输入加一的元素级对数,
log(x+1)
。numpy.log1p
的 JAX 实现。- 参数:
x (ArrayLike) – 输入数组或标量。
- 返回值:
一个数组,包含
x
中每个元素加一的对数,提升到不精确的 dtype。- 返回类型:
注意
对于
x
的小值,jnp.log1p
比使用log(x+1)
的朴素计算更准确。参见
jax.numpy.expm1()
:计算输入每个元素的 \(e^x-1\)。jax.numpy.log2()
:计算输入每个元素的以 2 为底的对数。jax.numpy.log()
:计算输入的元素级对数。
示例
>>> x = jnp.array([2, 5, 9, 4]) >>> jnp.allclose(jnp.log1p(x), jnp.log(x+1)) Array(True, dtype=bool)
对于非常接近 0 的值,
jnp.log1p(x)
比jnp.log(x+1)
更准确。>>> x1 = jnp.array([1e-4, 1e-6, 2e-10]) >>> jnp.expm1(jnp.log1p(x1)) Array([1.00000005e-04, 9.99999997e-07, 2.00000003e-10], dtype=float32) >>> jnp.expm1(jnp.log(x1+1)) Array([1.000166e-04, 9.536743e-07, 0.000000e+00], dtype=float32)