TypeError: global_variables_initializer() takes 0 positional arguments but 1 was given
时间: 2023-11-07 22:14:47 浏览: 173
第十一天 04魔法方法【千锋Python人工智能学院】1
这个错误通常出现在使用 TensorFlow 1.x 版本时。在 TensorFlow 2.x 版本中,`tf.compat.v1.global_variables_initializer()` 已经被移除。因此,你需要从 `tf.compat.v1` 模块中导入 `global_variables_initializer` 函数,并直接调用即可,不需要传入任何参数。示例代码如下:
```
import tensorflow.compat.v1 as tf
tf.disable_v2_behavior() # 禁用 TensorFlow 2.x 特性
# 定义一些变量
x = tf.Variable(1.0)
y = tf.Variable(2.0)
# 初始化所有变量
init_op = tf.global_variables_initializer()
# 运行初始化操作
with tf.Session() as sess:
sess.run(init_op)
```
如果你使用的是 TensorFlow 2.x 版本,则可以直接使用 `tf.compat.v1.disable_v2_behavior()` 函数来禁用 TensorFlow 2.x 特性,然后直接调用 `tf.global_variables_initializer()` 函数即可。
阅读全文