Torch: 不同尺寸张量的拼接

我有一个x_at_i = torch.Tensor(1,i),它在每次迭代中都会增长,其中i从0到n。我想要将所有不同尺寸的张量拼接成一个矩阵,并用零填充剩余的单元格。最常见的方法是什么?例如:

x_at_1 = 1
x_at_2 = 1 2
x_at_3 = 1 2 3
x_at_4 = 1 2 3 4
X = torch.cat(x_at_1, x_at_2, x_at_3, x_at_4)
X = [ 1 0 0 0
      1 2 0 0
      1 2 3 0
      1 2 3 4 ]
点赞
用户3754413
用户3754413

如果你知道 n,并且假设在每次迭代中可以轻松访问到 x_at_i,我建议尝试以下代码:

X = torch.Tensor(n, n):zero()
for i = 1, n do
    X[i]:narrow(1, 1, i):copy(x_at[i])
end
2017-04-25 18:23:30