推荐答案
TensorFlow 2.x 版本中默认的执行模式是 Eager Execution(即时执行模式)。
本题详细解读
在 TensorFlow 2.x 中,Eager Execution 是默认的执行模式。与 TensorFlow 1.x 中的静态计算图不同,Eager Execution 允许操作立即执行并返回结果,而不需要先构建一个计算图。这种模式使得代码更加直观和易于调试,因为它允许开发者像编写普通 Python 代码一样编写 TensorFlow 代码。
Eager Execution 的特点:
- 即时执行:操作在定义时立即执行,无需构建计算图。
- 动态计算图:每次执行操作时都会动态构建计算图,适合需要动态调整模型结构的场景。
- 易于调试:可以直接使用 Python 的调试工具(如
pdb
)进行调试,查看中间结果。 - 与 Python 生态的无缝集成:可以直接使用 Python 的控制流、数据结构等。
示例代码:
-- -------------------- ---- ------- ------ ---------- -- -- - ---- ----- --------- ----------------------------- - --- ---- - ------ - - -------------- - - -------------- - - - - - -------- - --- ------------ --------- ------------
关闭 Eager Execution:
虽然 Eager Execution 是默认模式,但你仍然可以通过 tf.compat.v1.disable_eager_execution()
来关闭它,恢复到 TensorFlow 1.x 的静态图模式。
import tensorflow as tf # 关闭 Eager Execution tf.compat.v1.disable_eager_execution() print(tf.executing_eagerly()) # 输出: False
总结:
Eager Execution 是 TensorFlow 2.x 的核心特性之一,它极大地简化了模型的开发和调试过程,使得 TensorFlow 更加易用和灵活。