Pytorch的训练模式和测试模式切换
使用时切记要根据实际情况切换:
model.train()
model.eval()

一般训练时候:

net = NoduleNet()
net = net.cuda()
cudnn.benchmark = True
net = DataParallel(net)
net.train()

测试时候:

net = NoduleNet()
net = net.cuda()
net = DataParallel(net)
net.eval()

针对model 在训练时和测试的时候不同的 Batch Normalization  和  Dropout 方法模式所以要切换.

但是在我的测试下相同的数据,不同次的测试结果还是会不一样.虽然是在一定范围内波动.但是还是不爽.

https://blog.csdn.net/kangk_521/article/details/81225787这篇博客让我知道,原来是在跑evaluation的时候,因为dropout的存在,每次运行会随机丢一些中间结果,从而导致最终结果有差异.而他给的方法我不太明白

http://www.cnblogs.com/king-lps/p/8570021.html博文说 eval即evaluation模式,train即训练模式。仅仅当模型中有DropoutBatchNorm是才会有影响。因为训练时dropout和BN都开启,而一般而言测试时dropout被关闭,BN中的参数也是利用训练时保留的参数,所以测试时应进入评估模式。 但是按照他的说法应该测试结果不变才对啊.

3Dcnn 降假阳性模型调试(八)相关推荐

  1. 3Dcnn 降假阳性模型调试(七)

    ps:3Dcnn 降假阳性模型调试的四,五和六我就不公开了.一直都在调试解决cpu数据读入速度慢的问题(现在速度到达了550fps是最慢的时候1000多倍啊!!!,时间差了多少啊!!!).最后还是没有 ...

  2. 3Dcnn 降假阳性模型调试(一)

    3Dcnn模型网上很多,我是在github上找的,根据自己的理解再改了下.具体就不贴了,下面重点讲讲我输入数据的变化. 1.一开始直接根据luna16数据中的candidates_V2.csv中标记的 ...

  3. 3Dcnn 降假阳性模型调试(三)

    ps看清了上面问题的本质,我尝试来调整批次大小以及多进程数(也就是torch的DataLoader函数的参数)来看看怎么样可以加快运行速度.(同时会看下cup负载和gpu占用率).先根据自己的回忆大致 ...

  4. 3Dunet 降假阳性模型预处理

    ps前段时间一直在将肺结节检测和3Dcnn降阳性模型封装到一起.输入一个检查输出检测结果插入数据库.同时编写接口供前端和中间件调用.可检测结果的去假阳性这步还是不太令人满意.故再用3Dunet 降假阳 ...

  5. 深度学习模型调试和监控(7.2)

    Keras 高级用法:函数式 API 7.1(二) Keras 高级用法:函数式 API 7.1(一) 7.2 深度学习模型调试和监控 本小节学习如何监控模型训练的过程. 7.2.1 模型训练中应用回 ...

  6. Java内存模型 - 同步八种操作

    Java 内存模型 - 同步操作与规则 Java内存模型 - 同步八种操作 锁定(lock): 作用于主内存中的变量,将他标记为一个线程独享变量. 通常意义上的上锁,就是一个线程正在使用时,其他线程必 ...

  7. PGL图学习之图神经网络ERNIESage、UniMP进阶模型[系列八]

    PGL图学习之图神经网络ERNIESage.UniMP进阶模型[系列八] 原项目链接:fork一下即可:https://aistudio.baidu.com/aistudio/projectdetai ...

  8. abaqus直齿轮斜齿轮等相关模型调试,xfem裂纹扩展,磨损子程序

    abaqus直齿轮斜齿轮等相关模型调试,xfem裂纹扩展,磨损子程序,matlab齿轮刚度数值仿真求解,裂纹磨损故障齿轮刚度,abaqus模型调试:abaqus稳态 瞬态温度场分析,matlab斜齿轮 ...

  9. SWAT模型十八个案例

    详情点击链接:SWAT模型十八项案例分析 一:基于网络资源的SWAT模型快速建模 二:基于遥感产品的SWAT模型率定与验证 三:基于水文响应单元(HRU)的水资源时空分布特征 四:基于自定义流域与河道 ...

最新文章

  1. 把集成测试和单元测试写一起是一种什么体验?
  2. openwrt配置内核驱动_openwrt增加内核模块的方法
  3. 完美解决:python报错:‘utf-8‘ codec can‘t decode byte 0xa1 in position 56: invalid start byte
  4. Spring 详解(三):AOP 面向切面的编程
  5. (三) 类图和对象图
  6. Making Sense of Cryptoeconomics
  7. 「Python」ubuntu使用make命令安装python(带详细解释和防坑指南)
  8. JVM从入门到精通(七):GC常用参数,Method Area,JVM调优案例分析
  9. JPA –我应该成为懒惰的极端主义者吗?
  10. 怎样呵护友谊_【家校联动共同呵护孩子健康成长科普课堂】关爱学生心理健康,守护学生健康成长...
  11. 【转】eclipse 自动关闭总结
  12. 迁移实战:一次AntDB(基于pgxl分布式架构的数据库)数据库迁移经验分享
  13. android 自定义button,android – 如何添加自定义按钮状态
  14. python拆分合并文件_python实现文件的分割与合并
  15. C#中英文字符串固定长度换行
  16. 归纳整理一些工作学习中发现的不错的网站、博客地址等(转载)
  17. cisco 交换机 获取 转发表_看完这份1113页的TCP/IP协议+路由与交换机,成功上岸字节跳动...
  18. 力扣算法题用c语言实现,刷题-力扣-25
  19. Windows7电脑自动断网的解决方法
  20. 基于TCP协议的游戏代理接口测试工具<二>:工具架构与代理主体实现

热门文章

  1. H3C之虚拟路由器冗余协议(VRRP)的原理及应用
  2. 每首歌都保存着一份记忆
  3. 【转】揭开Linux的Swap之谜
  4. IE下get传中文乱码的问题完美解决方案
  5. 【原创】ABAP根据文件路径获取文件所在目录
  6. 有关linux信号汇总
  7. Java常用类库-AutoCloseable
  8. 微信小程序怎么性能测试
  9. 数据库-MySQL中间的注释
  10. 计算机等级报考备注填什么用,计算机二级有什么用