我运行了Google的官方教程(link here)。它本地运行良好,但我被困在我需要在Google云平台上训练网络的部分。我在终端上运行了以下代码:
JOB_NAME=census_single_1
OUTPUT_PATH=gs://$BUCKET_NAME/$JOB_NAME
gcloud ml-engine jobs submit training $JOB_NAME \
--job-dir $OUTPUT_PATH \
--runtime-version 1.0 \
--module-name trainer.task \
--package-path trainer/ \
--region $REGION \
-- \
--train-files $TRAIN_DATA \
--eval-files $EVAL_DATA \
--train-steps 1000 \
--verbosity DEBUG
我收到以下错误消息:
“Traceback(最近一次调用最后一次):\ n文件 \ _ / usr / lib / python2.7 / runpy.py \“,第162行,在_run_module_as_main \ n中 \“ main \”,fname,loader,pkg_name)\ n文件 \ _ / usr / lib / python2.7 / runpy.py \“,第72行,在_run_code \ n exec代码中 在run_globals \ n文件中 \“/ root / .local / lib / python2.7 / site-packages / trainer / task.py \”,第4行, 在\ n导入模型\ n文件 \“/ root / .local / lib / python2.7 / site-packages / trainer / model.py \”,行 40,在\ n
tf.feature_column.categorical_column_with_vocabulary_list(\ nAttributeError: 'module'对象没有属性'feature_column'\ n“
// 更新
没关系。我想到了。事实证明--runtime-version
参数控制着Cloud ML运行时版本(link)。在教程中,它被指定为1.0,这对应于Tensorflow v 1.0.1,它没有tf.feature_column.*
,因为它刚刚在2017年6月16日的Tensorflow v 1.2.0中引入
// 更新2
截至2017年6月29日,Google教程已更新为使用--runtime-version 1.2
而不是--runtime-version 1.0
。我不知道他们是否看过我的帖子但是在6月28日之间更改了Jun 29.该教程的未来用户不应该遇到同样的问题。
答案 0 :(得分:4)
通过更新Google Cloud SDK也可能发生这种情况,在这种情况下,pip install --upgrade tensorflow
应该可以胜任。
答案 1 :(得分:1)
我使用过时版本的tensorflow遇到了这个问题。将其更新到最新版本有帮助。