当我们用DataParallel训练了一个模型之后,又希望在cpu上run在一下模型,这个时候我们会首先建立模型图
model = Mymodel(agrs)
之后我们可能会run如下语句:
model.load_state_dict(torch.load(model_path),,map_location=lambda storage, loc: storage)
这个时候就会报错AttributeError: ‘DataParallel’ object has no attribute ‘copy’
我们将代码改为如下:
model.load_state_dict(torch.load(model_path,map_location=lambda storage, loc: storage).module.state_dict())
问题即可解决!代码可在cpu设备运行
版权声明:本文为qq_33768643原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。