pytorch --- tensor.permute()和torch.transpose()
tensor.permute(dim1, dim2, dim3, …) permute可以对任意高维矩阵进行转置.但只有 tensor.permute() 这个调用方式 x = torch . rand ( 2 , 3 , 4 ) print ( "x.shape:" , x . shape ) x = x . permute ( 2 , 1 , 0 ) print ( "x.shape:" , x . shape ) 输出: x.shape: torch.Size([2, 3, 4]) x.shape: torch.Size([4, 3, 2]) [Finished in 1.0s] 例2: t . rand ( 2 , 3 , 4 , 5 ) . permute ( 3 , 2 , 0 , 1 ) . shape Out [ 669 ] : torch . Size ( [ 5 , 4 , 2 , 3 ] ) 总结 传入permute方法的参数是维度, 未进行变换前的dim是[0, 1, 2]的方式, 转换后表示将第0维度和第2维度调换 torch.transpose(tensor, dim1, dim2) transpose只能操作2D矩阵的转置(就是每次transpose只能在两个维度之间转换,其他维度保持不变)。有两种调用方式