问题引入:
在Pytorch文档中,有torch.reshape与torch.Tensor.reshape两个reshape操作,他们的区别是什么呢?
我们先来看一下官方文档的定义:
torch.reshape:
torch.Tensor.reshape:
解释:
在pytorch中,torch.reshape与torch.Tensor.reshape实际上是同一个功能,不同的调用方式,他们都是用来改变张量形状的。从功能上来说,两者没有任何区别,唯一的区别是调用方式
torch.reshape使用示例:
import torch
# 创建一个张量
x = torch.randn(2, 3)
# 使用 torch.reshape 改变张量的形状
y = torch.reshape(x, (3, 2))
print(y)
torch.Tensor.reshape使用示例:
import torch
# 创建一个张量
x = torch.randn(2, 3)
# 使用张量的 reshape 方法改变张量的形状
y = x.reshape(3, 2)
print(y)