jax.numpy.triu_indices#

jax.numpy.triu_indices(n, k=0, m=None)[源代码]#

返回大小为 (n, m) 的数组的上三角的索引。

JAX 实现的 numpy.triu_indices()

参数:
  • n (int) – int。返回索引的数组的行数。

  • k (int) – 可选,int,默认值为 0。指定返回上三角索引的子对角线及其上方的位置。k=0 指的是主对角线,k<0 指的是主对角线下方的子对角线,而 k>0 指的是主对角线上方的子对角线。

  • m (int | None | None) – 可选,int。返回索引的数组的列数。如果未指定,则 m = n

返回值:

一个包含上三角索引的两个数组的元组,每个轴一个。

返回类型:

tuple[Array, Array]

参见

示例

如果仅在输入中提供 n,则返回大小为 (n, n) 的数组的上三角索引。

>>> jnp.triu_indices(3)
(Array([0, 0, 0, 1, 1, 2], dtype=int32), Array([0, 1, 2, 1, 2, 2], dtype=int32))

如果在输入中同时提供了 nm,则返回 (n, m) 数组的上三角索引。

>>> jnp.triu_indices(3, m=2)
(Array([0, 0, 1], dtype=int32), Array([0, 1, 1], dtype=int32))

如果 k = 1,则返回主对角线上方第一个子对角线及其之上的索引。

>>> jnp.triu_indices(3, k=1)
(Array([0, 0, 1], dtype=int32), Array([1, 2, 2], dtype=int32))

如果 k = -1,则返回主对角线下方第一个子对角线及其之上的索引。

>>> jnp.triu_indices(3, k=-1)
(Array([0, 0, 0, 1, 1, 1, 2, 2], dtype=int32), Array([0, 1, 2, 0, 1, 2, 1, 2], dtype=int32))