pytorch:model.train和model.eval用法及区别详解


Posted in Python onFebruary 20, 2020

使用PyTorch进行训练和测试时一定注意要把实例化的model指定train/eval,eval()时,框架会自动把BN和DropOut固定住,不会取平均,而是用训练好的值,不然的话,一旦test的batch_size过小,很容易就会被BN层导致生成图片颜色失真极大!!!!!!

Class Inpaint_Network()
 ......

Model = Inpaint_Nerwoek()
 
#train:

Model.train(mode=True)

.....

#test:

Model.eval()

model.train()

启用 BatchNormalization 和 Dropout

model.eval()

不启用 BatchNormalization 和 Dropout

训练完train样本后,生成的模型model要用来测试样本。在model(test)之前,需要加上model.eval(),否则的话,有输入数据,即使不训练,它也会改变权值。这是model中含有batch normalization层所带来的的性质。

在做one classification的时候,训练集和测试集的样本分布是不一样的,尤其需要注意这一点。

以上这篇pytorch:model.train和model.eval用法及区别详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Python下进行UDP网络编程的教程
Apr 29 Python
详解在Python的Django框架中创建模板库的方法
Jul 20 Python
python进程管理工具supervisor的安装与使用教程
Sep 05 Python
200 行python 代码实现 2048 游戏
Jan 12 Python
python实现聚类算法原理
Feb 12 Python
python3.6.3转化为win-exe文件发布的方法
Oct 31 Python
详解python函数的闭包问题(内部函数与外部函数详述)
May 17 Python
python tkinter窗口最大化的实现
Jul 15 Python
python爬虫 基于requests模块的get请求实现详解
Aug 20 Python
python中class的定义及使用教程
Sep 18 Python
opencv resize图片为正方形尺寸的实现方法
Dec 26 Python
Python Dict找出value大于某值或key大于某值的所有项方式
Jun 05 Python
浅谈PyTorch的可重复性问题(如何使实验结果可复现)
Feb 20 #Python
pytorch 模型的train模式与eval模式实例
Feb 20 #Python
pytorch dataloader 取batch_size时候出现bug的解决方式
Feb 20 #Python
pytorch 使用加载训练好的模型做inference
Feb 20 #Python
pytorch中的inference使用实例
Feb 20 #Python
python encrypt 实现AES加密的实例详解
Feb 20 #Python
Python关于反射的实例代码分享
Feb 20 #Python
You might like
APMServ使用说明
2006/10/23 PHP
php 函数中使用static的说明
2012/06/01 PHP
php更新修改excel中的内容实例代码
2014/02/26 PHP
PHP进制转换实例分析(2,8,16,36,64进制至10进制相互转换)
2017/02/04 PHP
javascript document.compatMode兼容性
2010/02/23 Javascript
读jQuery之五(取DOM元素)
2011/06/20 Javascript
jquery修改属性值实例代码(设置属性值)
2014/01/06 Javascript
js操作数组函数实例小结
2015/12/10 Javascript
jQuery拖动元素并对元素进行重新排序
2015/12/30 Javascript
JavaScript原生对象常用方法总结(推荐)
2016/05/13 Javascript
Angular 4.x 动态创建表单实例
2017/04/25 Javascript
layui导航栏实现代码
2017/05/19 Javascript
Javascript 实现匿名递归的实例代码
2017/05/25 Javascript
基于pako.js实现gzip的压缩和解压功能示例
2017/06/13 Javascript
React操作真实DOM实现动态吸底部的示例
2017/10/23 Javascript
如何把vuejs打包出来的文件整合到springboot里
2018/07/26 Javascript
JS实现HTML页面中动态显示当前时间完整示例
2018/07/30 Javascript
深入浅析angular和vue还有jquery的区别
2018/08/13 jQuery
vue2.0获取鼠标位置的方法
2018/09/13 Javascript
微信小程序实现滚动Tab选项卡
2020/11/16 Javascript
[00:35]DOTA2上海特级锦标赛 EG战队宣传片
2016/03/04 DOTA
在Windows8上的搭建Python和Django环境
2014/07/03 Python
python中单例常用的几种实现方法总结
2018/10/13 Python
Python 访问限制 private public的详细介绍
2018/10/16 Python
python操作excel让工作自动化
2019/08/09 Python
Python处理session的方法整理
2019/08/29 Python
Django框架下静态模板的继承操作示例
2019/11/08 Python
戛纳奢侈品商店:Jacques Loup法国
2019/11/04 全球购物
麦当劳印度网上订餐:McDelivery
2020/03/16 全球购物
介绍一下MYSQL常用的优化技巧
2012/10/25 面试题
应届毕业生个人求职自荐信
2014/01/06 职场文书
小学生期末自我鉴定
2014/01/19 职场文书
学校教师读书活动总结
2014/07/08 职场文书
小班下学期幼儿评语
2014/12/30 职场文书
2015年国庆晚会主持词
2015/07/01 职场文书
解决Pytorch修改预训练模型时遇到key不匹配的情况
2021/06/05 Python