在MLU370上保存模型、读取模型时候报错

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.

在MLU上保存与加载模型的时候,报上面的错误:

torch.save(model.state_dict(), 'my_model.pth')

model.load_state_dict(torch.load('my_model.pth'))

在MLU370上保存模型、读取模型时候报错_第1张图片

报错代码在torch.load(函数中)

检查了mlu的device正常

解决办法:

原因是保存时候,model在mlu或者cuda上,需要先将模型移动到cpu设备上

model = model.to('cpu')

然后

torch.save(model.state_dict(), 'my_model.pth')

即可解决问题。

你可能感兴趣的:(深度学习,人工智能,pytorch)