问题标签 [google-cloud-ml-engine]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1232 浏览

machine-learning - 训练时 Google Cloud ML 以非零状态 245 退出

我尝试使用以下示例代码在 Google Cloud ML 上训练我的模型:

我得到了这个错误:

详细的错误输出很大,所以我在pastebin中粘贴它

0 投票
1 回答
8083 浏览

python - 从谷歌云机器学习引擎本地加载保存的张量流模型.pb

我想采用我在网上训练的 tensorflow 模型,并使用我分发的 python 程序在本地运行它。

训练后,我得到一个目录 /model,其中包含两个文件 /saved_model.pb 和一个文件夹 /variables。在本地部署它的最简单方法是什么?

我在这里关注部署冻结模型,但我无法在 .pb 中完全阅读。我直接将 saved_model.pb 下载到我的工作中并尝试了

在这里查看 SO ,他们提出了不同的路线。

我觉得这很令人困惑,因为

为什么错误,字符串也不是?

部署云训练模型的最佳方式是什么?

完整代码

0 投票
2 回答
141 浏览

tensorflow - 如果打开分析,进程会终止

我想在 CloudML 上分析 TensorFlow 模型。当我使用 tf.RunOptions(trace_level=tf.RunOptions.FULL_TRACE) 时,我的进程以非零退出代码终止,而没有详细说明发生了什么。

我尝试添加和删除打开此选项的代码,并且此选项与进程死亡之间​​存在 100% 的相关性。

错误消息是“副本主机 0 以非零状态 250 退出。终止原因:错误。要了解有关您的工作退出原因的更多信息,请查看日志

如何诊断和解决此问题?

0 投票
1 回答
480 浏览

rest - 通过 REST 调用 CloudML Predict 时遇到内部错误

我的应用程序在 GAE 中运行。此应用程序对我的 CloudML 进行 REST 调用。

这是代码

我已将 ReadTimeOut 设置为 0,因为我经常收到读取超时异常。

现在使用此代码,我经常从 CloudML 收到以下错误响应

我们在哪里可以获得对 CloudML 的 REST 调用的日志?如何进一步调试?

0 投票
1 回答
277 浏览

tensorflow - TensorFlow 1.0.1 SavedModelBuilder

我目前正在探索在 Google ML Engine 上部署模型。起初,我使用 TensorFlow 1.1.0 开发了一个模型,因为它是最新版本(在提出这个问题时)。然而,事实证明,GCP 上支持的 TensorFlow 最高版本是 1.0.1。

问题是,以前当我使用 TensorFlow 1.1.0 时,SavedModelBuilder会正确地将模型保存为目录SavedModel下的变量及其变量variables/。但是,当我切换到 TensorFlow 1.0.1 时,它并没有类似的工作:SavedModel创建了文件,但没有在其下创建任何文件variables/,因此无法仅使用该SavedModel文件构建模型(缺少 下的文件variables/)。

这是一个已知的错误吗?或者我应该做些什么来让SavedModelBuilderTensorFlow 1.0.1 像 TensorFlow 1.1.0 一样工作?

谢谢你。

编辑,更多细节:

实际上,tf.Variable我的模型中不存在显式 s 。但是,存在几个tf.contrib.lookup.MutableDenseHashTables 并且它们在 TensorFlow 1.1.0 中正确导出,但在 TensorFlow 1.0.1 中却没有(因为在 1.0.1 中根本没有导出任何变量)。

0 投票
3 回答
291 浏览

google-cloud-ml-engine - 谷歌机器学习 API 问题

我正在尝试使用 Google 机器学习 API,但遇到了两个问题。在API 资源管理器中,我输入了正确的信息,但收到了响应错误:

代码 200 "error": "Missing \"instances\" field in request body: {\n \"httpBody\": \n
{\n \"data\": \"\\"instances\\" : \\ "teste\\"\",\n
\"contentType\": \"application/json\"\n }\n}"

该请求找到我的模型(如果我更改字段名称中的值,我会收到另一个错误)但不理解我的 json。那是json:

当我使用 gcloud 在命令行上进行预测时,我没有收到任何错误,一切似乎都很好。我为 gcloud 创建的 Json 有点不同:

我已经在 API explorer 中尝试过,但没有成功。

所以,我决定使用 .Net Api 来尝试预测,我得到了其他情况:响应为空(???)。

这是我的代码:

如果我更改模型名称,我会收到一条错误消息,提示找不到我的模型,因此我的凭据是正确的。

我不知道我做错了什么。Someboby 可以帮助解决这些问题吗?

谢谢!

更新: - - - - - - - - - - - - -

我更改了这个执行命令: Dim myResponse = myPredictRequest.Execute()
到这个: Dim s = StreamToString(myPredictRequest.ExecuteAsStream())

现在我可以使用 .Net API 和谷歌开发人员界面(缺少实例字段......)得到同样的错误。因此,如果有人知道我的 Json 请求出了什么问题,那将有很大帮助。

0 投票
1 回答
385 浏览

google-cloud-platform - Google ML - 无法从 Google 云存储桶中读取数据

我已按照此处的这些说明,让谷歌 ML 引擎从谷歌存储桶中读取我的数据。- https://cloud.google.com/ml-engine/docs/how-tos/working-with-data

但在按照上述说明为我的项目分配权限后,似乎无法让我的代码从存储桶中读取。

这是代码的样子,出现的错误是无法找到文件

0 投票
4 回答
1103 浏览

machine-learning - 在 Google Cloud 上使用 GPU 的 TensorFlow

我有一个使用 tensorflow 的谷歌机器学习模型,没关系。现在我想用 GPU 做一些预测。我看到了这个链接,但它讲述了使用 GPU 进行训练而不是预测。预测会话中没有关于 GPU 的内容。

有人知道是否可以使用带有 GPU 的谷歌机器学习引擎进行预测?或者如果我使用 GPU 进行训练,我的预测会自动使用 GPU 运行?

我正在使用以下命令行:

此命令有效,但它正在使用 CPU。附加信息:我的模型发布在 us-east1 区域,我的比例是自动的。

0 投票
1 回答
265 浏览

python - Google ML Engine 和 Python Datastore API,“禁止:403 请求的身份验证范围不足。”

我在 Google ML Engine 上运行 TensorFlow 模型。模型训练完成后,我想将带有结果的 JSON 字符串存储到 Datastore。为此,我使用以下内容:

虽然,我收到错误“禁止:403 请求的身份验证范围不足”。这是完整的错误跟踪:

回溯(最后一次调用):文件“/usr/lib/python2.7/runpy.py”,第 162 行,在 _run_module_as_main“ main ”中", fname, loader, pkg_name) File "/usr/lib/python2.7/runpy.py", line 72, in _run_code exec code in run_globals File "/root/.local/lib/python2.7/site-packages /trainer/train.py”,第 243 行,在 FLAGS.entity_type 中)文件“/root/.local/lib/python2.7/site-packages/trainer/data_helpers.py”,第 253 行,在 put_json_into_datastore datastore_client.put(实体)文件“/usr/local/lib/python2.7/dist-packages/gcloud/datastore/client.py”,第 329 行,放入 self.put_multi(entities=[entity]) 文件“/usr/local/ lib/python2.7/dist-packages/gcloud/datastore/client.py”,第 355 行,在 put_multi current.commit() 文件“/usr/local/lib/python2.7/dist-packages/gcloud/datastore/ batch.py​​”,第 260 行,在提交 self._commit() 文件“/usr/local/lib/python2.7/dist-packages/gcloud/datastore/batch.py​​”,第 243 行,在 _commit self.project, self._commit_request, self._id) 文件“/usr/local/lib/python2.7/dist-packages/gcloud /datastore/connection.py”,第 342 行,在提交中request_pb.SerializeToString()) 文件“/usr/local/lib/python2.7/dist-packages/gcloud/datastore/connection.py”,第 98 行,_request raise make_exception(headers, error_status.message, use_json=False)禁止:403 请求的身份验证范围不足。7/dist-packages/gcloud/datastore/connection.py”,第 342 行,在提交 _datastore_pb2.CommitResponse) 文件“/usr/local/lib/python2.7/dist-packages/gcloud/datastore/connection.py”中,第 124 行,在 _rpc data=request_pb.SerializeToString()) 文件“/usr/local/lib/python2.7/dist-packages/gcloud/datastore/connection.py”,第 98 行,在 _request 中引发 make_exception(headers, error_status .message, use_json=False) 禁止:403 请求的身份验证范围不足。7/dist-packages/gcloud/datastore/connection.py”,第 342 行,在提交 _datastore_pb2.CommitResponse) 文件“/usr/local/lib/python2.7/dist-packages/gcloud/datastore/connection.py”中,第 124 行,在 _rpc data=request_pb.SerializeToString()) 文件“/usr/local/lib/python2.7/dist-packages/gcloud/datastore/connection.py”,第 98 行,在 _request 中引发 make_exception(headers, error_status .message, use_json=False) 禁止:403 请求的身份验证范围不足。在 _request raise make_exception(headers, error_status.message, use_json=False) Forbidden: 403 Request has enough authentication scopes.在 _request raise make_exception(headers, error_status.message, use_json=False) Forbidden: 403 Request has enough authentication scopes.

我是否需要在某处授予 ML 引擎访问 Datastore 的访问权限?

0 投票
1 回答
238 浏览

google-cloud-ml-engine - 占位符张量在 ml-engine predict 中需要一个值,但不是 local predict

我一直在开发一个模型,用于云 ML 引擎的在线预测服务。我的模型包含一个placeholder_with_default张量,我用它来保持预测显着性的阈值。

我注意到在使用本地预测时:

我不需要为这个张量提供值。例如,这是一个有效的输入:

但是,当使用在线预测时:

如果我使用上面的 JSON,我会收到一个错误:

但是,如果我包括阈值,那么我不会。例如:

有没有办法让“阈值”成为可选输入?

谢谢

马修