恢复tensorflow的正确版本

时间:2020-08-18 17:01:00

标签: python tensorflow

几周前,我正在一个项目上,我安装了一个较旧版本的tensorflow来尝试解决我遇到的问题。它没有按我希望的那样工作,我点安装了最新版本的tensorflow,但是现在我经常收到与tensorflow相关的错误消息。它们不会停止程序执行,但是它们在那里。据我所知,我已经安装了最新版本,但我想我一定会丢失一些东西。这是我遇到的错误之一的示例:WARNING: tensorflow: Can save best model only with val_loss available, skipping。当我尝试使用ModelCheckpoint保存keras模型时,就会发生这种情况。使用model_save()时会收到不同的消息。每当我尝试以任何方式保存任何模型时,似乎就会出现问题。如果有人有任何建议,我会喜欢的。

我在Google Colab上使用Python。如果您需要我的更多信息,请告诉我。

编辑:为ModelCheckpoint添加代码:

save=ModelCheckpoint("/content/drive/My Drive/Colab Notebooks/cavity data/Frequency Model.h5", save_best_only=True, verbose=1)

然后在model.fit()中这样调用它:

model.fit(X_train, Y_train, epochs=500, callbacks=[save, stop], verbose=1)

1 个答案:

答案 0 :(得分:0)

ModelCheckpoint的默认监视器是验证丢失或“ val_loss”。

如警告所示,缺少键“ val_loss”,因为您没有在model.fit()中使用验证数据。

要么在model.fit()中指定验证拆分或验证数据,要么仅使用训练损失或准确性作为ModelCheckpoint的监视器,如下例所示。

monitor = "accuracy"    # or "loss"
save = ModelCheckpoint("/content/drive/My Drive/Colab Notebooks/cavity data/Frequency Model.h5", monitor=monitor, save_best_only=True, verbose=1)

model.fit(X_train, Y_train, epochs=500, callbacks=[save, stop], verbose=1)