0

我一直在尝试修改TensorFlow 教程中制作的这个DCGAN。我希望它生成一个图表,显示生成器和鉴别器随时间的训练损失。首先,我尝试像这样简单地打印每个时期的生成器损失:

def train_step(images):
noise = tf.random.normal([BATCH_SIZE, noise_dim])

with tf.GradientTape() as gen_tape, tf.GradientTape() as disc_tape:
  generated_images = generator(noise, training=True)

  real_output = discriminator(images, training=True)
  fake_output = discriminator(generated_images, training=True)

  gen_loss = generator_loss(fake_output)
  disc_loss = discriminator_loss(real_output, fake_output)
  print(gen_loss) #What I added 

输出如下:

张量("binary_crossentropy/weighted_loss/value:0", shape=(), dtype=float32)

当我尝试通过说print(gen_loss.numpy())将其转换为 numpy 数组时,出现以下错误:AttributeError: 'Tensor' object has no attribute 'numpy'。我已经尝试过这里提到的解决方案,但没有运气。

有谁知道在这种情况下我如何可视化训练损失?

4

0 回答 0