为啥 torch.FloatTensor([[[0,1,2],[3,4,5]],[[6,7,8],[9,10,11]]]) 的大小是 [2,2, 3]? [关闭]

Posted

技术标签:

【中文标题】为啥 torch.FloatTensor([[[0,1,2],[3,4,5]],[[6,7,8],[9,10,11]]]) 的大小是 [2,2, 3]? [关闭]【英文标题】:Why torch.FloatTensor([[[0,1,2],[3,4,5]],[[6,7,8],[9,10,11]]]) size is [2,2,3]? [closed]为什么 torch.FloatTensor([[[0,1,2],[3,4,5]],[[6,7,8],[9,10,11]]]) 的大小是 [2,2, 3]? [关闭] 【发布时间】:2020-06-16 13:36:42 【问题描述】:
>>> ft = torch.FloatTensor([[[0,1,2],[3,4,5]],[[6,7,8],[9,10,11]]])
>>> print(ft.shape)
torch.Size([2, 2, 3])

我无法理解这个结果。 我觉得torch size应该是[2,3,2],结果却是[2,2,3]。

【问题讨论】:

为什么你认为它应该是别的东西? 【参考方案1】:

因为

len([[[0,1,2],[3,4,5]],[[6,7,8],[9,10,11]]]) = 2

这是前 2 个。 以及里面的每一项:

len([[0,1,2],[3,4,5]]) = 2

这是第二个2。

以及里面的每一项:

len([0,1,2]) = 3

这是第 3 个。

【讨论】:

哦,我以为尺寸是 [batch size, length, dim] 但事实并非如此。非常感谢。

以上是关于为啥 torch.FloatTensor([[[0,1,2],[3,4,5]],[[6,7,8],[9,10,11]]]) 的大小是 [2,2, 3]? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

RuntimeError:输入类型(torch.FloatTensor)和权重类型(torch.cuda.FloatTensor)应该相同

RuntimeError: Expected object of type torch.cuda.FloatTensor but found type torch.FloatTensor for ar

使用ModuleDict,我有。输入类型(torch.cuda.FloatTensor)和权重类型(torch.FloatTensor)应该是一样的。

pytorch笔记:torch.sparse类

错误处理:RuntimeError: Input type (torch.cuda.FloatTensor) and weight type (torch.FloatTensor) should be

如何用其他 pytorch 函数替换 torch.sparse?