我有一堆自定义格式的训练示例文件,如加载到张量流模型,但我无法弄清楚如何有效地解析数据。
这些文件有一个20字节的标题,描述了功能的数量,标签的数量,例子的数量等。标题后面跟着一些例子。每个示例都是一些表示要素的float32,后跟一些表示标签的uint8,因此文件的其余部分是浮点数和uints的交替模式。
我一直在使用tf.read_file
和tf.decode_raw
将文件作为uint8s的向量来获取,现在我喜欢从标签中切割要素,并将要素向量视为float32向量小端序。在张量流中有可能出现这种情况吗?
我已成功使用numpy
解析文件并将功能和标签转换为tf.constant
s,但似乎将内容直接加载到tensorflow会更节省内存。
答案 0 :(得分:0)
假设它是所有固定大小的数据,您需要使用Slicing and Joining运算符对数据进行解交织。然后,您可以在图片数据上使用decode_raw
out_dtype=tf.float32
,然后再次切片以分别获取矢量。