Tensorflow 2.0 Keras 即使有验证数据也不会保存最佳模型,仍然给我:Can save best model only with val_acc available, skipping

Tensorflow 2.0 Keras won't save best model even with validation data, still gives me: Can save best model only with val_acc available, skipping

我在训练期间通过 fit 函数提供训练和验证数据作为数据集迭代器。我想通过验证数据集的准确性来保存最佳模型。但是,在每个时期的训练期间,我都会收到类似 Can save best model only with val_acc, skipping.

的警告

我使用 metrics = ['accuracy'] 编译模型,在回调中声明 monitor='val_acc',并提供验证数据作为数据集迭代器,如 fit 中的 validation_data=my_val_dataset。我还缺少什么?

如果有任何帮助,我将不胜感激。

我的 Jupyter notebook 在 my GitHub repo

确保 val_acc 存在于日志中。

通过简短的培训获取历史记录:

histCallback = model.fit(smallBatch_X, smallBatch_Y, epochs = 1)

检查里面有什么:

for key in histCallback.history:
    print(key)

也许您会找到 val_accuracy。或者,也许您有多个输出并且会找到 val_output_2_acc 或类似样式的东西。