"AttributeError: module 'tensorflow' has no attribute 'tables_initializer' "使用TFv2.2.0,为什么以及如何解



当我想运行这些行时,我遇到了错误。

import tensorflow.python.keras.backend as K
session = K.get_session()
init_op = tf.group(tf.tables_initializer(),tf.global_variables_initializer(), 
tf.local_variables_initializer())
session.run(init_op)
np.random.seed(1)
tf.set_random_seed(1)

错误显示:模块"tensorflow"没有属性"tables_initializer",global_variables_initializzer和local_variables_initializer也会出现同样的形式(当我分别运行它们时(。

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-40-82a30eae4406> in <module>()
5 
6 session = K.get_session()
----> 7 init_op = tf.group(tf.tables_initializer(),tf.global_variables_initializer(), 
tf.local_variables_initializer())
8 session.run(init_op)
9 np.random.seed(1)
AttributeError: module 'tensorflow' has no attribute 'tables_initializer'

请帮帮我。。。

给定的代码与Tensorflow 1.x兼容。要使其与Tensorflow 2.x一起工作,需要对代码进行一些修改,即将库名称更改为

tf.compat.v1.tables_initializer((

tf.compat.v1.global_variables_initializer((

tf.compat.v1.local_variables_initializer((.

查找工作代码段

import tensorflow.compat.v1 as tf
import tensorflow.python.keras.backend as K
tf.compat.v1.disable_eager_execution()
import numpy as np
session = K.get_session()
init_op = tf.group(tf.tables_initializer(),tf.global_variables_initializer(), 
tf.local_variables_initializer())
session.run(init_op)
np.random.seed(1)
tf.set_random_seed(1)

最新更新