當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python mxnet.symbol.linalg.maketrian用法及代碼示例


用法:

mxnet.symbol.linalg.maketrian(A=None, offset=_Null, lower=_Null, name=None, attr=None, out=None, **kwargs)

參數

  • A(Symbol) - 存儲為向量的三角矩陣張量
  • offset(int, optional, default='0') - 對角線與主對角線的偏移量。 0 對應於主對角線,負/正值對應於主對角線下方/上方的對角線。
  • lower(boolean, optional, default=1) - 如果 lower=true 則參考下三角矩陣,否則參考上三角矩陣。僅在 offset=0 時相關
  • name(string, optional.) - 結果符號的名稱。

返回

結果符號。

返回類型

Symbol

構造一個方陣,其輸入代表一個特定的三角形sub-matrix。這本質上是 linalg.extracttrian 的倒數。輸入是一個張量 A 的維度 n >= 1

如果 n=1 ,則 A 表示三角矩陣的條目,如果 offset<0offset=0lower=true 則為下三角矩陣。生成的矩陣是通過首先構造方陣,將三角形外的條目設置為零,然後將offset-乘以零條目的附加對角線到方陣。

如果 n>1 ,那麽 A 代表一批三角形 sub-matrices。這批對應的方陣以 n+1 維張量的形式返回。

注意

該運算符僅支持 float32 和 float64 數據類型。

例子:

Single  matrix construction
A = [1.0, 2.0, 3.0]

maketrian(A)              = [[1.0, 0.0],
                             [2.0, 3.0]]

maketrian(A, lower=false) = [[1.0, 2.0],
                             [0.0, 3.0]]

maketrian(A, offset=1)    = [[0.0, 1.0, 2.0],
                             [0.0, 0.0, 3.0],
                             [0.0, 0.0, 0.0]]
maketrian(A, offset=-1)   = [[0.0, 0.0, 0.0],
                             [1.0, 0.0, 0.0],
                             [2.0, 3.0, 0.0]]

Batch matrix construction
A = [[1.0, 2.0, 3.0],
     [4.0, 5.0, 6.0]]

maketrian(A)           = [[[1.0, 0.0],
                           [2.0, 3.0]],
                          [[4.0, 0.0],
                           [5.0, 6.0]]]

maketrian(A, offset=1) = [[[0.0, 1.0, 2.0],
                           [0.0, 0.0, 3.0],
                           [0.0, 0.0, 0.0]],
                          [[0.0, 4.0, 5.0],
                           [0.0, 0.0, 6.0],
                           [0.0, 0.0, 0.0]]]

相關用法


注:本文由純淨天空篩選整理自apache.org大神的英文原創作品 mxnet.symbol.linalg.maketrian。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。