【问题标题】:Where to place 'input.json file' when do Google Cloud Machine Learning engine prediction?谷歌云机器学习引擎预测时在哪里放置“input.json 文件”?
【发布时间】:2018-12-30 09:07:47
【问题描述】:

我正在使用 Google Cloud ML Engine 通过运行进行本地预测:

gcloud ml-engine local predict --model-dir=$MODEL_DIR --json-instances $INPUT_FILE --framework $FRAMEWORK

假设:

MODEL_DIR="gs://<bucket>/model.joblib"
FRAMEWORK="SCIKIT_LEARN"

输入文件input.json 在硬盘中(d:\predict)

如何指定:INPUT_FILE=?

我已手动将输入文件上传到我的 gc 存储桶中,但出现错误:

ERROR: (gcloud.ml-engine.local.predict) Unable to read file [gs://<bucket>/input.json]: [Errno 2] No such file or directory: 'gs://<bucket>/input.json

我应该把输入文件放在哪里?

我应该将它保存在本地磁盘(例如d:\predit\input.json)还是存储桶中?

这是什么格式?

【问题讨论】:

    标签: machine-learning google-cloud-platform predict


    【解决方案1】:

    您将MODEL_DIR 设置错误,无需添加“model.joblib”,因为它会自动检测到。 MODEL_DIR 应该包含文件“model.joblib”所在的路径(必要时包括文件夹)。作为一种好的做法,通常会有一个装有它的桶。该命令(针对您的情况)应如下所示:

      MODEL_DIR="gs://<bucket>/"
      INPUT_FILE="input.json"
      FRAMEWORK="SCIKIT_LEARN"
    

    并且您的存储桶应包含“model.joblib”。对于INPUT_FILE,它应该包含运行命令的“input.json”来自的路径和“.json”本身(即,如果“.json”在其他文件夹下,INPUT_FILE 应该是“/input.json”)。

    这是用于测试模型的文档[1]

    【讨论】:

    • 您能否再次检查您的存储桶中是否有文件?您可以运行此gsutil ls $MODEL_DIR 或使用 UI 来执行此操作。我自己复制了这个,对我来说工作得很好。感谢您的反馈。
    • 我试图得到你看到的同样的错误,我只有在文件不存在时才会得到它。很抱歉坚持这一点,但你有任何文件夹或这些文件所在的地方吗?即,文件位于 gs:///predict (或任何其他文件夹)下。如果是这种情况,MODEL_DIR 应该是该路径。再次感谢您的反馈。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-01-31
    • 1970-01-01
    • 2019-02-14
    • 2018-06-09
    • 2017-08-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多