首页 > 解决方案 > 一张一张传张量流记录

问题描述

tensorflow 记录大小非常巨大,100 GB 存储 1000 个小批量。但我需要 10000 个小批量。如果在程序运行时创建了 tensorflow 记录来替换旧的 tensorflow 记录,如何将新创建的记录放入队列中?

在运行 tensorflow 代码之前是否需要拥有所有 tensorflow 记录,或者我可以一个一个地传递,在最后一个结束时创建每个记录。

# Writing to a tf.record.
result_tf_file = file_path_prefix + '.tfrecords'
writer = tf.python_io.TFRecordWriter(result_tf_file)
# Create feature
features = tf.train.Features(feature=d_feature)
example = tf.train.Example(features=features)
serialized = example.SerializeToString()
writer.write(serialized)


# For Initializing the tf.record.
dataset = tf.data.TFRecordDataset([file_name_tf])
dataset = dataset.map(m)
dataset = dataset.batch(1)
dataset = dataset.shuffle(buffer_size=50)
dataset = dataset.repeat(1)
iterator = dataset.make_initializable_iterator()

# Initializing iterator
sess.run(iterator.initializer, feed_dict={file_name_tf: result_tf_file})

我可以像 sess.run(iterator.initializer, serialized) 一样初始化吗?

标签: pythontensorflowrecord

解决方案


推荐阅读