我有这些Tensor
x = array.Size([110,3]) array.Size([126, 3]) array.Size([64, 3]) array.Size([132, 3]) array.Size([130, 3]) array.Size([20, 3])
填充到(maxshape,3)并重新整形为(maxshape,2,3)?
zzlelutf1#
这取决于你想达到什么样的目标。可以将所有Tensor重新整形为(?, 2, 3),然后沿着第一维堆叠它们:
(?, 2, 3)
y = torch.cat([x_.reshape(-1, 2, 3) for x_ in x], dim=0)
有y.shape = torch.Size([559, 2, 3])。注意,在reshape中,你可以指定其中一个维度为-1,这将使pytorch根据输入的形状和其他参数推断出该维度的形状。
y.shape = torch.Size([559, 2, 3])
reshape
-1
1条答案
按热度按时间zzlelutf1#
这取决于你想达到什么样的目标。
可以将所有Tensor重新整形为
(?, 2, 3)
,然后沿着第一维堆叠它们:有
y.shape = torch.Size([559, 2, 3])
。注意,在
reshape
中,你可以指定其中一个维度为-1
,这将使pytorch根据输入的形状和其他参数推断出该维度的形状。