pytorch 模型的train模式与eval模式实例


Posted in Python onFebruary 20, 2020

原因

对于一些含有batch normalization或者是Dropout层的模型来说,训练时的froward和验证时的forward有计算上是不同的,因此在前向传递过程中需要指定模型是在训练还是在验证。

源代码

[docs] def train(self, mode=True):
  r"""Sets the module in training mode.

  This has any effect only on certain modules. See documentations of
  particular modules for details of their behaviors in training/evaluation
  mode, if they are affected, e.g. :class:`Dropout`, :class:`BatchNorm`,
  etc.

  Returns:
   Module: self
  """
  self.training = mode
  for module in self.children():
   module.train(mode)
  return self

[docs] def eval(self):
  r"""Sets the module in evaluation mode.

  This has any effect only on certain modules. See documentations of
  particular modules for details of their behaviors in training/evaluation
  mode, if they are affected, e.g. :class:`Dropout`, :class:`BatchNorm`,
  etc.
  """
  #该方法调用了nn.train()方法,把参数默认值改为false. 增加聚合性
  return self.train(False)

在使用含有BN层,dropout层的神经网路来说,必须要区分训练验证

以上这篇pytorch 模型的train模式与eval模式实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python开发之文件操作用法实例
Nov 13 Python
Python使用tablib生成excel文件的简单实现方法
Mar 16 Python
python实现应用程序在右键菜单中添加打开方式功能
Jan 09 Python
Python浅复制中对象生存周期实例分析
Apr 02 Python
如何用Python实现简单的Markdown转换器
Jul 16 Python
对python for 文件指定行读写操作详解
Dec 29 Python
对python中的控制条件、循环和跳出详解
Jun 24 Python
Tkinter中复选菜单是否被选中的判断与设置方式
Mar 04 Python
在keras里面实现计算f1-score的代码
Jun 15 Python
使用Tensorflow-GPU禁用GPU设置(CPU与GPU速度对比)
Jun 30 Python
Python使用socket模块实现简单tcp通信
Aug 18 Python
python 办公自动化——基于pyqt5和openpyxl统计符合要求的名单
May 25 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
Python3监控疫情的完整代码
Feb 20 #Python
浅谈Pytorch torch.optim优化器个性化的使用
Feb 20 #Python
You might like
用windows下编译过的eAccelerator for PHP 5.1.6实现php加速的使用方法
2007/09/30 PHP
php实现设计模式中的单例模式详解
2014/10/11 PHP
php实现session自定义会话处理器的方法
2015/01/27 PHP
浅析PHP中Session可能会引起并发问题
2015/07/23 PHP
tp5实现微信小程序多图片上传到服务器功能
2018/07/16 PHP
javascript读取xml
2006/11/04 Javascript
js window.onload 加载多个函数的方法
2009/11/02 Javascript
如何获取JQUERY AJAX返回的JSON结果集实现代码
2012/12/10 Javascript
jQuery功能函数详解
2015/02/01 Javascript
JQuery给网页更换皮肤的方法
2015/05/30 Javascript
AngularJS 使用 UI Router 实现表单向导
2016/01/29 Javascript
AngularJS 获取ng-repeat动态生成的ng-model值实例详解
2016/11/29 Javascript
ES6中Proxy代理用法实例浅析
2017/04/06 Javascript
使用 Vue.js 仿百度搜索框的实例代码
2017/05/09 Javascript
实例详解JavaScript中setTimeout函数的执行顺序
2017/07/12 Javascript
在一个页面实现两个zTree联动的方法
2017/12/20 Javascript
JavaScript设计模式之工厂模式和抽象工厂模式定义与用法分析
2018/07/26 Javascript
JavaScript设计模式之命令模式实例分析
2019/01/16 Javascript
微信小程序实现搜索功能并跳转搜索结果页面
2019/05/18 Javascript
Vue2.0 $set()的正确使用详解
2020/07/28 Javascript
Vue-cli assets SubDirectory及PublicPath区别详解
2020/08/18 Javascript
Vue项目开发常见问题和解决方案总结
2020/09/11 Javascript
[06:07]DOTA2-DPC中国联赛3月5日Recap集锦
2021/03/11 DOTA
python中的对象拷贝示例 python引用传递
2014/01/23 Python
Python 实现中值滤波、均值滤波的方法
2019/01/09 Python
解决python cv2.imread 读取中文路径的图片返回为None的问题
2020/06/02 Python
html5 利用canvas手写签名并保存的实现方法
2018/07/12 HTML / CSS
amazeui页面校验功能的实现代码
2020/08/24 HTML / CSS
瑞典灯具和照明网上商店:Lamp24.se
2018/03/17 全球购物
英国天然有机美容护肤品:Neal’s Yard Remedies
2018/05/05 全球购物
美国手工艺品市场的领导者:Annie’s
2019/04/04 全球购物
会计毕业生自我鉴定
2013/11/04 职场文书
工商干部先进事迹
2014/05/14 职场文书
html5调用摄像头实例代码
2021/06/28 HTML / CSS
MYSQL 表的全面总结
2021/11/11 MySQL
pytorch分类模型绘制混淆矩阵以及可视化详解
2022/04/07 Python