编辑PKL模型文件以使其能够在CPU上运行(而不是使用CUDA)

时间:2019-11-12 11:25:52

标签: model pytorch scikit-image

我最近进入了机器学习领域,并且使用PyTorch从我的朋友那里得到了一个模型。 问题在于该代码已写入CUDA(因此有Variable(a).cuda()代码段)。 我用Python代码对其进行了编辑,但由于该模型中包含Cuda代码,因此无法正常工作。

我使用torch.load加载模型。

torch.load('specModel.pkl', map_location='cpu')

该模型包含torch.nn.DataParallel,这对于仅使用CPU来说是有问题的。

self.cnn = myCNN()
self.cnn = torch.nn.DataParallel(self.cnn)

我尝试使用Notepad ++修改pkl文件,但是如果修改它,我将无法读取模型。 有什么方法可以修改模型,或者我的朋友应该不使用DataParallel(和.cuda()运算符)重新训练模型并将其发送给我吗?

编辑:如果不修改pkl模型,我将得到原始错误:

  

AttributeError:“ DataParallel”对象没有属性“ src_device_obj”

0 个答案:

没有答案