【发布时间】:2018-12-28 05:23:56
【问题描述】:
它是否在nn.Module 中调用forward()?我想当我们调用模型时,正在使用forward 方法。
为什么我们需要指定 train()?
【问题讨论】:
-
这些天在 PyTorch 中存在一个文档:pytorch.org/docs/stable/generated/torch.nn.Module.html 你可以查看文档,我认为它描述得很清楚。其他库/框架可能缺少文档,但在 PyTorch 中我认为官方文档非常好。
-
或许“configure_training”或“set_training_mode”更适合这个函数。
-
它通过
self.training = training简单地通过self.train(False)为所有模块递归地更改self.training。事实上,self.train所做的就是将所有模块的标志递归地更改为 true。见代码:github.com/pytorch/pytorch/blob/…