它调用forward()的nn.Module?我想当我们调用模型时,forward正在使用方法.为什么我们需要指定train()?
官方评论显示"这仅对Dropout或BatchNorm等模块有任何影响." 但我不明白它的实施.
该model.eval()方法修改了某些在训练和推理过程中需要表现不同的模块(层)。文档中列出了一些示例:
这仅对某些模块有影响。请参阅特定模块的文档,了解其在培训/评估模式下的行为详细信息(如果它们受到影响),例如
Dropout、BatchNorm等。
是否有受影响模块的详尽列表?
如何从模型内部检查它当前是否处于训练或评估模式?