Tensorflow数据集API是否包含队列功能?

时间:2018-03-20 14:13:36

标签: tensorflow tensorflow-datasets

Tensorflow队列提供的优势是可以独立于图表的其余部分提取和排队数据,从而允许CPU /磁盘预取数据,以便GPU不会干涸。

我已经在a blog中读到了使用数据集API,这再次丢失了。但是,数据集shuffle()函数允许buffer_size,我会假设启用缓冲区队列?这与组合数据集API和队列相同(请参阅下面的代码)?是否有建议的方法来创建一个适当的,独立的数据获取队列?

数据集API +队列的代码示例:

sample_set = tf.data.Dataset.from_generator(...)
sample = sample_set.make_one_shot_iterator().get_next()
sample_batch = tf.train.shuffle_batch([sample], batch_size=10,
                                       capacity=30, num_threads=1, 
                                       min_after_dequeue=1)

... 这与纯数据集API中的相同吗? (如何在此处定义线程数?)

sample_set = tf.data.Dataset.from_generator(...)
sample_set = sample_set.shuffle(buffer_size=30)
sample_set = sample_set.batch(10)
sample = sample_set.make_one_shot_iterator().get_next()

0 个答案:

没有答案