model.train() model.eval()

https://blog.csdn.net/ccbrid/article/details/80573253

https://blog.csdn.net/Z_lbj/article/details/79672888

主要是针对model 在训练时和评价时不同的Batch NormalizationDropout 方法模式。

https://blog.csdn.net/jinxin521125/article/details/78435899

eval()时,pytorch会自动把BN和DropOut固定住,不会取平均,而是用训练好的值。

不然的话,一旦test的batch_size过小,很容易就会被BN层导致生成图片颜色失真极大。

https://zhuanlan.zhihu.com/p/26893755

model.eval(),让model变成测试模式,对dropout和batch normalization的操作在训练和测试的时候是不一样的

你可能感兴趣的:(model.train() model.eval())