pytorch:张量的数学计算


import torch

# 计算转置
a = torch.tensor([[1, 2], [3, 4]], dtype=torch.float32)
print(a)
print(a.t())


# 计算逆矩阵
b = torch.inverse(a)
print(b)
print(a@b)

# 计算trace
print(torch.trace(a))


# 计算范数
print(torch.norm(a, dim=-1, p=1))


# 计算行列式
print(torch.det(a))


# 计算特征值和特征向量
print(torch.eig(a,eigenvectors=True))


#矩阵QR分解, 将一个方阵分解为一个正交矩阵q和上三角矩阵r
#QR分解实际上是对矩阵a实施Schmidt正交化得到q, q为正交矩阵,r为上三角矩阵,a=q@r
q,r = torch.qr(a)
print(q)
print(r)
print(q@r)


#矩阵svd分解
#svd分解可以将任意一个矩阵分解为一个正交矩阵u,一个对角阵s和一个正交矩阵v.t()的乘积
#svd常用于矩阵压缩和降维
u,s,v = torch.svd(a)

print(u)
print(s)
print(v)

print(u@torch.diag(s)@v.t())

```python
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值