pytorch中tensor型別轉換

2021-10-23 15:04:08 字數 1790 閱讀 7205

# tensor轉numpy

tensor.numpy(

)# numpy轉tensor

torch.from_numpy(

)

2、tensor與list:

# tensor轉list

tensor.tolist(

)# list轉tensor

torch.tensor(

)

3、tensor型別轉換

tensor = torch.tensor(3,

5)# torch.long() 將tensor投射為long型別

newtensor = tensor.

long()

# torch.half()將tensor投射為半精度浮點型別

newtensor = tensor.half(

)# torch.int()將該tensor投射為int型別

newtensor = tensor.

int(

)# torch.double()將該tensor投射為double型別

newtensor = tensor.double(

)# torch.float()將該tensor投射為float型別

newtensor = tensor.

float()

# torch.char()將該tensor投射為char型別

newtensor = tensor.char(

)# torch.byte()將該tensor投射為byte型別

newtensor = tensor.byte(

)# torch.short()將該tensor投射為short型別

newtensor = tensor.short(

)

4、type_as() 將張量轉換成指定型別張量,需要賦值,type_as不會改變呼叫它的tensor

>>

> a=torch.tensor(2,

5)>>

> a

tensor([[

1.9431e-19

,4.8613e+30

,1.4603e-19

,2.0704e-19

,4.7429e+30],

[1.6530e+19

,1.8254e+31

,1.4607e-19

,6.8801e+16

,1.8370e+25]]

)>>

> b=torch.inttensor(1,

2)>>

> a.type_as(b)

tensor([[

0,-2147483648,0

,0,-

2147483648],

[-2147483648,-

2147483648,0

,-2147483648,-

2147483648]]

, dtype=torch.int32)

>>

> a

tensor([[

1.9431e-19

,4.8613e+30

,1.4603e-19

,2.0704e-19

,4.7429e+30],

[1.6530e+19

,1.8254e+31

,1.4607e-19

,6.8801e+16

,1.8370e+25]]

)

pytorch中tensor的型別轉換

1 資料型別轉換 在tensor後加 long int float double 等即可,也可以用.to 函式進行轉換,所有的tensor型別可參考 2 資料儲存位置轉換 cpu張量 gpu張量,使用data.cuda gpu張量 cpu張量,使用data.cpu 3 與numpy資料型別轉換 te...

pytorch中的Tensor使用入門

1.3 級聯操作cat 1.4 常用tensor 1.5 tensor在cnn中的形式 1.6 element wise 直接建立 t torch.rand 3,4 把numpy轉為tensor t np.random.rand 3,4 torch.tensor是呼叫乙個類,會預設把data轉為fl...

PyTorch中張量 tensor 的維度變換

example in 1 x torch.rand 4,1,28,28 in 2 x.size out 2 torch.size 4,1,28,28 in 3 y x.view 4,28 28 in 4 y.size out 4 torch.size 4,784 in 5 y x.reshape 4...