在TensorFlow的官方文档中,当在训练循环中调用Keras模型时,他们总是传递
我尝试了
总之,我不知道这个参数的影响是什么。如果我在训练时错过了这个参数会怎样?
training=True
,例如:logits = mnist_model(images, training=True)
。我尝试了
help(tf.keras.Model.call)
,它显示:Help on function call in module tensorflow.python.keras.engine.network:
call(self, inputs, training=None, mask=None)
Calls the model on new inputs.
In this case `call` just reapplies
all ops in the graph to the new inputs
(e.g. build a new computational graph from the provided inputs).
Arguments:
inputs: A tensor or list of tensors.
training: Boolean or boolean scalar tensor, indicating whether to run
the `Network` in training mode or inference mode.
mask: A mask or list of masks. A mask can be
either a tensor or None (no mask).
Returns:
A tensor if there is a single output, or
a list of tensors if there are more than one outputs.
它说training
是一个布尔或布尔标量张量,表示是否在 训练模式 或 推理模式 下运行网络
。但我没有找到关于这两种模式的任何信息。总之,我不知道这个参数的影响是什么。如果我在训练时错过了这个参数会怎样?
fit()
时指的是训练模式,在调用evaluate()
和predict()
时指的是推理模式。 - Li-Pin Juan