• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

pytorch tensor和 numpy的相互转换

武飞扬头像
木禾DING
帮助1

tensor 转换为 numpy

采用 .numpy() 函数即可

a=torch.tensor([1,2,3])  
print(a)
print(type(a))
print(a.dtype)
b=a.numpy()
print(b)
print(type(b))
print(b.dtype)

输出:

学新通

torch.tensor 整数默认为 int64 即 LongTensor 小数默认为 float32
不过 一般对tensor 采用 tensor.data() 或者 tensor.detach() 来将变量脱离计算图,不计算梯度。

numpy 转换为 tensor

有两种函数
一种是
torch.from_numpy()

第二种是
torch.tensor() 其中用这种,还可以转换数据类型

a=np.array([1,2,3])
print(a)
print(type(a))
print(a.dtype)
b=torch.from_numpy(a)
# b=torch.tensor(a)
print(b)
print(type(b))
print(b.dtype)

学新通

Pytorch中定义了8种CPU张量类型和对应的GPU张量类型
torch.FloatTensor(2,3) #构建一个2*3 Float类型的张量   torch.float32
torch.DoubleTensor(2,3) #构建一个2*3 Double类型的张量   torch.float64
torch.HalfTensor (2,3) #构建一个2*3 HalfTenso类型的张量
torch.ByteTensor(2,3) #构建一个2*3 Byte类型的张量
torch.CharTensor(2,3) #构建一个2*3 Char类型的张量
torch.ShortTensor(2,3) #构建一个2*3 Short类型的张量
torch.IntTensor(2,3) #构建一个2*3 Int类型的张量    torch.int32
torch.LongTensor(2,3) #构建一个2*3 Long类型的张量   torch.int64

学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgcfeee
系列文章
更多 icon
同类精品
更多 icon
继续加载