pytorch:张量的数学计算

本文深入探讨了PyTorch中的一些基本矩阵操作,包括矩阵转置、逆矩阵计算、迹(trace)、范数、行列式、特征值和特征向量、QR分解以及SVD分解。这些操作在机器学习和深度学习的数学基础中扮演着重要角色,对于理解和实现复杂模型至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值