본문 바로가기

코딩 에러

AttributeError: module 'tensorflow' has no attribute 'get_default_graph 에러

이건 직접 고쳐야한다.

 

나의 경우에는 텐서플로우 2.0 케라스 2.2일때 에러가 났었다.

 

이건 역시 서로 버젼이 안맞기 때문에 생겨난 것이다.

 

/home/"사용자이름"/anaconda3/envs/"프로젝트이름"/lib/python3.6/site-packages/keras/backend/tensorflow_backend.py  

 

여기 tensorflow_backend.py를 고쳐주면 된다.

 

get_default_graph를 아마 tf.get_default_graph 로 사용하고 있을 것이다.

 

이것을 tf.compat.v1.get_default_graph 로 바꿔야한다.

 

그리고 저장.

 

만약 여기서 다른 텐서플로우를 사용할 경우에는 다시 바꿔야한다.

 

아니면 그냥 애초에

 

tensorflow_backend.py에다가

import tensorflow as tf 대신

import tensorflow.compaat.v1 as tf 로 한 후에,

tf.disable_v2_behavior()

를 작성해주면 version 1로 사용가능...

 

v2를 사용하고 싶으면 다시 원상복귀 해주면 된다.