快捷方式

torch.tril

torch.tril(input, diagonal=0, *, out=None) Tensor

返回矩陣(2-D 張量)或一批矩陣 input 的下三角部分,結果張量 out 的其他元素被設定為 0。

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

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

引數
  • input (Tensor) – 輸入張量。

  • diagonal (int, optional) – 考慮的對角線

關鍵字引數

out (Tensor, optional) – 輸出張量。

示例

>>> a = torch.randn(3, 3)
>>> a
tensor([[-1.0813, -0.8619,  0.7105],
        [ 0.0935,  0.1380,  2.2112],
        [-0.3409, -0.9828,  0.0289]])
>>> torch.tril(a)
tensor([[-1.0813,  0.0000,  0.0000],
        [ 0.0935,  0.1380,  0.0000],
        [-0.3409, -0.9828,  0.0289]])

>>> b = torch.randn(4, 6)
>>> b
tensor([[ 1.2219,  0.5653, -0.2521, -0.2345,  1.2544,  0.3461],
        [ 0.4785, -0.4477,  0.6049,  0.6368,  0.8775,  0.7145],
        [ 1.1502,  3.2716, -1.1243, -0.5413,  0.3615,  0.6864],
        [-0.0614, -0.7344, -1.3164, -0.7648, -1.4024,  0.0978]])
>>> torch.tril(b, diagonal=1)
tensor([[ 1.2219,  0.5653,  0.0000,  0.0000,  0.0000,  0.0000],
        [ 0.4785, -0.4477,  0.6049,  0.0000,  0.0000,  0.0000],
        [ 1.1502,  3.2716, -1.1243, -0.5413,  0.0000,  0.0000],
        [-0.0614, -0.7344, -1.3164, -0.7648, -1.4024,  0.0000]])
>>> torch.tril(b, diagonal=-1)
tensor([[ 0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000],
        [ 0.4785,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000],
        [ 1.1502,  3.2716,  0.0000,  0.0000,  0.0000,  0.0000],
        [-0.0614, -0.7344, -1.3164,  0.0000,  0.0000,  0.0000]])

文件

查閱 PyTorch 的完整開發者文件

檢視文件

教程

獲取面向初學者和高階開發者的深度教程

檢視教程

資源

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

檢視資源