我正在尝试从this tutorial学习TensorFlow来实现DCGAN模型。我按照教程中的步骤进行操作,并编辑了生成器和鉴别器模型的层,以满足我的体系结构。
我的训练过程有n
个时期,每个时期都叫train_step
。我希望能够:
generated_data = generator(noise, training=True)
生成的数据作为数值保存到文件中,或tf.losses.mean_squared_error(data, generated_data)
查找一个数值并将其保存到文件中或附加到数组中我尝试创建一个会话,然后运行该会话以获取MSE的数字表示形式,但是无法做到。
@tf.function
def train_step(data):
noise = tf.random.normal(noise_dim)
with tf.GradientTape() as gen_tape, tf.GradientTape() as disc_tape:
generated_data = generator(noise, training=True)
real_output = discriminator(data, training=True)
fake_output = discriminator(generated_data, training=True)
utility_losses.append(tf.losses.mean_squared_error(data, generated_data))
gen_loss = generator_loss(fake_output)
disc_loss = discriminator_loss(real_output, fake_output)
gradients_of_generator = gen_tape.gradient(gen_loss, generator.trainable_variables)
gradients_of_discriminator = disc_tape.gradient(disc_loss, discriminator.trainable_variables)
generator_optimizer.apply_gradients(zip(gradients_of_generator, generator.trainable_variables))
discriminator_optimizer.apply_gradients(zip(gradients_of_discriminator, discriminator.trainable_variables))
这是会话部分:
sess = tf.Session()
print(sess.run(utility_losses[0]))
此操作失败,并出现包含FailedPreconditionError
的长错误跟踪
我希望能够在每个时期将生成的数据保存到文件中,但是我无法在TensorFlow中找到方法。我一直在寻找几个小时来找到解决方案,但是无法解决。