【发布时间】:2017-12-25 17:02:03
【问题描述】:
我正在尝试将一个现有的 TensorFlow 模型与 Google Cloud ML Engine 一起使用,该模型目前已在本地运行。
模型目前通过将my_model.train 和my_model.eval 等文件名传递给tf.data.TextLineDataset 来获取其训练数据。这些文件名现在在模型的训练器中进行了硬编码,但我计划对其进行重构,以便在命令行上将它们获取为training application parameters(以及--job-dir);例如像这样:
my_trainer.pl --job-dir job \
--filename-train my_model.train --filename-eval my_model.eval
这也应该允许我在本地使用 Cloud ML Engine 运行训练器:
gcloud ml-engine local train \
--job-dir job
...
-- \
--filename-train my_model.train \
--filename-eval my_model.eval
到目前为止,我是否做出了正确的假设,我是否还可以通过将本地文件名替换为 Google Cloud Storage gs: URI,例如在 Google 的云中运行相同的训练器(在将我的数据集文件上传到 my_bucket 之后)像这样:
gcloud ml-engine local train \
--job-dir job
...
-- \
--filename-train gs://my_bucket/my_model.train \
--filename-eval gs://my_bucket/my_model.eval
在其他世界,tf.data.TextLineDataset 可以将gs: URI 透明地处理为“文件名”,还是我必须在我的训练器中包含特殊代码才能预先处理此类 URI?
【问题讨论】:
标签: tensorflow google-cloud-ml