sess = tf.Session() module 'tensorflow' has no attribute 'Session'
时间: 2023-10-29 13:07:29 浏览: 75
在 TensorFlow 2.0 及以上版本中,`tf.Session()` 被弃用了,取而代之的是使用 `tf.compat.v1.Session()`。如果您正在使用 TensorFlow 2.0 及以上版本,请改为使用 `tf.compat.v1.Session()`。如果您在使用 TensorFlow 1.x 版本,则可以继续使用 `tf.Session()`。
相关问题
sess = tf.Session() AttributeError: module 'tensorflow' has no attribute 'Session'
在TensorFlow 2.0版本中,tf.Session()被删除了,所以在使用时会出现"AttributeError: module 'tensorflow' has no attribute 'Session'"的错误。你可以将tf.Session()更改为tf.compat.v1.Session(),这样就可以在TensorFlow 2.0版本中使用Session属性了。
源代码的修改后版本如下:
import tensorflow as tf
import os
os.environ["CUDA_VISIBLE_DEVICES"]="0"
a = tf.constant(2)
b = tf.constant(3)
with tf.compat.v1.Session() as sess:
print("a:%i" % sess.run(a),"b:%i" % sess.run(b))
print("Addition with constants: %i" % sess.run(a+b))
print("Multiplication with constant:%i" % sess.run(a*b))
使用SESS = tf.Session()报错AttributeError: module 'tensorflow' has no attribute 'Session'
在TensorFlow2中,`tf.Session()`已经被弃用了。相反,您可以使用`tf.compat.v1.Session()`来创建一个会话。但是,为了更好地利用TensorFlow2的新特性,建议使用`tf.function`和`@tf.function`装饰器来替代会话。
如果您仍然想使用TensorFlow1中的会话,可以通过以下方式实现:
```python
import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()
with tf.Session() as sess:
# 执行TensorFlow计算图
```
请注意,在使用TensorFlow2时,您应该尽量避免使用TensorFlow1的会话,而是使用`tf.function`和`@tf.function`装饰器。
阅读全文