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使用paramiko模块实现ssh远程登陆上传文件并执行
Jan 27 Python
python安装PIL模块时Unable to find vcvarsall.bat错误的解决方法
Sep 19 Python
Numpy之文件存取的示例代码
Aug 03 Python
Python高斯消除矩阵
Jan 02 Python
Python数据类型之List列表实例详解
May 08 Python
python2使用bs4爬取腾讯社招过程解析
Aug 14 Python
关于python 的legend图例,参数使用说明
Apr 17 Python
降低python版本的操作方法
Sep 11 Python
Python爬虫之Selenium中frame/iframe表单嵌套页面
Dec 04 Python
Python游戏开发实例之graphics实现AI五子棋
Nov 01 Python
OpenCV实现常见的四种图像几何变换
Apr 01 Python
Python中np.random.randint()参数详解及用法实例
Sep 23 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
一个ORACLE分页程序,挺实用的.
2006/10/09 PHP
php删除字符串末尾子字符,删除开始字符,删除两端字符(实现代码)
2013/06/27 PHP
基于php和mysql的简单的dao类实现crud操作功能
2014/01/27 PHP
PHP对象链式操作实现原理分析
2016/10/09 PHP
PHP实现加密文本文件并限制特定页面的存取的效果
2016/10/21 PHP
解决在Laravel 中处理OPTIONS请求的问题
2019/10/11 PHP
php使用fputcsv实现大数据的导出操作详解
2020/02/27 PHP
学习JS面向对象成果 借国庆发布个最新作品与大家交流
2009/10/03 Javascript
jquery里的each使用方法详解
2010/12/22 Javascript
jQuery对象数据缓存Cache原理及jQuery.data方法区别介绍
2013/04/07 Javascript
onkeydown事件解决按回车键直接提交数据的需求
2013/04/11 Javascript
javascript生成随机大小写字母的方法
2014/02/20 Javascript
JavaScript面对国际化编程时的一些建议
2015/06/24 Javascript
谈谈我对JavaScript原型和闭包系列理解(随手笔记8)
2015/12/24 Javascript
利用Vue v-model实现一个自定义的表单组件
2017/04/27 Javascript
JavaScript数据结构与算法之队列原理与用法实例详解
2017/11/22 Javascript
vue中添加mp3音频文件的方法
2018/03/02 Javascript
Node+OCR实现图像文字识别功能
2018/11/26 Javascript
JavaScript跳出循环的三种方法(break, return, continue)
2019/07/30 Javascript
node.js爬虫框架node-crawler初体验
2020/10/29 Javascript
Python判断变量是否已经定义的方法
2014/08/18 Python
python使用正则表达式替换匹配成功的组并输出替换的次数
2017/11/22 Python
python2.7实现FTP文件下载功能
2018/04/15 Python
对Python中创建进程的两种方式以及进程池详解
2019/01/14 Python
Python3 Click模块的使用方法详解
2020/02/12 Python
Tensorflow中的图(tf.Graph)和会话(tf.Session)的实现
2020/04/22 Python
tensorflow转换ckpt为savermodel模型的实现
2020/05/25 Python
哪些是python中web开发框架
2020/06/17 Python
Melijoe英国官网:法国儿童时尚网站
2016/11/18 全球购物
施华洛世奇天猫官方旗舰店:SWAROVSKI
2017/04/17 全球购物
乌克兰电子和家用电器商店:Foxtrot
2019/07/23 全球购物
"火柴棍式"程序员面试题
2014/03/16 面试题
广告设计专业自荐信范文
2013/11/14 职场文书
邮政竞聘演讲稿
2014/09/03 职场文书
步步惊心观后感
2015/06/12 职场文书
银行柜员工作心得体会
2016/01/23 职场文书