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爬虫之爬虫的定义及URL构成
Nov 04 Python
Windows下用py2exe将Python程序打包成exe程序的教程
Apr 08 Python
Python实现线程池代码分享
Jun 21 Python
python解析html提取数据,并生成word文档实例解析
Jan 22 Python
用python生成1000个txt文件的方法
Oct 25 Python
只需7行Python代码玩转微信自动聊天
Jan 27 Python
Python使用字典的嵌套功能详解
Feb 27 Python
Python3.4学习笔记之类型判断,异常处理,终止程序操作小结
Mar 01 Python
Python通过递归获取目录下指定文件代码实例
Nov 07 Python
解决django后台管理界面添加中文内容乱码问题
Nov 15 Python
基于Python实现下载网易音乐代码实例
Aug 10 Python
Python中的np.argmin()和np.argmax()函数用法
Jun 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
采用thinkphp自带方法生成静态html文件详解
2014/06/13 PHP
PHP中提问频率最高的11个面试题和答案
2014/09/02 PHP
php+jQuery ajax实现的实时刷新显示数据功能示例
2019/09/12 PHP
不用写JS也能使用EXTJS视频演示
2008/12/29 Javascript
javascript 面向对象全新理练之继承与多态
2009/12/03 Javascript
javascript获取隐藏元素(display:none)的高度和宽度的方法
2014/06/06 Javascript
JavaScript中数据结构与算法(四):串(BF)
2015/06/19 Javascript
JS实现弹性漂浮效果的广告代码
2015/09/02 Javascript
jquery UI Datepicker时间控件的使用方法(终结版)
2015/11/07 Javascript
JavaScript学习笔记之数组去重
2016/03/23 Javascript
JS弹出窗口插件zDialog简单用法示例
2016/06/12 Javascript
浅析location.href跨窗口调用函数
2016/11/22 Javascript
js自制图片放大镜功能
2017/01/24 Javascript
jQuery插件echarts实现的多折线图效果示例【附demo源码下载】
2017/03/04 Javascript
微信小程序实战之自定义toast(6)
2017/04/18 Javascript
JavaScript ES6中const、let与var的对比详解
2017/06/18 Javascript
浅谈Webpack核心模块tapable解析
2018/09/11 Javascript
在vue-cli的组件模板里使用font-awesome的两种方法
2018/09/28 Javascript
微信小程序实现手势滑动效果
2019/08/26 Javascript
微信小程序 接入腾讯地图的两种写法
2021/01/12 Javascript
[55:45]LGD vs OG 2019国际邀请赛淘汰赛 胜者组 BO3 第三场 8.24
2019/09/10 DOTA
[03:15]DOTA2-DPC中国联赛1月22日Recap集锦
2021/03/11 DOTA
MySQL适配器PyMySQL详解
2017/09/20 Python
Python插件virtualenv搭建虚拟环境
2017/11/20 Python
Python+pandas计算数据相关系数的实例
2018/07/03 Python
Python get获取页面cookie代码实例
2018/09/12 Python
python 去除二维数组/二维列表中的重复行方法
2019/01/23 Python
Django如何简单快速实现PUT、DELETE方法
2019/07/24 Python
Python能做什么
2020/06/02 Python
关于递归的一道.NET面试题
2013/05/12 面试题
捐书活动总结
2014/05/04 职场文书
法语专业求职信
2014/07/20 职场文书
售房委托书
2014/08/30 职场文书
学会感恩主题班会
2015/08/12 职场文书
党风廉政承诺书2016
2016/03/25 职场文书
使用Nginx的访问日志统计PV与UV
2022/05/06 Servers