如何在 Pytorch 中以 int 列表的形式获取张量的形状?
要在 PyTorch 中将张量的形状作为列表,我们可以使用两种方法。一种使用 size() 方法,另一种使用 PyTorch 中张量的 shape 属性。在这篇简短的文章中,我们将了解如何使用这两种方法。
使用 size() 方法:
size() 方法返回自张量的大小。返回值是元组的子类。
Python3
import torch
torch.empty(3, 4, 5).size()
Python3
v = torch.tensor([[1,0],[0,1]])
x = list(v.size())
print(x)
Python3
import torch
v = torch.tensor([[1,0],[0,1]])
x = list(v.shape)
print(x)
输出:
torch.Size([3, 4, 5])
我们使用 list() 方法将其转换为列表。
例子:
蟒蛇3
v = torch.tensor([[1,0],[0,1]])
x = list(v.size())
print(x)
输出:
[2, 2]
您还可以使用Python交互式会话,如下所示:
使用形状属性:
tensor.shape是tensor.size()的别名,虽然 shape 是一个属性,而size()是一个方法。为了验证这一点,我们可以在交互式会话中运行以下命令。
我们可以类似地使用 list() 方法将其转换为列表。
例子:
蟒蛇3
import torch
v = torch.tensor([[1,0],[0,1]])
x = list(v.shape)
print(x)
输出:
[2,2]
或者使用交互式会话: