在两个上拆分火炬张量维度

Split torch tensor dimension on two

如果我有一个形状为 [2, 12] 的 torch 张量,是否可以从中生成一个形状为 [3, 2, 4] 的张量,这样数据将沿着最后一个方向分成块尺寸?视图函数不会改变数据的顺序,但这里我需要改变顺序,新的维度是第一个,第二个维度不会改变

这是必须如何拆分数据的示例图片

[2, 12]  
............   
............  
   
[3, 2, 4]  
....|....|....   
....|....|....   

torch.split 函数在形状上完全符合我的需要,但它输出的不是张量,而是元组

我假设您想将 12 大小的维度拆分为前导 3 维度和尾随 4 维度。您只需要查看和 permute 维度:

X = torch.permute(X.view(2, 3, 4), (1, 0, 2))