您好,欢迎来到二三四教育网。
搜索
您的当前位置:首页Pytorch中的数据类型转换

Pytorch中的数据类型转换

来源:二三四教育网

请不要假装很努力,结果不会陪你演戏。

1.Pytorch上的数据类型

Pytorch的类型可以分为CPU和GPU上的Tensor, 它们拥有的数据类型是基本上是一样的
tensor.FloatTensor
tensor.LongTensor
tensor.ByteTensor
tensor.CharTensor
tensor.ShortTensor
tensor.IntTensor
torch.LongTensor
其中torch.Tensor是默认的tensor.FloatTensor的简称

2.数据类型之间的转换

tensor = torch.Tensor(3, 5)
torch.long() 将tensor投射为long类型
newtensor = tensor.long()
torch.int()将该tensor投射为int类型
newtensor = tensor.int()
torch.double()将该tensor投射为double类型
newtensor = tensor.double()

一般,只要在Tensor后加long(), int(), double(), float(), byte()等函数就能将Tensor的类型进行转换
除此之外,可以使用type()函数,data为Tensor数据类型,data.type()给出data的类型,如果使用data.type(torch.FloatTensor)则强制转换为torch.FloatTensor类型的张量, 如果不知道什么类型,可以使用tensor_1.type_as(tensor_2), 将tensor_1转换成tensor_2

self = torch.LongTensor(3, 5)
# 转换为其他类型
print self.type(torch.FloatTensor)

3.cuda数据类型,cpu类型和一般的数据类型

如果没有特别说明:tensor是cpu上的变量
使用gpu张量:tensor.cuda()
使用cpu张量:tensor.cpu()
Variable转换成普通的Tensor: variable.data()
Tesnor转换成numpy array的格式:tensor.numpy()

numpy数据转换成Tensor: torch.from_numpy(np_data)
Tensor转换成Variable: Variable(tensor)

Pytorch数据类似pytorch中的tensor, 更重要的是tensor可以使用GPU来加速,并且变成Variable可以实现自动求导的功能,Variable是对Tensor对象的封装

Copyright © 2019- how234.cn 版权所有 赣ICP备2023008801号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务