Python 如何展开PyTorch张量?
我有一个张量:Python 如何展开PyTorch张量?,python,numpy,pytorch,tensor,Python,Numpy,Pytorch,Tensor,我有一个张量: t1 = torch.randn(564, 400) 我想把它展开成一维张量,长度为225600 我该怎么做呢?Pytorch很像numpy,所以你可以简单地做 t1 = t1.view(-1) or t1 = t1.reshape(-1) Pytorch很像numpy所以你可以 t1 = t1.view(-1) or t1 = t1.reshape(-1) 请注意Kris建议的视图和重塑之间的差异- 从重塑的文档字符串: 如果可能,返回的张量将是一个视图 输入的数量。否则
t1 = torch.randn(564, 400)
我想把它展开成一维张量,长度为225600
我该怎么做呢?Pytorch很像numpy,所以你可以简单地做
t1 = t1.view(-1) or t1 = t1.reshape(-1)
Pytorch很像numpy所以你可以
t1 = t1.view(-1) or t1 = t1.reshape(-1)
请注意Kris建议的
视图
和重塑
之间的差异-
从重塑的文档字符串:
如果可能,返回的张量将是一个视图
输入的<代码>数量
。否则,它将是一个副本。连续输入和具有兼容步幅的输入可以在不复制的情况下重塑
因此,如果你的张量不是连续的,调用重塑
应该处理如果使用视图
就必须处理的事情;也就是说,调用t1.continuous().view(…)
来处理非连续张量
此外,可以使用falten
:t1=t1.flant()
作为更具可读性的视图(-1)
的等价物。请注意视图
和重塑
之间的区别,正如Kris所建议的那样-
从重塑的文档字符串:
如果可能,返回的张量将是一个视图
输入的<代码>数量
。否则,它将是一个副本。连续输入和具有兼容步幅的输入可以在不复制的情况下重塑
因此,如果你的张量不是连续的,调用重塑
应该处理如果使用视图
就必须处理的事情;也就是说,调用t1.continuous().view(…)
来处理非连续张量
此外,可以使用falten
:t1=t1.flant()
作为更具可读性的view(-1)
的等价物。这是否回答了您的问题?这回答了你的问题吗?