Python 如何从tensorflow数据集迭代器返回同一批数据两次?
我正在将一些遗留代码转换为使用数据集API-此代码使用Python 如何从tensorflow数据集迭代器返回同一批数据两次?,python,tensorflow,tensorflow-datasets,Python,Tensorflow,Tensorflow Datasets,我正在将一些遗留代码转换为使用数据集API-此代码使用feed_dict将一批数据提供给列车运行(实际上是三次),然后使用同一批数据重新计算显示的损失。所以我需要一个迭代器,它返回完全相同的批处理两次(或几次)。不幸的是,我似乎找不到使用tensorflow数据集的方法-可能吗?您可以使用和一起重复数据集的单个元素。例如,要重复元素两次: NUM_REPEATS = 2 dataset = tf.data.Dataset.range(10) # ...or the output of `.ba
feed_dict
将一批数据提供给列车运行(实际上是三次),然后使用同一批数据重新计算显示的损失。所以我需要一个迭代器,它返回完全相同的批处理两次(或几次)。不幸的是,我似乎找不到使用tensorflow数据集的方法-可能吗?您可以使用和一起重复数据集的单个元素。例如,要重复元素两次:
NUM_REPEATS = 2
dataset = tf.data.Dataset.range(10) # ...or the output of `.batch()`, etc.
# Repeat each element of `dataset` NUM_REPEATS times.
dataset = dataset.flat_map(
lambda x: tf.data.Dataset.from_tensors(x).repeat(NUM_REPEATS))
事实证明,我的用例是问题的一个子类——在本文中讨论