tf.train.batch如何创建批处理

cer*_*rou 7 tensorflow

在CIFAR-10 TensorFlow教程中,我遇到了以下行:

images, label_batch = tf.train.batch(
        [image, label],
        batch_size=batch_size,
        num_threads=num_preprocess_threads,
        capacity=min_queue_examples + 3 * batch_size)
Run Code Online (Sandbox Code Playgroud)

该功能tf.train.batch()似乎只作为输入一个图像和一个标签.然后如何创建具有多个图像的批处理?

nes*_*uno 7

它接受输入对[image, label],是的,它是一对.tf.train.batch但是,在内部创建一个队列.该num_threads线程将积聚在对进入队列中,直到capacity达到.

images, label_batch事实上,这是出列的行动.

请记住,您正在定义计算图,因此该对[image, label]代表图的两个节点,并且您的训练集的各个真实image, label将流经这些节点.通过这种方式,tf.train.batch可以捕获图像和标签的流量并填充队列.

  • 如何打印当前用于训练的图像?我正在使用slim.learning.train,其形式类似于此处给出的https://github.com/tensorflow/models/blob/master/slim/slim_walkthough.ipynb (2认同)