pytorch-深度学习-Tensor的所有运算,人工智能入门必备(含代码)

目录

Tensor的加法运算

Tensor的乘法运算

​ Tensor的除法运算

 Tensor的矩阵运算

矩阵乘法

二维

 高维

Tensor的幂运算-对数运算

 可直接执行的代码

Tensor的取整/取余运算

 代码

Tensor-比较运算

Tensor的取前k大/小/第k小的数值及其索引

判定tensor是否的某些数值是否为finite/inf/nan(有界性等)


​​​​​​​


Tensor的加法运算

前三种都是直接相加,第四种带下划线的方式会改变a的值,即a.add_(b)等价于a=a+b

Tensor的乘法运算

相乘的Tensor必须维度完全相同,并且对应的结果为对应元素相乘

 Tensor的除法运算

 Tensor的矩阵运算

矩阵乘法

二维

 高维

高维的矩阵运算要求除最后两个维度需要满足二维矩阵运算性质的行列要求外,剩余前面的维度必须完全相同

Tensor的幂运算-对数运算

 

 可直接执行的代码

 以下为可以执行的代码:

import torch

# add运算
a = torch.rand(2, 3)
b = torch.rand(2, 3)
print(a)
print(b)

print(a + b)
print(a.add(b))
print((torch.add(a, b)))
print(a.add_(b))
print(a)

# sub 减法运算
print("------sub------")
print(a - b)
print(a.sub_(b))
print(a)

# 矩阵运算
print("---------矩阵运算----------")
a = torch.ones(2, 1)
b = torch.ones(1, 2)
print(a.matmul(b))

# 高维tensor运算
print("-------high--------")
a = torch.ones(1, 2, 3, 4)
b = torch.ones(1, 2, 4, 3)
print(a.matmul(b))

Tensor的取整/取余运算

 代码

import torch

a = torch.rand(2, 2)
a = a * 10
print(a)
print(torch.floor(a))
print(torch.ceil(a))
print(torch.round(a))
print(torch.trunc(a))
print(torch.frac(a))
print(a % 2)

Tensor-比较运算

注意eq与equal的区别!

除了equal运算是返回一个boolen以外,剩余的比较运算均为两个tensor对应的数值一个一个进行比较

代码

import torch

a = torch.rand(2, 3)
b = torch.rand(2, 3)

print(torch.eq(a, b))
print(torch.equal(a, b))

print(torch.ge(a, b))

Tensor的取前k大/小/第k小的数值及其索引

 

sort:得到的排序输出结果为对应每一维度的原tensor索引值的排序,如下图

代码

import torch

a = torch.rand(2, 5)
print(a)
print(torch.sort(a, descending=True))
# 得到的排序输出结果为对应每一维度的原tensor索引值的排序

判定tensor是否的某些数值是否为finite/inf/nan(有界性等)

可用于数据清洗 

也是一个一个数值进行检测的

 

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值