python torch报错 result = unpickler.load()ModuleNotFoundError: No module named 'models'

将2个项目合并的时候,把文件夹A塞到文件夹B中,作为一个子文件夹,文件夹A中有一个已经训练好的.pth模型文件,B调用A以加载这个模型的时候,出现了题目中的报错,具体情况如下图


image.png

时间久远,忘记这个.pth模型是怎么save的了,但是查了资料发现可能是因为这个模型保存了除模型参数之外其他的参数,因为涉及到文件的具体位置,所以在将A塞到B中的时候就会发生错误,由于旧的.pth保留的好,就将其重新load然后仅取其中的模型参数再save成新的.pth模型

···

重新加载和save代码

package = torch.load(model_path)
p = './static_dict.pth'
torch.save(package.state_dict(), p)
···

···

调用新的模型代码

model = Model_CNN()
model.load_state_dict(torch.load(model_path))
model.eval()
model = model.to(device)
···

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容