Python 移除pytorch中的零尺寸
我有torch.tensor,它的维数为0 x 240 x 3 x 540 x 960 我只想去掉0维,所以我想要pytorch张量 240 x 3 x 540 x 960的尺寸 我使用了Python 移除pytorch中的零尺寸,python,matrix,multidimensional-array,pytorch,Python,Matrix,Multidimensional Array,Pytorch,我有torch.tensor,它的维数为0 x 240 x 3 x 540 x 960 我只想去掉0维,所以我想要pytorch张量 240 x 3 x 540 x 960的尺寸 我使用了tensor=torch.squese(tensor)来尝试,但是零维并没有被移除 在我的例子中,张量的大小是可变的,所以我无法将其硬编码为torch.squence 有什么简单的方法可以去除pytorch.tensor中不需要的维度吗?你不能。 形状张量0 x 240 x 3 x 540 x 960中的大小(
tensor=torch.squese(tensor)
来尝试,但是零维并没有被移除
在我的例子中,张量的大小是可变的,所以我无法将其硬编码为torch.squence
有什么简单的方法可以去除pytorch.tensor中不需要的维度吗?你不能。
形状张量0 x 240 x 3 x 540 x 960
中的大小(=元素数)为0
不能将其重塑为形状为240 x 3 x 540 x 960的张量,因为该张量包含373248000个元素
文件:
返回一个已删除大小为1的输入的所有维度的张量
这将删除1个大小的DIM,而不是0个大小的DIM,这是有意义的
无论如何,原始张量中的数据量为0,可以表示为至少一个零维的任何形状,但不能表示为大小>0的形状。谢谢,因为挤压并不能解决这个问题,相反,我设法改变了torch.nn.Module的整个神经网络的结构。在我的例子中,张量的输入/输出形式与原始神经网络的设计结构相比是不正确的,我尝试用一个正方形来解决它,因为零维突然出现,但它没有很好地工作,我能够改变神经网络的整体层,最后它工作了。在制作神经网络的过程中,0维可能是一个不希望出现的错误。