Tensorflow将uint8张量视为float32张量

时间:2017-02-17 00:15:32

标签: python tensorflow

我有一堆自定义格式的训练示例文件,如加载到张量流模型,但我无法弄清楚如何有效地解析数据。

这些文件有一个20字节的标题,描述了功能的数量,标签的数量,例子的数量等。标题后面跟着一些例子。每个示例都是一些表示要素的float32,后跟一些表示标签的uint8,因此文件的其余部分是浮点数和uints的交替模式。

我一直在使用tf.read_filetf.decode_raw将文件作为uint8s的向量来获取,现在我喜欢从标签中切割要素,并将要素向量视为float32向量小端序。在张量流中有可能出现这种情况吗?

我已成功使用numpy解析文件并将功能和标签转换为tf.constant s,但似乎将内容直接加载到tensorflow会更节省内存。

1 个答案:

答案 0 :(得分:0)

假设它是所有固定大小的数据,您需要使用Slicing and Joining运算符对数据进行解交织。然后,您可以在图片数据上使用decode_raw out_dtype=tf.float32,然后再次切片以分别获取矢量。