問題引入:
在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)