AttributeError: module 'tensorflow' has no attribute 'enable_eager_execution'

AttributeError: module 'tensorflow' has no attribute 'enable_eager_execution'

我刚刚尝试在我的 shell 中启用急切执行,但实际上显示错误:

AttributeError: module 'tensorflow' has no attribute 'enable_eager_execution'

我的 Tensorflow 版本是 2.0

谁能告诉我为什么我会收到这个...

提前致谢

从 1.8 版开始,Tensorflow 添加了 Eager Execution 模式。所以更新是必要的。此外,它是一个相对较新的功能,故障较多且更新频繁,因此建议使用适合您的最新版本。尝试

conda update tensorflow

或使用 pip

pip install --upgrade Tensorflow

Tensorflow 2.0 默认启用 eager_execution,因此您无需 运行 tf.enable_eager_execution。仅当您的 运行ning 版本低于 2.0 时,您才应启用即时执行

在 tf2 中默认启用 Eager,您可以如下禁用它

import tensorflow as tf

tf.compat.v1.disable_eager_execution()

如果您确实需要打电话,tf.compat。v1.enable_eager_execution 可用。

对于 tensorflow v1.x 代码,这将有效:

import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()
tf.enable_eager_execution()

我遇到了同样的错误,而且很多都是 2.0 版的。降级到 1.1X 不是解决方案。

按照说明进行操作 https://github.com/tensorflow/tensorflow/issues/35749

安装最新的 Visual C++。重启你的机器。它应该工作 https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads

Eager execution 在版本 2.x 中默认启用 您可以使用

检查
tf.executing_eagerly()

它应该 return 正确。如果您的版本低于 2.0,则可以使用

启用它
tf.enable_eager_execution()

我安装了 Keras v2.1.0。 Eager_execution 默认情况下未启用,并且 import tensorflow.contrib.eager as tfe tfe.enable_eager_execution()

对我有用。 (使用 tf.executing_eagerly() 的检查返回 False。)

但是,对我有用的是:

import tensorflow as tf tf.enable_eager_execution()

注意: tf.placeholder() 与即时执行不兼容。