[英]how to concate two tensors with different dimensions in pytorch
我在 pytorch 中有兩個具有這些形狀的張量:
torch.Size([64, 100]) 和 torch.Size([64, 100, 256])
我想通過torch.cat
連接它們,但它們的形狀和大小應該相同。 所以我得到這個錯誤:
RuntimeError:張量必須具有相同的維數:得到 2 和 3
我應該怎么做才能解決這個問題? how can I convert 2d PyTorch tensor into 3d tensor OR how can I convert 3d PyTorch tensor to 2d tensor without losing any data? 或任何其他想法?
根據您要對這兩個張量做什么,您可以考慮在最后一個軸上進行連接,以便生成的張量形狀為(64, 100, 257)
。 這需要您首先在第一個張量上解壓 singleton 尺寸:
>>> x, y = torch.rand(64, 100), torch.rand(64, 100, 256)
>>> z = torch.cat((x[..., None], y), -1)
>>> z.shape
torch.Size([64, 100, 257])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.