Python 使用状态dict Pytorch保存带权重的模型
我有一个PyTorch模型类,它的statedict带有权重。 我想使用Python 使用状态dict Pytorch保存带权重的模型,python,machine-learning,deep-learning,pytorch,Python,Machine Learning,Deep Learning,Pytorch,我有一个PyTorch模型类,它的statedict带有权重。 我想使用torch.save(model,PATH)将模型及其权重直接保存在.pt文件中,但这只是再次保存状态dict 如何保存包含已加载权重的模型 我现在在做什么 lin_model = ModelClass(args) lin_model.load_state_dict(torch.load('state_dict.pt')) torch.save(lin_model, PATH) 我希望新保存的模型是一个完全加载的pt文件。
torch.save(model,PATH)
将模型及其权重直接保存在.pt文件中,但这只是再次保存状态dict
如何保存包含已加载权重的模型
我现在在做什么
lin_model = ModelClass(args)
lin_model.load_state_dict(torch.load('state_dict.pt'))
torch.save(lin_model, PATH)
我希望新保存的模型是一个完全加载的pt文件。请在此帮助我,提前谢谢。根据pytorch文档,当您使用
torch.save(model,PATH)
时,它会将整个模型与类一起保存。但问题是。它不是每次都有效。您可以看到,保存的模型是pickle格式的,但是pickle文件并不保存确切的目录结构,只保存到包含模型类的文件的路径。因此,在其他项目中使用这种保存方法时,可能会以各种方式出现故障。我如何克服这种情况?这种情况有时会发生,但并不总是发生!您必须保留类以加载检查点文件。这是最好的做法。