如何解决Keras 检查点未保存到谷歌云存储桶
当谷歌云构建运行我的模型时,我使用以下代码来保存检查点:
cp_callback = tf.keras.callbacks.ModelCheckpoint(filepath = "gs://mybucket/checkpoints",verbose=0,save_weights_only=True,monitor='val_loss',mode='min',save_best_only=True)
我的构建日志中没有错误,但每次运行后存储桶中唯一的东西是包含源目录内容的 tf_cloud_train_tar 文件。
我在 model.fit 中使用 callbacks = [cp_callback]。
解决方法
我遇到这个问题有几个原因:
- 数据集不在存储桶中,因此代码无法访问它。
- 对没有文件的数据集使用生成器会造成无限循环,但不会崩溃。
我切换到 AI Platform 并从 GCS Bucket 获取数据,问题得到解决。