我尝试使用tf.TextLineReader读取文本数据集,但只读取了奇数行的数据。我不知道为什么。如何才能让它逐行读取数据?
import tensorflow as tffilename_queue=tf.train.string_input_producer(["./data/all_c_dev.en"])reader=tf.TextLineReader()key,value=reader.read(filename_queue)with tf.Session() as sess: tf.train.start_queue_runners() for i in range(10): print(key.eval(),value.eval())
回答:
当你调用key.eval()
时,你同时更新了key
和value
。然后,当你调用value.eval()
时,你再次更新了key
和value
。
你可以通过在一个sess.run
调用中同时更新这两个变量来解决这个问题:
with tf.Session() as sess: tf.train.start_queue_runners() for i in range(10): k, v = sess.run([key, value]) print(k,v)