pytorch argmax_【科研之路】pytorch 张量

张量Tensor

3aa09fe91a529bd74536f22cdd1a3d1e.png

tensor是pytorch的一种特殊的数据格式,它表示多维数组概括了所有数学意义和计算机意义上的向量形式。

Rank/shape概念

  • Rank:表示我们需要多少个索引来访问或引用张量数据结构中包含的元素,即代表维度数
  • Shape(size):告诉我们每个轴的长度,即每个轴上有多少个数据

Rank=len(shape) Shape是很重要的东西,因为它包含了rank,size的所有东西,一般只会用它来分析

dtype

创建一个张量的时候必须声明类型,如果你有多个卡还需要声明device

5fa5e06e755f9ee078f9c0a94578192b.png

code

# array转tensor

张量的运算

reshape

你可以将一个张量的shape改变成任意形状,前提只要它们的乘积相同,-1表示让Pytorch自动计算最后一个位置。

squeeze

去掉所有维数为1的的维度,对不为1的维度没有影响,不需要指定维度

t 

unsqueeze

对数据维度进行扩充。给指定位置加上维数为一的维度,需要指定维度(一定是会增加一个1维度)

t 

concat

  • 沿着已存在的轴连接多个tensor,把对应维度X所代表的张量进行合并
  • 所有的tensor大小一致,除了需要连接那个维度,tensor不能为空
# dim=1的时候相当于

stack

  • 增加新的维度连接多个tensor
  • 会先将原始数据维度扩展一维(unsqueeze),然后再按照维度进行拼接,具体拼接操作同torch.cat类似
t 

张量广播

两个张量从尾部的维度开始进行比对,维度尺寸必须满足以下一个条件方可广播:

  • ​ 或者相等
  • ​ 或者其中一个张量的维度尺寸为 1
  • ​ 或者其中一个张量不存在这个维度
# 示例1:相同形状的张量总是可广播的,因为总能满足以上规则。

张量自身元素运算

max函数就是把指定的Xdim合并为1然后去除,合并元素为最大值,保留其他维不变

t

整理来源

李小伟:torch的广播机制(broadcast mechanism)​zhuanlan.zhihu.com
f27a3bef659e4b560be72ccc1972b874.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值