我在带有 Cuda 8.0 和 cuDNN 6 的 Ubuntu 16.04 中使用 Keras 2.0.8 和 Tensorflow 1.3.0。
我在我的模型中使用两个 BatchNormalization 层(keras 层)并使用tensorflow 管道进行训练。
我在这里面临两个问题-
- 即使在将K.learning_phase设置为True之后, BatchNorm 层总体参数(均值和方差)也不会在训练时更新。结果,推理完全失败了。我需要一些关于如何在训练步骤之间手动更新这些参数的建议。
- 其次,使用 tensorflow saver op保存训练好的模型后,当我尝试加载它时,结果无法重现。似乎权重正在改变。有没有办法在保存加载操作中保持权重相同?