【问题标题】:In tensorflow 2, does using model.fit automatically set the "training" flag in a BatchNorm layer?在 tensorflow 2 中,使用 model.fit 会自动在 BatchNorm 层中设置“训练”标志吗?
【发布时间】:2020-06-22 06:07:09
【问题描述】:
我相信在tensorflow中使用batch normalization层的时候,重要的是在使用的时候设置training flag,在validation数据上设置为False,在training的时候设置为True。这个对吗?如果是这样,model.fit 会自动推断此标志还是应该手动设置它?如果有,怎么做?
【问题讨论】:
标签:
tensorflow
neural-network
batch-normalization
【解决方案1】:
对于 TensorFlow 2,您不必显式设置训练标志,因为您将在 model.fit 中传递它。因此,只需正常使用批处理规范化,例如:
tf.keras.layers.BatchNormalization()