报错内容:RuntimeError: Attempting to deserialize object on a CUDA device but torch.cuda.is_available() is False. If you are running on a CPU-only machine, please use torch.load with map_location=torch.device('cpu') to map your storages to the CPU.
错误描述:我们通常使用CUDA来训练网络模型,在训练完之后,我们会直接将模型进行保存。然后我们换一个没有CUDA的机器加载模型权重,再次运行该程序的时候,就会报如上错误。
解决方案:在torch.load中加入map_location='cpu'
或者map_location=torch.device('cpu')
torch.load(param_path, map_location='cpu')
注意还需要将代码中所有的.cuda()
删除
网友评论