计算 CSV 文件中的示例
import tensorflow as tf
filename_queue = tf.train.string_input_producer(["file.csv"], num_epochs=1)
reader = tf.TextLineReader()
key, value = reader.read(filename_queue)
col1, col2 = tf.decode_csv(value, record_defaults=[[0], [0]])
with tf.Session() as sess:
sess.run(tf.initialize_local_variables())
tf.train.start_queue_runners()
num_examples = 0
try:
while True:
c1, c2 = sess.run([col1, col2])
num_examples += 1
except tf.errors.OutOfRangeError:
print "There are", num_examples, "examples"
num_epochs=1
在处理列表上的每个文件一次后使 string_input_producer
队列关闭。它导致提升 OutOfRangeError
,这是在 try:
中捕获的。默认情况下,string_input_producer
无限生成文件名。
tf.initialize_local_variables()
是一个张量流 Op,当执行时,初始化 string_input_producer
内的 num_epoch
局部变量。
tf.train.start_queue_runners()
启动额外的步骤,处理异步向队列添加数据。