首页 > 解决方案 > 谷歌云机器学习引擎:给定的本地预测问题 saved_model.pb

问题描述

我已经使用tf.data.DatasetAPI 训练了一个 Keras 模型,并试图查看我saved_model.pb是否正确保存了它(as ),所以我可以在 ML Engine 上使用它。这是我所做的:

estimator = tf.keras.estimator.model_to_estimator(my_model)
# create serving function...
estimator.export_savedmodel('./export', serving_fn)

所以现在我正试图用它gcloud ml-engine local predict来看看我是否能得到一个预测。我正在做:

gcloud ml-engine local predict --model-dir=~/path/to/folder --json-instances=instances.json

不幸的是,我得到:

cloud.ml.prediction.prediction_utils.PredictionError: Failed to load model: Cloud ML only supports TF 1.0 or above and models saved in SavedModel format. (Error code: 0)

然后我尝试--runtime-version=1.2像这样添加到我的命令中:

gcloud ml-engine local predict --model-dir=~/path/to/folder --json-instances=instances.json --runtime-version=1.2

我回来了:

ERROR: (gcloud.ml-engine.local.predict) unrecognized arguments: --runtime-version=1.2

知道我做错了什么/如何解决吗?

谢谢!

标签: tensorflowkerasgoogle-cloud-platformgoogle-cloud-ml

解决方案


对于后代:问题原来是一个不正确的路径。如果其他人遇到此问题,请尝试使用完整的绝对路径并确保您指向包含该saved_model.pb文件的目录。


推荐阅读