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])
'내가 보려고 만든 Pytorch' 카테고리의 다른 글
내가 공부하려 만든 Pytorch8(Type Casting ~ In-place Operation) (0) | 2023.04.21 |
---|---|
내가 공부하려 만든 Pytorch7(Unsqueeze) (0) | 2023.04.21 |
내가 공부하려 만든 Pytorch6(view,squeeze) (0) | 2023.04.21 |
내가 공부하려고 만든 Pytorch5(3d Tensor 혼자 해보기) (0) | 2023.04.21 |
내가 공부하려고 만든 Pytorch1(벡터, 행렬 그리고 텐서) (0) | 2023.04.12 |