检查 tensorflow 2 急切执行状态

Check tensorflow 2 eager execution status

我有一个旧的 Keras 代码,我已将其移植到 tensroflow2 tf.keras,并进行了最小的更改。它现在 运行s 在 GPU 上慢 2 倍,但它正在使用 GPU。我用过

import tensorflow as tf
tf.compat.v1.disable_eager_execution()

在我的每个脚本的顶部(我创建模型并使用单独的 .py 文件对其进行训练),但我怀疑可能以某种方式开启了急切执行。

我不使用 fit_generator 但我确实使用 train_on_batch 并手动执行循环,因为我正在训练对抗网络。

我怎样才能 check/ensure 急切执行一直处于关闭状态?我 运行 的主要脚本是 train.py,它从其他脚本导入函数。

你可以使用 tf.executing_eagerly() which returns True 当 eager execution 开启时。您还可以使用 tensorboard 来检查您的 GPU 的状态,并详细检查问题以找出问题可能出在哪里。这两个链接应该可以为您提供更多信息。

Tensorflow eager execution

Tensorboard