【发布时间】:2019-02-04 16:11:45
【问题描述】:
我正在使用 Dataset API 构建数据管道,但是当我训练多个 GPU 并在我的输入函数中返回 dataset.make_one_shot_iterator().get_next() 时,我得到了
ValueError: dataset_fn() must return a tf.data.Dataset when using a tf.distribute.Strategy
我可以按照错误消息直接返回数据集,但我不明白 iterator().get_next() 的用途以及它如何在单 GPU 和多 GPU 上进行训练。
...
dataset = dataset.repeat(num_epochs)
dataset = dataset.batch(batch_size = batch_size)
dataset = dataset.cache()
dataset = dataset.prefetch(buffer_size=None)
return dataset.make_one_shot_iterator().get_next()
return _input_fn
【问题讨论】:
标签: python tensorflow iterator pipeline tensorflow-datasets