pytorch数据类型转换

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/summer2day/article/details/80942688

1.variable与tensor
variable里边的data就是tensor类型,即var.data()
2.tensor与numpy array
Tensor—->Numpy 可以使用 data.numpy(),data为Tensor变量
Numpy —-> Tensor 可以使用torch.from_numpy(data),data为numpy变量
3.gpu与cpu
CPU张量 —-> GPU张量, 使用data.cuda()
GPU张量 —-> CPU张量 使用data.cpu()
4.tensor间
一般系统默认是torch.FloatTensor类型,例如data = torch.Tensor(2,3)是一个2*3的张量,类型为FloatTensor
一般只要在Tensor后加long(), int(), double(),float(),byte()等函数就能将Tensor进行类型转换;例如:Torch.LongTensor—>Torch.FloatTensor, 直接使用data.float()即可。
还可以使用type()函数,data为Tensor数据类型,data.type()为给出data的类型,如果使用data.type(torch.FloatTensor)则强制转换为torch.FloatTensor类型张量。
5.不知道什么类型
当你不知道要转换为什么类型时,但需要求a1,a2两个张量的乘积,可以使用a1.type_as(a2)将a1转换为a2同类型。

猜你喜欢

转载自blog.csdn.net/summer2day/article/details/80942688
今日推荐