tensor数据类型转换_PyTorch的tensor数据类型及其相关转换
1 基本類型
PyTorch的數(shù)據(jù)類型為各式各樣的tensor,tensor可以理解為高維矩陣,與Numpy中的array類似。
PyTorch中的tensor包括CPU上的數(shù)據(jù)類型和GPU上的數(shù)據(jù)類型。
Torch定義了七種CPU tensor類型和八種GPU tensor類型。
通過(guò)使用type函數(shù)可以查看變量類型,即當(dāng)data為tensor數(shù)據(jù)類型時(shí),使用data.type()可以得到data的數(shù)據(jù)類型。
更多信息參考
torch.Tensor - PyTorch中文文檔?pytorch-cn.readthedocs.iotorch.Tensor - PyTorch 1.7.0 documentation?pytorch.org2 類型轉(zhuǎn)換
2.1 CPU tensor和GPU tensor之間的轉(zhuǎn)換
(1)從CPU tensor到GPU tensor,使用data.cuda()。
(2)從GPU tensor到CPU tensor,使用data.cpu()。
2.2 Tensor與Numpy array之間的轉(zhuǎn)換
(1)Tensor到Numpy array可以使用data.numpy(),其中data的類型為torch.Tensor。
(2)Numpy array到Tensor可以使用torch.from_numpy(data),其中data的類型為numpy.ndarray。
2.3 CPU tensor之間的轉(zhuǎn)換或GPU tensor之間的轉(zhuǎn)換
(1)一般只要在tensor后加long(),int(),double(),float(),byte()等函數(shù)就能將tensor進(jìn)行類型轉(zhuǎn)換。
例如:Torch.LongTensor轉(zhuǎn)換為Torch.FloatTensor,直接使用data.float()即可。
(2)還可以使用type()函數(shù)。
當(dāng)data為tensor數(shù)據(jù)類型,如果使用data.type(torch.FloatTensor)則強(qiáng)制轉(zhuǎn)換data為torch.FloatTensor類型張量。
(3)當(dāng)不知道要轉(zhuǎn)換為什么數(shù)據(jù)類型,但需要求a1,a2兩個(gè)張量的乘積時(shí),可以使用a1.type_as(a2)將a1轉(zhuǎn)換為a2同類型。
總結(jié)
以上是生活随笔為你收集整理的tensor数据类型转换_PyTorch的tensor数据类型及其相关转换的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 对php的感受100字_最新2020个人
- 下一篇: Android studio 按钮排版,