Pytorch数据类型与转换的方法有哪些(pytorch,开发技术)

时间:2024-04-29 15:46:04 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

Pytorch数据类型与转换(torch.tensor,torch.FloatTensor)

一、torch.tensor

1.首先讲下torch.tensor,默认整型数据类型为torch.int64,浮点型为torch.float32

Pytorch数据类型与转换的方法有哪些

2.这是我认为平常最爱用的转数据类型的方法,可以用dtype去定义数据类型

Pytorch数据类型与转换的方法有哪些

二、torch.FloatTensor

1.这个函数不要乱用,首先它可以将变量转化为浮点型32位,这里注意此时的变量类型为列表,或数组等,此时参数为单个变量

Pytorch数据类型与转换的方法有哪些

2.当函数参数为整形时,表示生成矩阵的维度,此时参数可以为多个变量

Pytorch数据类型与转换的方法有哪些

补充:还有一种方法通过numpy数组定义数据类型,再转化为tensor,这个方法不多讲了。

扩展: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=torch.long()##torch.int()将该tensor投射为int类型:newtensor=torch.int()##torch.double()将该tensor投射为double类型:newtensor=torch.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)#转换为其他类型printself.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对象的封装。

逻辑值True和False转成0和1. +0

print(y)print(y+0)##输出结果tensor([True,False,False,True,True,False,False,True,True,False])tensor([1,0,0,1,1,0,0,1,1,0])
 </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
本文:Pytorch数据类型与转换的方法有哪些的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:SharedPreference引发ANR原理是什么下一篇:

3 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18