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 相关文章推荐
pycharm安装图文教程
May 02 Python
Python实现的计数排序算法示例
Nov 29 Python
Python程序退出方式小结
Dec 09 Python
Python 打印中文字符的三种方法
Aug 14 Python
TensorFlow实现iris数据集线性回归
Sep 07 Python
python去重,一个由dict组成的list的去重示例
Jan 21 Python
PyQt5实现让QScrollArea支持鼠标拖动的操作方法
Jun 19 Python
如何利用Python模拟GitHub登录详解
Jul 15 Python
python实现按首字母分类查找功能
Oct 31 Python
python实现监控阿里云账户余额功能
Dec 16 Python
Django 项目布局方法(值得推荐)
Mar 22 Python
Python3爬虫里关于Splash负载均衡配置详解
Jul 10 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基础学习之流程控制的实现分析
2013/04/28 PHP
PHP多进程编程之僵尸进程问题的理解
2017/10/15 PHP
PHP容器类的两种实现方式示例
2019/07/24 PHP
JQuery 绑定事件时传递参数的实现方法
2009/10/13 Javascript
Span元素的width属性无效果原因及解决方案
2010/01/15 Javascript
Javascript 面向对象 继承
2010/05/13 Javascript
JavaScript初学者应注意的七个细节小结
2012/01/30 Javascript
用表格输出1-1000之间的数字实现代码(附特效)
2013/04/21 Javascript
js点击列表文字对应该行显示背景颜色的实现代码
2015/08/05 Javascript
JS绘制生成花瓣效果的方法
2015/08/05 Javascript
jQuery实现仿百度帖吧头部固定导航效果
2015/08/07 Javascript
JS实现仿QQ效果的三级竖向菜单
2015/09/25 Javascript
jQuery Validate插件实现表单强大的验证功能
2015/12/18 Javascript
js根据手机客户端浏览器类型,判断跳转官网/手机网站多个实例代码
2016/04/30 Javascript
Highcharts学习之数据列
2016/08/03 Javascript
jQuery 移动端拖拽(模块化开发,触摸事件,webpack)
2016/10/28 Javascript
Bootstrap文件上传组件之bootstrap fileinput
2016/11/25 Javascript
详解微信小程序开发之城市选择器 城市切换
2017/01/17 Javascript
Vue.directive自定义指令的使用详解
2017/03/10 Javascript
学习使用Bootstrap页面排版样式
2017/05/11 Javascript
three.js 入门案例详解
2018/01/23 Javascript
详解Vue前端对axios的封装和使用
2019/04/01 Javascript
使用 node.js 模仿 Apache 小部分功能
2019/07/07 Javascript
js实现简单放大镜效果
2020/03/07 Javascript
[02:39]DOTA2英雄基础教程 天怒法师
2013/11/29 DOTA
Python列表list内建函数用法实例分析【insert、remove、index、pop等】
2017/07/24 Python
实例讲解python中的序列化知识点
2018/10/08 Python
python 实现对文件夹中的图像连续重命名方法
2018/10/25 Python
pyqt5 获取显示器的分辨率的方法
2019/06/18 Python
python中有关时间日期格式转换问题
2019/12/25 Python
Python基于time模块表示时间常用方法
2020/06/18 Python
Python3与fastdfs分布式文件系统如何实现交互
2020/06/23 Python
Saucony澳大利亚官网:美国跑鞋品牌,运动鞋中的劳斯莱斯
2018/05/05 全球购物
前台文员岗位职责
2013/12/28 职场文书
学生会宣传部竞选稿
2015/11/21 职场文书
pandas DataFrame.shift()函数的具体使用
2021/05/24 Python