PyTorch中permute的用法详解

函數功能:将tensor的维度换位

参数:参数是一系列的整数,代表原来张量的维度。比如三维就有0,1,2这些dimension。

例:

import torch
import numpy as np
a=np.array([[[1,2,3],[4,5,6]]])
unpermuted=torch.tensor(a)
print(unpermuted.size()) # ——> torch.Size([1, 2, 3])
#tensor([[1, 2, 3],
        [4, 5, 6]])

permuted=unpermuted.permute(2,0,1)
print(permuted.size()) # ——> torch.Size([3, 1, 2])
#tensor([[[1, 4]],

        [[2, 5]],

        [[3, 6]]])

再比如图片img的size比如是(28,28,3)就可以利用img.permute(2,0,1)得到一个size为(3,28,28)的tensor。

只是操作tensor並不能操作numpy

你可能感兴趣的:(学习笔记)