Error:Attempting to deserialize object on a CUDA device but torch.cuda.is_available() is False.

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.

今天再跑目标检测时报的错,应该又是版本的问题。
错误原因:python中安装的pytorch对应的CUDA版本和服务器上的显卡驱动对应的CUDA版本不兼容,显卡驱动对应的CUDA版本应当>=pytorch对应的CUDA版本。(这里显卡驱动对应的CUDA版本为10.1,而安装的pytorch版本为1.7.1+cu110)

显卡驱动对应的CUDA版本获取:执行命令nvidia-smi,右上角CUDA Version对应的就是显卡驱动对应的CUDA版本。
在这里插入图片描述

pytorch版本获取:执行命令pip list。
解决方法:从pytorch历史版本中安装合适的pytorch版本,或者升级显卡驱动。
Error:Attempting to deserialize object on a CUDA device but torch.cuda.is_available() is False._第1张图片

你可能感兴趣的:(解决的bug,深度学习,pytorch,目标检测)