pytorchのpermuteメソッドについて

pytorchのpermuteメソッドについて、
.permute()の引数には、並び替える順番をタプル型で指定すると認識しています。
下記の場合ですと、(2, 3, 5)がpermute(1, 0, 2)によって(3, 2, 5)になるところまでは理解できます。

python

1a = torch.ones(2, 3, 5)2print(a.size())3b = a.permute(1, 0, 2)4print(b.size())

出力:

python

1torch.Size([2, 3, 5])2torch.Size([3, 2, 5])

一方で、permute(2, 0, 1)とした場合に、出力が、torch.Size([3, 5, 2])とならずに、
torch.Size([5, 2, 3])となる理由が理解できません。
初歩的な質問で申し訳ないですが、ご回答いただけますと幸いです。

python

1x = torch.randn(2, 3, 5)2print(x.size())3x_permute = x.permute(2, 0, 1)4print(x_permute.size())

出力:

python

1torch.Size([2, 3, 5])2torch.Size([5, 2, 3])

コメントを投稿

0 コメント