我在Ubuntu 16.04中使用Keras 2.0.8和Tensorflow 1.3.0,使用Cuda 8.0和cuDNN 6。
我在模型中使用了两个BatchNormalization图层( keras图层),并使用 tensorflow管道进行了培训。
我在这里遇到两个问题 -
答案 0 :(得分:0)
bn = keras.layers.BatchNormalization()
x = bn(x)
....
sess.run([minimizer_op,bn.updates],K.learning_phase(): 1)
在我的工作流程中,我正在创建一个keras模型(没有编译它),然后运行以下
model = keras.Model(inputs=inputs, outputs=prediction)
sess.run([minimizer_op,model.updates],K.learning_phase(): 1)
其中输入可以是
inputs = [keras.layers.Input(tensor=input_variables)]
和输出是张量流张量的列表。该模型似乎自动聚合输入和输出之间的所有其他更新操作。