Python TensorFlow 2.x对1.x版本不兼容问题解决方式

我装的是2.8版本的TensorFlow,但我用的代码用的是1.x的,我找了几种方法,目前我正在用的是

import tensorflow.compat.v1 as tf
tf.disable_eager_execution()
#关闭eager运算,用于版本转换
##上面的用在开头处


tf.reset_default_graph()
##用于清除默认图形堆栈并重置全局默认图形。
##不清除的话,会报错说哪里哪里已创建什么的,代码运行一次要清除一次


 with tf.variable_scope('x',reuse=tf.AUTO_REUSE):
#在用tf.variable_scope时,不加reuse=tf.AUTO_REUSE,也会报错

       第一段是导入库时候用的,直接按1.x版本导入,不过好像还是会有些问题;第二段可以和导入库的时候一起运行(不过测试的时候,就需要多次导入库了,建议重开一行运行);第三段是我在用tf.variable_scope()函数时遇到报错时的解决方法。

        除了我这种方式,还有一种是在每一条代码后加.compat.v1,例如tf.compat.v1.variable_scope(),我觉得太麻烦了。

        如果以后还会遇到有关TensorFlow的版本问题的话,还会在这里更新,如果大家也遇到过相关问题的话,有对应的解决方式建议在留在评论区,尝试成功后我可以整合进来。

猜你喜欢

转载自blog.csdn.net/a1004550653/article/details/124632804