PyTorch之Tensor的线性代数
-
trace()
对角线元素之和(矩阵的迹)
import torch # input x = torch.rand(3, 3) x.trace() # output print(x) tensor([[0.0441, 0.0921, 0.9778], [0.3825, 0.9165, 0.9853], [0.9345, 0.9116, 0.8807]]) print(x.trace()) tensor(1.8412)
-
diag()
对角线元素
# input x.diag() x.diag(diagonal=1) x.diag(diagonal=2) # output 1: tensor([0.0441, 0.9165, 0.8807]) 2: tensor([0.0921, 0.9853]) 3: tensor([0.9778])
-
triu/tril:矩阵的上三⻆角/下三⻆角,可指定偏移量量
-
mm/bmm:矩阵乘法,batch的矩阵乘法
-
addmm/addbmm/addmv/addr/badbmm… :矩阵运算
-
t:转置
-
dot/cross:内积/外积
-
inverse :求逆矩阵
-
svd:奇异值分解
TIPs:用法同上述示例