Pytorch 张量形状

时间:2021-02-17 17:58:35

标签: python pytorch tensor dimensions

我有一个关于 2 个不同张量的形状的简单问题 - tensor_1tensor_2

  1. tensor_1.shape 输出 torch.Size([784, 1]);
  2. tensor_2.shape 输出 torch.Size([784])

我知道第一个是 rank-2 张量,而第二个是 rank-1。对我来说,很难概念化形状 [784, 1][784] 之间的区别。

认为 tensor_1 有 784 行和 1 列,每个地方都有一个标量是否正确?如果是这样,为什么我们不能简单地称其为列向量(实际上是 rank-1 张量),它也具有垂直显示的值?

同样,第二张量 ([784]) 的形状能否想象为水平向量内的 784 个值?

1 个答案:

答案 0 :(得分:3)

您不能将 tensor_1 称为列向量,因为它的维度。索引特定张量是在 2D 中完成的
例如。 tensor_1[1,1]

来到 tensor_2 ,它是一个只有一维的标量张量。
当然你也可以把它做成tensor_1的形状,只要

tensor_2 = tensor_2.unsqueeze(1)   #This method will make tensor_2 have a shape of tensor_1