web-dev-qa-db-ja.com

2つのPytorchテンソルを同時に反復しますか?

私は2つのPytorchテンソル(実際には1-Dリストのみ)、_t1_と_t2_を持っています。それらを並行して反復すること、つまり次のようなことは可能ですか?

for a,b in Zip(t1,t2)

ありがとう。

あなたが試すことができます:torch.stack(seq, dim=0, out=None) → Tensor
詳細は pytochのドキュメント を参照してください

1
Jaja

concatenatetorch.cat(dim=1);を使用する方が理にかなっています。その後、新しいテンソルを反復処理できます。

1
gmds

ZipテンソルをPyTorchで1つにするには、torch.stackdim=1を使用します。

t1 = torch.tensor([1, 2, 3])
t2 = torch.tensor([10, 20, 30])
t3 = torch.tensor([100, 200, 300])

res = torch.stack((t1, t2, t3), dim=1)
#output
#tensor([[  1,  10, 100],
#        [  2,  20, 200],
#        [  3,  30, 300]])
0