2017-02-22 20 views
7

Tôi có số .tfrecord nhưng tôi không biết cách cấu trúc. Làm cách nào để kiểm tra lược đồ để hiểu tệp .tfrecord chứa gì?Cách kiểm tra tệp Tensorflow .tfrecord?

Tất cả câu trả lời hoặc tài liệu về Stackoverflow dường như giả sử tôi biết cấu trúc của tệp.

reader = tf.TFRecordReader() 
file = tf.train.string_input_producer("record.tfrecord") 
_, serialized_record = reader.read(file) 

...HOW TO INSPECT serialized_record... 

Trả lời

16

Tìm thấy nó!

import tensorflow as tf 

for example in tf.python_io.tf_record_iterator("data/foobar.tfrecord"): 
    result = tf.train.Example.FromString(example) 

Bạn cũng có thể thêm:

from google.protobuf.json_format import MessageToJson 
... 
jsonMessage = MessageToJson(tf.train.Example.FromString(example)) 
1

Sử dụng TensorFlow tf.TFRecordReader với bộ giải mã tf.parse_single_example theo quy định tại https://www.tensorflow.org/programmers_guide/reading_data

PS, tfrecord chứa 'Ví dụ' hồ sơ quy định tại https://github.com/tensorflow/tensorflow/blob/master/tensorflow/core/example/example.proto

Một khi bạn trích xuất các bản ghi vào một chuỗi, phân tích nó là một cái gì đó như thế này

a=tf.train.Example() 
result = a.ParseFromString(binary_string_with_example_record) 

Tuy nhiên, tôi không chắc chắn đâu là hỗ trợ thô hoặc trích xuất các bản ghi riêng lẻ từ một tệp, bạn có thể theo dõi nó trong TFRecordReader

Các vấn đề liên quan