我试图运行一个命令来测试我的计算机中的本地预测。但是,该命令每次都因此错误而失败。
ERROR: gcloud crashed (PermissionError): [WinError 5] Access is denied
这是命令:
gcloud ai-platform local predict --model-dir model_final --json-instances image_b64.json --framework tensorflow
我很肯定 101% 肯定我已经遵循了 Google 文档中的所有内容。
- 首先,该命令需要一个模型文件以TensorFlow SavedModel 格式保存,因为我使用的是 Keras,所以我可以这样做
model.save("model_final")
。
如果您使用 Keras 进行训练,请使用 tf.keras.Model.save 导出 SavedModel
所以我这样做了,它只输出一个文件,所以我只能假设它是要放置在 --model-dir 参数中的文件。我承认model.save("model_final")
确实创建了一个文件,而不是一个目录,这有点奇怪,但Keras 的文档只是说使用它,所以我不可能错。
并且:
如果您使用 tf.keras.Model.save 导出 SavedModel,则无需指定服务输入函数。
如果您从 tf.keras 或 TensorFlow 估算器导出 SavedModel,则导出的图默认已准备好提供服务。
- “image_b64.json”文件遵循以下格式:
{"image_bytes":{"b64": base64_jpeg_data )}}
因此,经过 3 个小时并遵循了 Google 要求的所有内容后,不知何故,gloud 仍然向我抛出了这个错误。而且,是的,当然我已经在管理员模式下运行了命令行。我也在我的两台电脑上试过了,我得到了同样的错误。我正在使用 Windows,Tensorflow 1.15。
谁能指出我的实现有什么问题,或者 Google Doc/Keras 只是缺乏光泽。谢谢你。