pytorch保存最终模型方式:①、直接保存模型,加载模型的时候直接把读取的模型给一个参数就行;②、只保存参数,在读取模型参数前要先定义一个模型(模型必须与原模型相同的构造),然后对这个模型导入参数

pytorch保存最终模型方式:①、直接保存模型,加载模型的时候直接把读取的模型给一个参数就行;②、只保存参数,在读取模型参数前要先定义一个模型(模型必须与原模型相同的构造),然后对这个模型导入参数,第1张

一、直接保存整个模型并读取

第一种方法可以直接保存模型,加载模型的时候直接把读取的模型给一个参数就行。

# 创建你的模型实例对象: model
model = net()
## 保存模型
torch.save(model, 'model_name.pth')

## 读取模型
model = torch.load('model_name.pth')
二、只保存模型中的参数并读取
## 保存模型
torch.save({'model': model.state_dict()}, 'model_name.pth')

## 读取模型
model = net()
state_dict = torch.load('model_name.pth')
model.load_state_dict(state_dict['model'])
三、总结

我们可以看到第一种方法可以直接保存模型,加载模型的时候直接把读取的模型给一个参数就行。

第二种方法则只是保存参数,在读取模型参数前要先定义一个模型(模型必须与原模型相同的构造),然后对这个模型导入参数。虽然麻烦,但是可以同时保存多个模型的参数,而第一种方法则不能,而且第一种方法有时不能保证模型的相同性(你读取的模型并不是你想要的)。




参考资料:
pytorch保存模型的两种方式

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/883969.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-14
下一篇 2022-05-14

发表评论

登录后才能评论

评论列表(0条)

保存