본문 바로가기

내가 보려고 만든 Pytorch

내가 공부하려고 만든 Pytorch4(Permute와 Transpose)

Permute와 Transpose

 

permute()와 transpose()는 유사한 방식으로 작동한다. transpose()는 딱 두 개의 차원을 맞교환할 수 있다. 그러나 permute()는 모든 차원들을 맞교환할 수 있다.

 

 

1. 3차원 텐서 생성

x = torch.rand(16, 32, 3)
print(x.shape)
print(x.dim())

torch.Size([16, 32, 3])
3

2. Transpose

 

x.transpose(0,2)가 x의 차원 0과 2의 값인 3과 16의 값을 서로 바꾸어 준다.

y=x.transpose(0,2)
y.shape

torch.Size([3, 32, 16])

3. Permute

x.permute(2,1,0)가 x의 차원의 값이 0, 1, 2값이 2, 1, 0의 값으로 바꾸어 준다.

z=x.permute(2,1,0)
z.shape

torch.Size([3, 32, 16])