在 PyTorch 中将 5D 张量转换为 4D 张量
Posted
技术标签:
【中文标题】在 PyTorch 中将 5D 张量转换为 4D 张量【英文标题】:Convert 5D tensor to 4D tensor in PyTorch 【发布时间】:2020-12-27 12:19:31 【问题描述】:在 PyTorch 中,我有一个尺寸为 B x 9 x C x H x W
的 5D 张量 X
。我想将其转换为尺寸为 B x 9C x H x W
的 4D 张量 Y
,以便以通道方式进行连接。
为了说明let,
a = X[1,0,:,:,:]
b = X[1,1,:,:,:]
c = X[1,2,:,:,:]
...
i = X[1,8,:,:,:]
那么在张量 Y
中,a to i
应该是通道级连接的。
【问题讨论】:
【参考方案1】:您可以使用torch.reshape
轻松广播到新形状:
b, n, c, h, w = X.shape
X = X.reshape(b, n*c, h, w)
【讨论】:
【参考方案2】:试试:
import torch
x = torch.rand(3, 4, 3, 2, 6)
print(x.shape)
y=x.flatten(start_dim=1, end_dim=2)
print(y.shape)
torch.Size([3, 4, 3, 2, 6])
torch.Size([3, 12, 2, 6])
【讨论】:
以上是关于在 PyTorch 中将 5D 张量转换为 4D 张量的主要内容,如果未能解决你的问题,请参考以下文章