快捷方式

torch.tril_indices

torch.tril_indices(row, col, offset=0, *, dtype=torch.long, device='cpu', layout=torch.strided) Tensor

返回一個 2xN 的 Tensor,其中包含 rowcol 列矩陣的下三角部分的索引。該 2xN Tensor 的第一行包含所有索引的行座標,第二行包含列座標。索引按行然後按列排序。

矩陣的下三角部分定義為對角線上的元素以及對角線下方的元素。

引數 offset 控制考慮哪條對角線。如果 offset = 0,則保留主對角線上的所有元素以及下方的元素。正值會包含主對角線上方同樣數量的對角線,而負值會排除主對角線下方同樣數量的對角線。主對角線是索引集合 {(i,i)}\lbrace (i, i) \rbrace ,其中 i[0,{d1,d2}1]i \in [0, \min\{d_{1}, d_{2}\} - 1] 是矩陣的維度。

注意

在 CUDA 上執行時,row * col 必須小於 2592^{59} 以防止計算過程中溢位。

引數
  • row (int) – 2-D 矩陣的行數。

  • col (int) – 2-D 矩陣的列數。

  • offset (int) – 距離主對角線的對角線偏移量。預設值:如果未提供,則為 0。

關鍵字引數
  • dtype (torch.dtype, 可選) – 返回張量的所需資料型別。預設值:如果為 None,則為 torch.long

  • device (torch.device, 可選) – 返回張量的所需裝置。預設值:如果為 None,則使用預設張量型別的當前裝置(參見 torch.set_default_device())。device 對於 CPU 張量型別將是 CPU,對於 CUDA 張量型別將是當前 CUDA 裝置。

  • layout (torch.layout, 可選) – 目前僅支援 torch.strided

示例

>>> a = torch.tril_indices(3, 3)
>>> a
tensor([[0, 1, 1, 2, 2, 2],
        [0, 0, 1, 0, 1, 2]])

>>> a = torch.tril_indices(4, 3, -1)
>>> a
tensor([[1, 2, 2, 3, 3, 3],
        [0, 0, 1, 0, 1, 2]])

>>> a = torch.tril_indices(4, 3, 1)
>>> a
tensor([[0, 0, 1, 1, 1, 2, 2, 2, 3, 3, 3],
        [0, 1, 0, 1, 2, 0, 1, 2, 0, 1, 2]])

文件

訪問 PyTorch 全面的開發者文件

檢視文件

教程

獲取針對初學者和高階開發者的深入教程

檢視教程

資源

查詢開發資源並獲得問題解答

檢視資源