megengine.functional.diag¶
- diag(inp, k=0)[源代码]¶
如果
inp
是 1 维张量,则返回由inp
中元素作为对角线的 2 维张量。如果inp
是 2 维张量,则返回inp
对角线元素构成的 1 维张量。- 参数
inp – 输入张量。
k – 对角线偏移量。使用 \(k=0\) 则表示在主对角线上, \(k>0\) 表示在主对角线上方, \(k<0\) 表示在主对角线下方。默认:0.
- 返回类型
- 返回
提取出的对角线或构造出的对角矩阵。
实际案例
>>> inp = F.arange(6, dtype='int32').reshape(2,3) >>> out = F.diag(inp, k=1) >>> out Tensor([1 5], dtype=int32, device=xpux:0) >>> F.diag(out) Tensor([[1 0] [0 5]], dtype=int32, device=xpux:0)