是否可以在metrics回调中使用自定义ModelCheckpoint
?
答案 0 :(得分:19)
是的,这是可能的。
按照文档中的说明定义自定义指标:
import keras.backend as K
def mean_pred(y_true, y_pred):
return K.mean(y_pred)
model.compile(optimizer='rmsprop',
loss='binary_crossentropy',
metrics=['accuracy', mean_pred])
要检查所有可用指标:
print(model.metrics_names)
> ['loss', 'acc', 'mean_pred']
将指标名称传递给ModelCheckpoint
到monitor
。如果您想要在验证中计算的指标,请使用val_
前缀。
ModelCheckpoint(weights.{epoch:02d}-{val_mean_pred:.2f}.hdf5,
monitor='val_mean_pred',
save_best_only=True,
save_weights_only=True,
mode='max',
period=1)
不要将mode='auto'
用于自定义指标。了解here。
为什么我回答我自己的问题?查看this。