首页 > 解决方案 > 了解 PyTorch 张量形状

问题描述

关于我们在 PyTorch 中定义的张量的形状,我有一个简单的问题。假设我说:

input = torch.randn(32, 35)

这将创建一个 32 行 35 列的矩阵。现在当我定义:

input2 = torch.randn(1,2,32, 35)

关于新矩阵 input2 的维度,我能说什么?如何在这里定义行和列?我的意思是我是否有两个形状为 32*35 的矩阵被张量打包?

我想更好地理解这背后的几何。谢谢。

标签: pythonmachine-learningpytorchtensor

解决方案


将张量形状视为维度所包含的列表的数量。例如,张量形状 (4, 4, 2) 将有四个元素,它们都包含 4 个元素,而这些元素又包含 2 个元素。

  1. 第一个包含 4 个元素。
  2. 第二个包含 4 个元素。
  3. 第三个维度包含 2 个元素。

在此处输入图像描述

以下是数据的样子:

[[[0.86471446, 0.26302726],
  [0.04137454, 0.00349315],   
  [0.06559607, 0.45617865],
  [0.0219786, 0.27513594]],

 [[0.60555118, 0.10853228],
  [0.07059685, 0.32746256],
  [0.99684617, 0.07496456],
  [0.55169005, 0.39024103]],

 [[0.55891377, 0.41151245],
  [0.3434965, 0.12956237],
  [0.74908291, 0.69889266],
  [0.98600141, 0.8570597]],

 [[0.7903229, 0.93017741],
  [0.54663242, 0.72318166],
  [0.6099451, 0.96090241],
  [0.63772238, 0.78605599]]]

换句话说,四个元素中的四个元素中的两个元素。


推荐阅读