保存模型时出现以下错误
WARNING:tensorflow:Can save best model only with val_loss available, skipping.
原始代码如下:
checkpoint = tf.keras.callbacks.ModelCheckpoint(filepath=path,
monitor='val_loss',
verbose=0,
save_best_only=True,
save_weights_only=False,
mode='min',
save_freq=1)
修改后如下:
checkpoint = tf.keras.callbacks.ModelCheckpoint(filepath=path,
monitor='val_loss',
verbose=0,
save_best_only=True,
save_weights_only=False,
mode='min',
save_freq="epoch")
问题解决
猜测原因:save_freq=1则每训练一次则比较一次监测目标'val_loss',而每个epoch包含多次训练,只有一轮训练结束后才计算'val_loss'。
save_freq="epoch"则每个epoch比较一次'val_loss'。