项目场景:
运行神经网络时,遇到tensor格式不能转numpy报错TypeError: can't convert cuda:0 device type tensor to numpy. Use Tensor.cpu() to copy the tensor to host memory first.
,使用xxx.cpu().numpy()
又报错list have not type of cpu()
原因分析:
输出后发现变量是list里面包含着tensor元素,故又是list又是tensor格式,不可以直接转换。
解决方案:
先将list也转换成tensor格式,再将一整个转换为numpy格式就ok了。
a=torch.Tensor(a).cpu().numpy()