numpy.copy和torch.tensor的cpu/gpu

Posted bluebluesea

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了numpy.copy和torch.tensor的cpu/gpu相关的知识,希望对你有一定的参考价值。

1.在cpu上

import torch
import numpy as np
a=torch.tensor(2)
b=np.copy(a)

#
>>> b
array(2, dtype=int64)

 

在cpu上是没有可以随意转换的,但是如果这样:

import torch
import numpy as np
a=torch.tensor(2)
a=a.to("cuda:0")
b=np.copy(a)

 

就会报错:

TypeError: can‘t convert CUDA tensor to numpy. Use Tensor.cpu() to copy the tensor to host memory first.

 所以要把a转换到cpu上

技术图片

 

 这样是ok的。

以上是关于numpy.copy和torch.tensor的cpu/gpu的主要内容,如果未能解决你的问题,请参考以下文章

关于类型为numpy,TensorFlow.tensor,torch.tensor的shape变化以及相互转化

torch.tensor() 和 torch.to_tensor() 的区别

PyTorch中的torch.Tensor.view()和torch.Tensor.view_as()的用法详解

PyTorch中的torch.Tensor.permute()和torch.Tensor.transpose()的区别

Tips pytorch reshape()函数的用法

PyTorch简明教程torch.Tensor()与torch.tensor()的区别