Pytorch中model.eval()的作用分析
model.eval()model.eval() 作用等同于 self.train(False)简而言之,就是评估模式。而非训练模式。在评估模式下,batchNorm层,dropout层等用于优化训练而添加的网络层会被关闭,从而使得评估时不会发生偏移。总结在对模型进行评估时,应该配合使用with torch.no_grad() 与 model.eval():loop:model.train()#
文章共172字 · 阅读需要大约1分钟
一键AI生成摘要,助你高效阅读
问答
·
model.eval()
model.eval() 作用等同于 self.train(False)
简而言之,就是评估模式。而非训练模式。
在评估模式下,batchNorm
层,dropout
层等用于优化训练而添加的网络层会被关闭,从而使得评估时不会发生偏移。
总结
在对模型进行评估时,应该配合使用with torch.no_grad()
与 model.eval()
:
loop:
model.train() # 切换至训练模式
train……
model.eval()
with torch.no_grad():
Evaluation
end loop
如果觉得文章对您有帮助的话,可以点个赞,是对博主最大的肯定!
更多推荐
已为社区贡献3条内容
所有评论(0)