为什么start_queue_runners()函数与shuffle_batch()函数一起使用

时间:2018-10-17 17:01:20

标签: python-3.x tensorflow

我是TensorFlow的新手,试图理解shuffle_batch()函数,当我将shuffle_batch()与以下代码一起使用时,它不会打印任何内容。

 import tensorflow as tf

 sess=tf.Session()
 random=tf.random_normal([5],mean=0.0, stddev=1.0)
 shu=tf.train.shuffle_batch([sliced], 20, 100, 10)
 print(sess.run(shu)) 

但是在添加start_queue_runners()之后,它给了我预期的输出。那么这些start_queue_runners()shuffle_batch()之间是什么关系?

 import tensorflow as tf

 sess=tf.Session()
 random=tf.random_normal([5],mean=0.0, stddev=1.0)
 shu=tf.train.shuffle_batch([sliced], 20, 100, 10)
 threads = tf.train.start_queue_runners(sess=sess)
 print(sess.run(shu)) 

1 个答案:

答案 0 :(得分:1)

队列管道已由tf.dataset代替。您应该看看这个。

tf datasets

guide

使用数据集api更简单。