Pytorch:线性代数

这篇博客介绍了PyTorch中用于线性代数的一些核心函数,包括矩阵的迹、对角线元素、三角矩阵、矩阵乘法、转置、内积、外积、逆矩阵以及奇异值分解等。通过这些函数,可以方便地进行高效的矩阵运算。例如,`t()`用于转置矩阵,但转置后的矩阵可能不连续,需要调用`.contiguous()`确保连续性。
摘要由CSDN通过智能技术生成

线性代数

PyTorch的线性函数主要封装了Blas和Lapack,其用法和接口都与之类似。常用的线性代数函数如表3-7所示。

表3-7: 常用的线性代数函数

函数功能
trace对角线元素之和(矩阵的迹)
diag对角线元素
triu/tril矩阵的上三角/下三角,可指定偏移量
mm/bmm矩阵乘法,batch的矩阵乘法
addmm/addbmm/addmv/addr/badbmm..矩阵运算
t转置
dot/cross内积/外积
inverse求逆矩阵
svd奇异值分解

具体使用说明请参见官方文档1,需要注意的是,矩阵的转置会导致存储空间不连续,需调用它的.contiguous方法将其转为连续。


  1. http://pytorch.org/docs/torch.html#blas-and-lapack-operations

In [88]:

b = a.t()
b.is_contiguous()

Out[88]:

False

In [89]:

b.contiguous()

Out[89]:

tensor([[ 0.,  9.],
        [ 3., 12.],
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值