PyTorch中的train()方法和eval()方法的作用和区别

pytorch可以给我们提供两种方式来
切换训练和评估(推断)的模式。分别是:
model.train()和model.eval()


dropout在训练的时候起作用,
在推断的时候被绕过不起作用,
或者等价地,将其概率置为零。

batch normalization 也和dropout一样,
有两种模式,分别对应训练和推断,分别是:
model.eval()和model.train().


以下是原文截图:

dropout:
PyTorch中的train()方法和eval()方法的作用和区别_第1张图片
batch normalization:
PyTorch中的train()方法和eval()方法的作用和区别_第2张图片
PyTorch官方API截图:
train(mode=True):
PyTorch中的train()方法和eval()方法的作用和区别_第3张图片
eval():
PyTorch中的train()方法和eval()方法的作用和区别_第4张图片

你可能感兴趣的:(深度学习,Python,pytorch,神经网络)