【已解决】AttributeError: module ‘tensorflow’ has no attribute ‘get_default_graph’

1.简洁版

# 自己的代码:1.修改
from tensorflow import keras  # 原来的代码为 import keras

# 进入tensorflow_backend.py文件: 2.修改; 3.添加
import tensorflow.compat.v1 as tf  # 原代码为: import tensorflow as tf
tf.compat.v1.disable_eager_execution() # 这就添加至上句代码之后

# 进入optimizers.py文件: 4.修改
if isinstance(identifier, tf.optimizers.Optimizer):  # 原代码为 # if isinstance(identifier, tf.train.Optimizer):

2.详细版

报错程序如下:
在这里插入图片描述

第一步:根据别人的博客,将代码进行改动如下:

from tensorflow import keras  # 原来的代码为 import keras

第二步:改了之后仍然有如上错误:

ctrl+ 点击错误对应文件名进入报错文件,具体如下所示:

在这里插入图片描述

进入之后将文件文件改动如下:

import tensorflow.compat.v1 as tf  # 原代码为: import tensorflow as tf

第三步:改动之后又报如下错误:

在这里插入图片描述

此时同样点击进入错误文件内部:

在这里插入图片描述

代码改动如下:

if isinstance(identifier, tf.optimizers.Optimizer):  # 原代码为 # if isinstance(identifier, tf.train.Optimizer):

第四步:改动之后又将报错:

在这里插入图片描述

此时返回至第二步中的tensorflow_backend.py文件下添加:

tf.compat.v1.disable_eager_execution()  # 就添加在刚刚添加的那句代码后面就成
tf.compat.v1.disable_eager_execution()  # 就添加在刚刚添加的那句代码后面就成

大功告成!!!

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐