使用实例键进行批量预测 w/Tensorflow

Using Instance Keys for Batch Prediction w/Tensorflow

我正在尝试弄清楚如何使用 Google Cloud 进行批量预测。具体来说,我正在寻找对象检测,从更快的 RCNN 张量流 ckpt 到 graph/saved 模型。

我的问题是我需要能够为我的输入图像恢复某种 ID,可能是索引或文件名。我不完全确定在我的情况下如何做到这一点,因为 this link mentions using instance keys, and the only relevant examples I've found regarding instance keys use JSON as the input format. As I am supposed to use TFRecords for input to my saved model, this would seem to be an issue. I also consulted the prediction guide,但仍然感到困惑。

简而言之,对于我应该编辑哪些文件(export_inference_graph.py?)以保留某种 indices/ordering 的输入图像以进行批量预测,有人有任何提示吗?我正在使用对象检测 API 作为参考。谢谢!

批量预测本身不支持实例键。您必须更改推理图以从输入中输出某些内容作为键。这意味着您需要找到一种方法在您的输入中包含键,例如图像 ID 或索引。一种方法是将输入从 TFrecord 更改为 json 并添加一个 id 作为键。例如,您现在的输入如下:

{"key": 1, "image": {"b64": "base64encodedstringabce"} {"key": 2, "image": {"b64": "base64encodedstringfg1d"}

这当然会使您的输入更大。另一种方法是,如果您在 TFRecord 中使用 tf.Example proto,则可以添加一个额外的功能。它的值将是从输入到输出的直通字段。

这是一种更改推理以将特征从输入传递到输出的方法。 https://github.com/GoogleCloudPlatform/cloudml-samples/pull/158