In the data transformation process of deep learning, there are many permute and transpose in coding:
import torch
image = torch.randn(3,32 ,512, 512)
image = image.permute(1,0,2,3)
print(image.shape)
image = torch.randn(3,32 ,512, 512)
image = image.transpose(0,1)
print(image.shape)
result:
torch.Size([32, 3, 512, 512])
torch.Size([32, 3, 512, 512])
permute can transpose any high-dimensional matrix.
Transpose can only operate the transpose of 2D matrices. It can perform two-dimensional transpose in multi-dimensional matrices. Continuous use of transpose can realize permute multi-dimensional transpose.