PyTorch维度变换(view,reshape,transpose,permute)
作者:互联网
import torch
文章目录
1、reshape方法
用法与NumPy的一模一样,既可以从torch
这个库调用,torch.reshape(input, shape)
,也可以在Tensor
对象上调用torch.Tensor.reshape(shape)
。
2、view方法
与reshape
方法相比有较大的局限性,原因在于
- 只能在
Tensor
对象上调用 Tensor
对象必须是contiguous
的,故常与contiguous
方法连用:torch.Tensor.contiguous().view(size)
,效果等价于torch.Tensor.reshape(shape)
所以,用view
方法还不如直接用reshape
方便
3、permute方法
permute
方法是基于Tensor
对象的,作用是置换Tensor
的某几个维度。
4、transpose方法
基于torch
库或Tensor
对象,作用是置换Tensor
的某两个维度。
5、T属性
返回原张量的转置,其对应的shape
逆序。
>>>a = torch.randn(2,3,4,5)
>>>a.size()
torch.Size([2, 3, 4, 5])
>>>a.T.size()
torch.Size([5, 4, 3, 2])
标签:Tensor,reshape,torch,transpose,shape,PyTorch,方法,view 来源: https://blog.csdn.net/jasminefeng/article/details/113827268