如何访问PyTorch张量的元数据?
我们访问张量的大小(或形状)和张量中元素的数量作为张量的元数据。要访问张量的大小,我们使用 .size() 方法,访问张量的形状则使用 .shape 。
.size() 和 .shape 都会产生相同的结果。我们使用 torch.numel() 函数查找张量中所有元素的数量。
步骤
- 导入所需的库。这里需要的库是 torch 。确保已经安装了 torch 。
-
定义一个PyTorch张量。
-
查找张量的元数据。使用 .size() 和 .shape 来访问张量的大小和形状。使用 torch.numel() 函数来访问张量中元素的数量。
-
打印张量和元数据以便更好地理解。
示例1
# Python代码访问张量的元数据
# 导入必要的库
import torch
# 创建一个大小为4x3的张量
T = torch.Tensor([[1,2,3],[2,1,3],[2,3,5],[5,6,4]])
print("T:\n", T)
# 查找张量元数据
# 查找上面张量"T"的大小
size_T = T.size()
print("张量T的大小:\n", size_T)
# 使用.shape获得大小的另一种方法
print("张量形状:\n", T.shape)
# 查找张量"T"中元素的数量
num_T = torch.numel(T)
print("张量T中的元素数量:\n", num_T)
输出
运行上面的Python 3代码时,将产生以下输出。
T:
tensor([[1., 2., 3.],
[2., 1., 3.],
[2., 3., 5.],
[5., 6., 4.]])
张量T的大小:
torch.Size([4, 3])
张量形状:
torch.Size([4, 3])
张量T中的元素数量:
12
示例2
# Python代码访问张量的元数据
# 导入所需的库
import torch
# 创建一个随机数张量
T = torch.randn(4,3,2)
print("T:\n", T)
# 查找张量元数据
# 查找上面张量"T"的大小
size_T = T.size()
print("张量T的大小:\n", size_T)
# 使用.shape获得大小的另一种方法
print("张量形状:\n", T.shape)
# 查找张量"T"中元素的数量
num_T = torch.numel(T)
print("张量T中的元素数量:\n", num_T)
输出
运行上面的Python 3代码时,将产生以下输出。
T:
tensor([[[-1.1806, 0.5569],
[ 2.2237, 0.9709],
[ 0.4775, -0.2491]],
[[-0.9703, 1.9916],
[ 0.1998, -0.6501],
[-0.7489, -1.3013]],
[[ 1.3191, 2.0049],
[[-0.6044, 0.6153],
[-2.2473, -0.1531],
[ 0.5341, 1.3697]]])
张量T的大小:
torch.Size([4, 3, 2])
张量形状:
torch.Size([4, 3, 2])
张量T中的元素数量:
24