我目前正在使用tensorflow和Google Cloud Platform进行传输学习。 https://cloud.google.com/blog/big-data/2016/12/how-to-train-and-classify-images-using-google-cloud-machine-learning-and-cloud-dataflow
当我使用他们的示例代码
时,它使用我自己的数据完美地在云上运行# Preprocess the eval set.
python trainer/preprocess.py \
--input_dict "$DICT_FILE" \
--input_path "gs://cloud-ml-data/img/flower_photos/eval_set.csv" \
--output_path "${GCS_PATH}/preproc/eval" \
--cloud
我完成了所有预处理,培训和部署。
但是,我希望能够在本地运行它,以便我可以更改代码并更有效地调试它: 在代码中它声明了
To run this pipeline locally run the above command without --cloud.
所以它会读到:
# Preprocess the eval set.
python trainer/preprocess.py \
--input_dict "$DICT_FILE" \
--input_path "gs://cloud-ml-data/img/flower_photos/eval_set.csv" \
--output_path "${GCS_PATH}/preproc/eval"
我尝试运行此代码,将input_dict,input_path和output_path设置为云存储路径,以及作为本地计算机上文件的路径。 但是我得到了错误:
tensorflow / core / platform / cloud / google_auth_provider.cc:151]所有获取Google身份验证持有令牌的尝试均失败,返回空令牌。从文件中检索令牌失败,显示“不可用:libcurl失败,错误代码为23:写入正文失败(91!= 196)”。从GCE检索令牌失败,显示“Unavailable:Unexpected response code 0”。
所以它似乎是一个身份验证问题: 问题是我手动从谷歌云存储复制文件时没有身份验证问题。
我已经尝试过:
$ gcloud auth application-default login
但它不会改变任何东西。
有人有解决方案吗?