2016-09-30 46 views
2

我有我的训练模型中构建的推理图,并希望使用批量预测来预测许多记录。我怎样才能在输入文件中指定输入?Cloud ML批量预测今天支持哪些数据格式?

+0

欢迎来到Stack Overflow!请参阅** [如何提问](http://stackoverflow.com/questions/how-to-ask)**和** [最小,完整和可验证示例](http://stackoverflow.com/help/MCVE)**。 [编辑](http://stackoverflow.com/posts/39782288/edit)该帖子在问题中添加相关代码。 –

回答

2

到目前为止,Cloud ML支持三种数据格式。一个是文本文件,其中的每一行都是您想要预测的记录。第二种和第三种格式是TFRecords;支持压缩和gzip压缩。 TFRecord文件是用于存储字节的容器,通常是二进制数据,例如,序列化示例proto。这些字节直接输入到预测图中。您必须在请求中的data_format字段(TEXT,TF_RECORD,TF_RECORD_GZIP)中指定它们。

对于文本格式,每一行都是JSON对象或UTF8字符串。在前者的情况下,键是输入张量名称,值是将被馈送到推断图中的数据。如果您的图只有一个输入张量,则可以跳过JSON并保存换行符分隔的字符串。

下面是一些例子:

你有四个输入张量,即指数,身高,名字和图像

{“index”: 100, “height”: 5.5, “name”: “Alice”, “image”: [0.0, 0.0, 0.123, 0.17,0,0]} 
{“index”: 101, “height”: 5.8, “name”: “John”, “image”: [0.0, 0.21, 0.09, 0.5, 0,0]} 
... 

你有一个字符串输入张量。无需指定名称。

“This is a string input” 
“That is another string input” 
... 

你有一个带标量类型的张量。无需指定名称。

1445 
425 
3412 
... 

您有一个输入张量,它是一个numpy数组。无需指定名称。

[0, 3.14, 2.718, 0.0, 1.414] 
[1.618, 299.7, 8.314, 0.0, 0.0] 
... 

注意的是,在复式张量的名字输入的情况下必须在推理图输入集合定义的aliases匹配。