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的。

posted @ 2020-06-14 18:54  lypbendlf  阅读(661)  评论(0编辑  收藏  举报