如何更改割炬张量以与另一个张量结合

时间:2019-12-26 19:38:28

标签: pytorch

我正在尝试将数值数据的张量与resnet-50模型的输出张量连接起来。该模型的输出为张量形状torch.Size([10, 110528,8]),数字数据为张量形状10,其中110528是批处理大小,torch.Size([10,8])是数据中观测值的数量框架意义,而8是列数(在数据框架意义上)。我需要将数字张量整形为JSON.parse(params)["invoice"]["connection"]["subscriptions"].map { |subscription| subscription["documents"].map{ |document| document["url"] } } ,以使其正确连接。

我将如何重塑张量?

1 个答案:

答案 0 :(得分:0)

起始张量。

a = torch.randn(10, 1000)
b = torch.randn(10, 110528, 8)

允许连接的新张量。

c = torch.zeros(10,1000,7)

检查形状。

a[:,:,None].shape, c.shape
(torch.Size([10, 1000, 1]), torch.Size([10, 1000, 7]))

更改张量a以允许串联。

a = torch.cat([a[:,:,None],c], dim=2)

在维度1中串联。

torch.cat([a,b], dim=1).shape
torch.Size([10, 111528, 8])