四、pytorch的低阶API:2.张量的数学运算

本文是对eat pytorch in 20 day做的笔记

  1. 标量运算
    标量运算的特点是对张量逐元素运算
+-*/**%//>=&|、……
torch.sqrt()#开方
torch.round(x) #保留整数部分,四舍五入
torch.floor(x) #保留整数部分,向下归整
torch.ceil(x)  #保留整数部分,向上归整
torch.trunc(x) #保留整数部分,向0归整
torch.clamp(x,min,max)#幅值裁剪
  1. 向量运算
    向量运算符在一个特定轴上运算
a = torch.arange(1,10).float()
torch.sum(a)
torch.mean(a)
torch.max(a)
torch.min(a)
torch.prod(a) #累乘
torch.std(a)  #标准差
torch.var(a)  #方差
torch.median(a) #中位数
#如果a是矩阵,还有一个参数dim,不仅会返回值,还会返回dim下的index
#cum扫描,tensor大小不变,下一个数是和前面数的累计运算
torch.cumsum(a,0)
torch.cumprod(a,0)
torch.cummax(a,0).values
torch.cummax(a,0).indices
torch.cummin(a,0)
#排序
torch.topk(a,2,dim = 0)
torch.topk(a,2,dim = 1)
torch.sort(a,dim = 1)
  1. 矩阵运算
#矩阵乘法
a@b、torch.matmul(a,b)、torch.mm(a,b)
#矩阵转置
a.t()、torch.transpose()
#矩阵求逆(必须为浮点)
torch.inverse()
#矩阵求迹
torch.trace()
#矩阵求范数(所有元素的平方和开根号)
torch.norm()
#矩阵行列式
torch.det()
#矩阵特征值
torch.eig(a,eigenvectors=True)
#QR分解:将一个方阵分解为正交矩阵和上三角矩阵
q,r=torch.qr(a)
#svd分解:将任意矩阵分解为正交矩阵、对角矩阵和正交矩阵
u,s,v=torch.svd()
  1. 广播机制
torch.broadcast_tensors(a,b)#可以将多个张量根据广播规则转换成相同的维度。
#两个张量的某一维度相同或者其中一个维度是1,那么它们在这个维度上是相容的。两个张量相容,就可以使用广播,每个维度扩展到二者该维度的最大值。不使用广播,只要相容,在操作时也会自动扩展。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值