错误:在GCP上使用AI平台训练模型时出现“参数--job-dir:期望一个参数”

时间:2019-09-07 05:35:27

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

运行macOS Mojave。

我正在遵循official getting started documentation来使用AI平台运行模型。

到目前为止,我设法使用以下方法在本地训练模型:

# This is similar to `python -m trainer.task --job-dir local-training-output`
# but it better replicates the AI Platform environment, especially
# for distributed training (not applicable here).
gcloud ai-platform local train \
  --package-path trainer \
  --module-name trainer.task \
  --job-dir local-training-output

然后我通过以下步骤继续使用AI平台训练模型:

  1. 设置环境变量export JOB_NAME="my_first_keras_job"export JOB_DIR="gs://$BUCKET_NAME/keras-job-dir"
  2. 运行以下命令来打包trainer/目录:

文档中指示的命令:

 gcloud ai-platform jobs submit training $JOB_NAME \
   --package-path trainer/ \
   --module-name trainer.task \
   --region $REGION \
   --python-version 3.5 \
   --runtime-version 1.13 \
   --job-dir $JOB_DIR \
   --stream-logs

我得到了错误:

  

错误:(gcloud.ai-platform.jobs.submit.training)参数--job-dir:   预期一个参数用法:gcloud ai平台作业提交培训   JOB [可选标志] [-USER_ARGS ...]可选标志可能是   --async | --config | -帮助| --job-dir | -标签| ...

据我了解,--job-dir:确实有一个论点。


我不确定自己在做什么错。我正在trainer/目录中运行上述命令,如文档所示。我尝试按照here所述删除所有空格,但错误仍然存​​在。

1 个答案:

答案 0 :(得分:0)

您是否在本地运行此命令?还是在Jupyter的AI笔记本VM上?根据您的详细信息,我认为您是在本地运行的,我不是mac专家,但是希望这会有所帮助。

我刚刚在AI笔记本VM上遇到了同样的错误,我的问题是,即使我在以前的Jupyter单元中为它分配了一个值, $ JOB_NAME 变量在gcloud命令中传递了一个空字符串。尝试运行以下命令,以确保在进行 gcloud ai-platform 调用时,代码实际上为$ JOB_DIR传递了一个值。

echo $JOB_DIR