Python 如何使用tf.data数据集在同一批上执行多个培训操作

Python 如何使用tf.data数据集在同一批上执行多个培训操作,python,tensorflow,Python,Tensorflow,我想使用tf.data数据集和迭代器(对抗式自动编码器)实现可用的代码 我的问题是,如何将同一批用于多个培训操作 我需要在同一批上执行三个不同的训练操作,但是,如果我使用tf.data迭代器,它不会在同一批上工作,而是在连续的批上工作 假设data=db\u iter.get\u next(),其中db\u iter是从tf.data使用的迭代器 我想您正在训练3ops中的3不同的sess.run语句。在这种情况下,他们都将使用3不同批次,因为数据将被评估3次 事实是,如果三个训练操作中的每一个

我想使用tf.data数据集和迭代器(对抗式自动编码器)实现可用的代码

我的问题是,如何将同一批用于多个培训操作


我需要在同一批上执行三个不同的训练操作,但是,如果我使用tf.data迭代器,它不会在同一批上工作,而是在连续的批上工作

假设
data=db\u iter.get\u next()
,其中
db\u iter
是从
tf.data
使用的迭代器

我想您正在训练
3
ops中的
3
不同的
sess.run
语句。在这种情况下,他们都将使用
3
不同批次,因为
数据将被评估
3次


事实是,如果三个
训练操作中的每一个
的输入都是从上面定义的
数据中提供的,并且在每个
sess.run
中运行,那么它们都将使用同一批。

不使用
sess.run([autoencoder\u optimizer,discriminator\u optimizer,generator\u optimizer],feed\u dict=…)
work?@Siladittya根据文档,不能保证它们是连续的。@itzikBenShabat如果操作相互依赖,则它们将按顺序执行。如果它们不是相互依赖的,您实际上怎么关心呢?@Ujjwal操作本身是相互独立的,但是更新模型参数的顺序很重要(在对抗性自动编码器的情况下)。在这种情况下,只需使用
tf.control\u dependencies()