向张量矩阵追加一个张量向量



我有一个张量矩阵,我只是想附加一个张量向量作为它的另一列。

例如:

X = torch.randint(100, (100,5))
x1 = torch.from_numpy(np.array(range(0, 100)))

我试过torch.cat([x1, X)axisdim的各种数字,但它总是说尺寸不匹配。

您也可以使用torch.hstack来组合unsqueeze来重塑x1

torch.hstack([X, x1.unsqueeze(1)])

X的形状为[100,5],X1的形状为100。对于串联火炬,除了我们试图连接的轴外,所有轴上都需要类似的形状。

所以,你首先需要

X1 = X1[:, None] # change the shape from 100 to [100, 1]
Xc = torch.cat([X, X1], axis=-1) /# tells the torch that we need to concatenate over the last dimension

我。形状应为[100,6]

将两个答案合并成pytorch 1.6兼容的版本:

torch.cat((X, x1.unsqueeze(1)), dim = 1)

相关内容

  • 没有找到相关文章