[英]How to do predict when trained with Normalization or dropout layer in Keras?
我用归一化层训练了一个模型。 代码是这样的:
在训练阶段:
model=Sequential()
model.add()
...
k.set_learning_phase(1)
ModelCheckpoint(weights_file)
model.fit()
推断时间:
k.set_learning_phase(0)
model.load_weights(weights_file)
model.predict_classes()
...
Keras版本:2.0.8。 是这样吗,或者像在Caffe中使用SegNet一样在训练后需要一些特殊的代码来计算BN?
不,使用BatchNormalization或Dropout图层时,您不需要做任何特殊的事情。 Keras已经跟踪了学习/测试阶段,因此在使用predict
或predict_classes
,它做对了。
您甚至不需要手动设置学习阶段,Keras已经做到了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.