Pytorch保存模型用于测试和用于继续训练的区别详解


Posted in Python onJanuary 10, 2020

保存模型

保存模型仅仅是为了测试的时候,只需要

torch.save(model.state_dict, path)

path 为保存的路径

但是有时候模型及数据太多,难以一次性训练完的时候,而且用的还是 Adam优化器的时候, 一定要保存好训练的优化器参数以及epoch

state = { 'model': model.state_dict(), 'optimizer':optimizer.state_dict(), 'epoch': epoch }  
torch.save(state, path)

因为这里

def adjust_learning_rate(optimizer, epoch):
  lr_t = lr
  lr_t = lr_t * (0.3 ** (epoch // 2))
  for param_group in optimizer.param_groups:
    param_group['lr'] = lr_t

学习率是根据epoch变化的, 如果不保存epoch的话,基本上每次都从epoch为0开始训练,这样学习率就相当于不变了!!

恢复模型

恢复模型只用于测试的时候,

model.load_state_dict(torch.load(path))

path为之前存储模型时的路径

但是如果是用于继续训练的话,

checkpoint = torch.load(path)
model.load_state_dict(checkpoint['model'])
optimizer.load_state_dict(checkpoint['optimizer'])
start_epoch = checkpoint['epoch']+1

依次恢复出模型 优化器参数以及epoch

以上这篇Pytorch保存模型用于测试和用于继续训练的区别详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python3中类、模块、错误与异常、文件的简易教程
Nov 20 Python
Python方法的延迟加载的示例代码
Dec 18 Python
python代码实现ID3决策树算法
Dec 20 Python
Python3.5文件读与写操作经典实例详解
May 01 Python
哈工大自然语言处理工具箱之ltp在windows10下的安装使用教程
May 07 Python
详解pandas获取Dataframe元素值的几种方法
Jun 14 Python
python 识别登录验证码图片功能的实现代码(完整代码)
Jul 03 Python
python的flask框架难学吗
Jul 31 Python
如何利用Python给自己的头像加一个小国旗(小月饼)
Oct 02 Python
python基于Kivy写一个图形桌面时钟程序
Jan 28 Python
详解matplotlib绘图样式(style)初探
Feb 03 Python
Python中Schedule模块使用详解 周期任务神器
Apr 19 Python
使用pytorch完成kaggle猫狗图像识别方式
Jan 10 #Python
解决Pytorch 加载训练好的模型 遇到的error问题
Jan 10 #Python
Ubuntu16.04安装python3.6.5步骤详解
Jan 10 #Python
Pytorch 保存模型生成图片方式
Jan 10 #Python
在pytorch中对非叶节点的变量计算梯度实例
Jan 10 #Python
python如何获取apk的packagename和activity
Jan 10 #Python
浅谈pytorch卷积核大小的设置对全连接神经元的影响
Jan 10 #Python
You might like
PHP sprintf() 函数的应用(定义和用法)
2012/06/29 PHP
ThinkPHP框架整合微信支付之刷卡模式图文详解
2019/04/10 PHP
PHP+redis实现的限制抢购防止商品超发功能详解
2019/09/19 PHP
用JavaScript玩转游戏物理(一)运动学模拟与粒子系统
2010/06/19 Javascript
禁止选中文字兼容IE、Chrome、FF等
2013/09/04 Javascript
js编码、解码函数介绍及其使用示例
2013/09/05 Javascript
jquery form 加载数据示例
2014/04/21 Javascript
Highcharts学习之坐标轴
2016/08/02 Javascript
jQuery动态改变多行文本框高度的方法
2016/09/07 Javascript
基于jQuery制作小图标上下滑动特效
2017/01/18 Javascript
yii form 表单提交之前JS在提交按钮的验证方法
2017/03/15 Javascript
JS实现的透明度渐变动画效果示例
2018/04/28 Javascript
基于vue框架手写一个notify插件实现通知功能的方法
2019/03/31 Javascript
[02:44]DOTA2英雄基础教程 克林克兹
2014/01/15 DOTA
[03:06]2018年度CS GO最具人气解说-完美盛典
2018/12/16 DOTA
[54:10]完美世界DOTA2联赛PWL S2 Magma vs FTD 第二场 11.29
2020/12/03 DOTA
使用python调用浏览器并打开一个网址的例子
2014/06/05 Python
简单的抓取淘宝图片的Python爬虫
2014/12/25 Python
python3读取excel文件只提取某些行某些列的值方法
2018/07/10 Python
利用python画出折线图
2018/07/26 Python
python 利用文件锁单例执行脚本的方法
2019/02/19 Python
python 多线程对post请求服务器测试并发的方法
2019/06/13 Python
python实现QQ邮箱发送邮件
2020/03/06 Python
Python爬虫UA伪装爬取的实例讲解
2021/02/19 Python
CSS3制作翻转效果_动力节点Java学院整理
2017/07/11 HTML / CSS
英国最大的海报商店:GB Posters
2018/03/20 全球购物
数组越界问题
2015/10/21 面试题
C#如何调用Word并打开一个Word文档
2013/05/08 面试题
2014中学教师节广播稿
2014/09/10 职场文书
孝老爱亲事迹材料
2014/12/24 职场文书
2015年学校工作总结范文
2015/04/20 职场文书
2015年母亲节活动策划方案
2015/05/04 职场文书
甲午大海战观后感
2015/06/02 职场文书
《浅水洼里的小鱼》教学反思
2016/02/16 职场文书
你离财务总监还有多远?速览CFO的岗位职责
2019/11/18 职场文书
《艾尔登法环》1.03.3补丁上线 碎星伤害调整
2022/04/06 其他游戏