如何解决Pytorch 张量形状
我有一个关于 2 个不同张量的形状的简单问题 - tensor_1
和 tensor_2
。
-
tensor_1.shape
输出torch.Size([784,1])
; -
tensor_2.shape
输出torch.Size([784])
。
我知道第一个是 rank-2 张量,而第二个是 rank-1。对我来说,很难概念化形状 [784,1]
和 [784]
之间的区别。
认为 tensor_1
有 784 行和 1 列,每个地方都有一个标量是否正确?如果是这样,为什么我们不能简单地称其为列向量(实际上是 rank-1 张量),它也具有垂直显示的值?
同样,第二张量 ([784]
) 的形状能否想象为水平向量内的 784 个值?
解决方法
您不能将 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
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。