tril_indices

paddle. tril_indices ( row, col, offset=0, dtype='int64' ) [源代码]

返回行数和列数已知的二维矩阵中下三角矩阵元素的行列坐标,其中下三角矩阵为原始矩阵某一对角线左下部分元素的子矩阵。

参数

  • row (int) - 输入矩阵的行数。

  • col (int) - 输入矩阵的列数。

  • offset (int,可选) - 确定从指定二维平面中获取对角线的位置。

    • 如果 offset = 0,取主对角线。

    • 如果 offset > 0,取主对角线右上的对角线。

    • 如果 offset < 0,取主对角线左下的对角线。

  • dtype (int,可选) - 指定输出 Tensor 的数据类型,默认值为 int64。

返回

Tensor,二维矩阵的下三角矩阵行坐标和列坐标。数据类型和参数 dtype 一致。

代码示例

>>> import paddle

>>> # example 1, default offset value
>>> data1 = paddle.tril_indices(4,4,0)
>>> print(data1)
Tensor(shape=[2, 10], dtype=int64, place=Place(cpu), stop_gradient=True,
[[0, 1, 1, 2, 2, 2, 3, 3, 3, 3],
 [0, 0, 1, 0, 1, 2, 0, 1, 2, 3]])

>>> # example 2, positive offset value
>>> data2 = paddle.tril_indices(4,4,2)
>>> print(data2)
Tensor(shape=[2, 15], dtype=int64, place=Place(cpu), stop_gradient=True,
[[0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3],
 [0, 1, 2, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3]])

>>> # example 3, negative offset value
>>> data3 = paddle.tril_indices(4,4,-1)
>>> print(data3)
Tensor(shape=[2, 6], dtype=int64, place=Place(cpu), stop_gradient=True,
[[1, 2, 2, 3, 3, 3],
 [0, 0, 1, 0, 1, 2]])

使用本API的教程文档