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 相关文章推荐
布同 统计英文单词的个数的python代码
Mar 13 Python
Python可变参数函数用法实例
Jul 07 Python
Python实现二分查找与bisect模块详解
Jan 13 Python
Python实现Pig Latin小游戏实例代码
Feb 02 Python
python在html中插入简单的代码并加上时间戳的方法
Oct 16 Python
python实现远程控制电脑
May 23 Python
学习和使用python的13个理由
Jul 30 Python
python正则爬取某段子网站前20页段子(request库)过程解析
Aug 10 Python
深入理解Python 多线程
Jun 16 Python
使用Python项目生成所有依赖包的清单方式
Jul 13 Python
python实现双人五子棋(终端版)
Dec 30 Python
python+playwright微软自动化工具的使用
Feb 02 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
PHPThumb PHP 图片缩略图库
2012/03/11 PHP
与文件上传有关的php配置参数总结
2013/06/14 PHP
PHP 面向对象程序设计(oop)学习笔记 (四) - 异常处理类Exception
2014/06/12 PHP
ThinkPHP2.x防范XSS跨站攻击的方法
2015/09/25 PHP
PHP扩展Memcache分布式部署方案
2015/12/06 PHP
PHP数组去重比较快的实现方式
2016/01/19 PHP
php json转换相关知识(小结)
2018/12/21 PHP
use jscript Create a SQL Server database
2007/06/16 Javascript
JAVASCRIPT下判断IE与FF的比较简单的方式
2008/10/17 Javascript
javascript动态改变img的src属性图片不显示的解决方法
2010/10/20 Javascript
js倒计时小程序
2013/11/05 Javascript
深入理解javascript构造函数和原型对象
2014/09/23 Javascript
ie8模式下click无反应点击option无反应的解决方法
2014/10/11 Javascript
基于bootstrap插件实现autocomplete自动完成表单
2016/05/07 Javascript
通过网页查看JS源码中汉字显示乱码的解决方法
2016/10/26 Javascript
nodejs和php实现图片访问实时处理
2017/01/05 NodeJs
Vue2 Vue-cli中使用Typescript的配置详解
2017/07/24 Javascript
vue实现标签云效果的方法详解
2019/08/28 Javascript
python中readline判断文件读取结束的方法
2014/11/08 Python
使用Python开发SQLite代理服务器的方法
2018/12/07 Python
PyTorch搭建一维线性回归模型(二)
2019/05/22 Python
使用Python检测文章抄袭及去重算法原理解析
2019/06/14 Python
使用 Python 快速实现 HTTP 和 FTP 服务器的方法
2019/07/22 Python
用OpenCV将视频分解成单帧图片,图片合成视频示例
2019/12/10 Python
使用Python操作ArangoDB的方法步骤
2020/02/02 Python
python爬虫开发之urllib模块详细使用方法与实例全解
2020/03/09 Python
python读取hdfs并返回dataframe教程
2020/06/05 Python
Python性能测试工具Locust安装及使用
2020/12/01 Python
详解Python中@staticmethod和@classmethod区别及使用示例代码
2020/12/14 Python
css3进阶之less实现星空动画的示例代码
2019/09/10 HTML / CSS
新西兰廉价汽车租赁:Snap Rentals
2018/09/14 全球购物
2019年分享net面试的经历和题目
2016/08/07 面试题
电力公司个人求职信范文
2014/02/04 职场文书
离婚协议书范本样本
2014/08/19 职场文书
使用Springboot实现健身房管理系统
2021/07/01 Java/Android
Java使用JMeter进行高并发测试
2021/11/23 Java/Android