jax.numpy.tril#

jax.numpy.tril(m, k=0)[source]#

返回数组的下三角部分。

JAX 对 numpy.tril() 的实现

参数:
  • m (ArrayLike) – 输入数组。必须有 m.ndim >= 2

  • k (int) – k:可选,整数,默认值为 0。指定子对角线,高于该子对角线的数组元素将设置为零。k=0 指的是主对角线,k<0 指的是主对角线以下的子对角线,而 k>0 指的是主对角线以上的子对角线。

返回:

一个与输入形状相同的数组,包含给定数组的下三角部分,其中高于 k 指定的子对角线的元素设置为零。

返回类型:

数组

另请参阅

示例

>>> x = jnp.array([[1, 2, 3, 4],
...                [5, 6, 7, 8],
...                [9, 10, 11, 12]])
>>> jnp.tril(x)
Array([[ 1,  0,  0,  0],
       [ 5,  6,  0,  0],
       [ 9, 10, 11,  0]], dtype=int32)
>>> jnp.tril(x, k=1)
Array([[ 1,  2,  0,  0],
       [ 5,  6,  7,  0],
       [ 9, 10, 11, 12]], dtype=int32)
>>> jnp.tril(x, k=-1)
Array([[ 0,  0,  0,  0],
       [ 5,  0,  0,  0],
       [ 9, 10,  0,  0]], dtype=int32)

m.ndim > 2 时,jnp.tril 在尾轴上按批次操作。

>>> x1 = jnp.array([[[1, 2],
...                  [3, 4]],
...                 [[5, 6],
...                  [7, 8]]])
>>> jnp.tril(x1)
Array([[[1, 0],
        [3, 4]],

       [[5, 0],
        [7, 8]]], dtype=int32)