PyTorch——(2) tensor基本操作

维度变换

view()/reshape() 改变形状

view()/reshape()等价,参数为需要目标tensor的形状
在这里插入图片描述

unsqueeze()增加维度

在指定位置增加一个维度,参数为增加后,被增加维度所在的位置索引
在这里插入图片描述
在这里插入图片描述

squeeze()压缩维度

只能压缩长度为1的维度,参数为压缩前,被压缩维度的索引
在这里插入图片描述

expand()广播

相当于广播机制,将tensor在“形式上”变成指定的维度。实际数据并没有改变。
在这里插入图片描述-1表示该维度不扩展

repeat() 复制

  1. 将tensor 在指定维度上复制 n次,这里的参数不再是目标形状,而是次数
  2. repeat()会实际复制数据,即内存上多出 n倍相同的内容。
    在这里插入图片描述

transpose() 交换指定的两个维度的位置

在这里插入图片描述

permute() 将维度顺序改变成指定的顺序

参数为改变后的顺序
在这里插入图片描述

合并和分割

cat() 将tensor在指定维度上合并

在这里插入图片描述

stack()将tensor堆叠,会增加新的维度

在这里插入图片描述

split()根据指定维度的长度拆分

c = torch.rand(4,3,28,32)
# 参数为标量,表示均匀拆分每个成员都分到长度为2
a, b = c.split(2,dim=0)
print(a.shape)
print(b.shape)

在这里插入图片描述

c = torch.rand(4,3,28,32)
# 参数为列表,表示每个成员指定长度
a, b = c.split([1,3],dim=0)
print(a.shape)
print(b.shape)

在这里插入图片描述

chunk()根据数量拆分

参数为需要拆分成的数量

c = torch.rand(4,3,28,32)
a = c.chunk(4,dim=0)
print(a[0].shape)
print(a[1].shape)
print(a[2].shape)
print(a[3].shape)

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值