无法使用 Jupyter 笔记本中的 Gcloud ML-Engine(或 AI 平台)命令将作业提交到 F1-Micr



我正在尝试提交一个谷歌云作业,该作业为mnist数字训练CNN模型。 由于我是GCP的新手,我想先在f1-micro机器上培训这项工作以进行练习。但不成功。一路上我有两个问题。

这是我的系统。 Windows 10, Anaconda, Jupyter Notebook 6, Python 3.6, TF 1.13.0. 起初,我的模型在没有任何 GCP 命令的情况下运行良好。然后我按照 gcp 课程的建议将文件打包到一个模块中。并使用 gcloud 命令进行本地训练。该单元格似乎卡住了并且什么都不做,直到我关闭并停止 ipynb 文件。训练在它之后立即开始,结果是正确的,因为我在 Tensorboard 上监控了它。我需要做什么才能使其在不关闭笔记本的情况下从单元格正常运行?顺便说一句,我可以让它在没有此问题的情况下在终端中运行。

第二个问题,然后我尝试向谷歌云机器提交。我使用 f1-micro 创建了一个 vm 实例只是为了练习,因为它有很多空闲时间。但是我的命令选项不被接受。我尝试了几种机器类型的格式。我无法正确设置机器类型。以及如何与我创建的实例建立连接?

有什么建议吗?谢谢!代码在这里。

#1.local submission lines

OUTDIR='trained_test'
INPDIR='..data'
shutil.rmtree(path = OUTDIR, ignore_errors = True) 
!gcloud ai-platform local train 
--module-name=trainer.task 
--package-path=trainer 
-- 
--output_dir=$OUTDIR 
--input_dir=$INPDIR 
--epochs=2 
--learning_rate=0.001 
--batch_size=100

#2. submit to compute engine
OUTDIR='gs://'+BUCKET+'/digit/train_01'
INPDIR='gs://'+BUCKET+'/digit/data'
JOBNAME='kaggle_digit_01_'+datetime.now().strftime("%Y%m%d_%H%M%S")
!gcloud ai-platform jobs submit training $JOBNAME 
--region=$REGION 
--module-name=trainer.task 
--package-path=trainer 
--job-dir=$OUTDIR 
--staging-bucket=gs://$BUCKET 
--scale-tier=custom 
--master-machine-type=zones/us-central1-a/machineTypes/f1-micro 
--runtime-version 1.13 
-- 
--output_dir=OUTDIR 
--input_dir=INPDIR 
--epochs=5 --learning_rate=0.001 --batch_size=100 

错误信息:

ERROR: (gcloud.ai-platform.jobs.submit.training) INVALID_ARGUMENT: Field: master_type Error: The specified machine type is not supported: zones/us-central1-a/machineTypes/f1-micro
- '@type': type.googleapis.com/google.rpc.BadRequest
fieldViolations:
- description: 'The specified machine type is not supported: zones/us-central1-a/machineTypes/f1-micro'
field: master_type

更新:

更改计算机类型确实有效

--scale-tier=CUSTOM 
--master-machine-type=n1-standard-4 

我还把以下内容放在开头,以便笔记本识别文件格式,例如$jobname...

import gcsfs

顺便说一句 --job-dir 似乎并不重要。

但是当地火车仍然存在同样的问题,我需要关闭并停止笔记本才能开始培训。 谁能对此提出建议?

AI 平台训练不支持 f1-micro。 以下是支持的计算机列表。此外,您不需要指定区域。只是机器类型。即 --主机器类型=n1-标准-4

相关内容

  • 没有找到相关文章