web-dev-qa-db-fra.com

AttributeError: le module 'tensorflow.python.keras.backend' n'a pas d'attribut 'get_graph'

Je travaille sur le modèle keras yolov3 pour la détection d'objets. Cette erreur continue de s'afficher. Voici l'erreur:

AttributeError: module 'tensorflow.python.keras.backend' has no attribute 'get_graph'

Je ne sais pas quoi faire. J'ai essayé de remplacer "import keras.module.module" par "tensorflow.keras.module.module". Mais ça ne marche toujours pas.

Le code de sortie complet:

runfile('G:/Traffic Violation Detection/object_detection.py', wdir='G:/Traffic Violation Detection')
Using TensorFlow backend.
Traceback (most recent call last):

  File "<ipython-input-3-0715decb6662>", line 1, in <module>
    runfile('G:/Traffic Violation Detection/object_detection.py', wdir='G:/Traffic Violation Detection')

  File "C:\Users\HP-NPC\Anaconda3\envs\virtual_platform\lib\site-packages\spyder\utils\site\sitecustomize.py", line 710, in runfile
    execfile(filename, namespace)

  File "C:\Users\HP-NPC\Anaconda3\envs\virtual_platform\lib\site-packages\spyder\utils\site\sitecustomize.py", line 101, in execfile
    exec(compile(f.read(), filename, 'exec'), namespace)

  File "G:/Traffic Violation Detection/object_detection.py", line 6, in <module>
    from keras.layers.merge import add, concatenate

  File "C:\Users\HP-NPC\Anaconda3\envs\virtual_platform\lib\site-packages\keras\__init__.py", line 3, in <module>
    from . import utils

  File "C:\Users\HP-NPC\Anaconda3\envs\virtual_platform\lib\site-packages\keras\utils\__init__.py", line 6, in <module>
    from . import conv_utils

  File "C:\Users\HP-NPC\Anaconda3\envs\virtual_platform\lib\site-packages\keras\utils\conv_utils.py", line 9, in <module>
    from .. import backend as K

  File "C:\Users\HP-NPC\Anaconda3\envs\virtual_platform\lib\site-packages\keras\backend\__init__.py", line 1, in <module>
    from .load_backend import epsilon

  File "C:\Users\HP-NPC\Anaconda3\envs\virtual_platform\lib\site-packages\keras\backend\load_backend.py", line 90, in <module>
    from .tensorflow_backend import *

  File "C:\Users\HP-NPC\Anaconda3\envs\virtual_platform\lib\site-packages\keras\backend\tensorflow_backend.py", line 54, in <module>
    get_graph = tf_keras_backend.get_graph

AttributeError: module 'tensorflow.python.keras.backend' has no attribute 'get_graph'

Mes importations:

import numpy as np
from tensorflow.keras.layers import Conv2D, Input, BatchNormalization, LeakyReLU, ZeroPadding2D, UpSampling2D
from keras.layers.merge import add, concatenate
from tensorflow.keras.models import Model
import struct
import cv2
import imageio

Pour le code complet, veuillez visiter: https://colab.research.google.com/drive/1oVR7swBqjfqxR50C3xt89w1vGEAaTFcK#scrollTo=rpSn_HsUHbGF

2
anms_pro

Le modèle de projet yolov3 pour la détection d'objets a quelques problèmes avec les versions. J'ai eu le même problème et j'ai utilisé tensorflow 1.14.0 et keras 2.2.0

Remplacez simplement les versions spécifiques. Écrivez dans la ligne de commande

pip install tensorflow==1.14.0
pip install keras==2.2.0
4
Akib_Zahid

J'ai installé tensorflow v1.14.0 en utilisant pip install tensorflow==1.14.0 et keras v2.2.0 en utilisant pip install keras==2.2.0 et ça devrait vraiment marcher.

1
Japesh Methuku